Bug 309489 NPE in E4CommandProcessor
I you forget to assign a command to a binding you get: java.lang.NullPointerException at org.eclipse.e4.workbench.ui.internal.E4CommandProcessor.defineBindingTable(E4CommandProcessor.java:142) at org.eclipse.e4.workbench.ui.internal.E4CommandProcessor.processBindings(E4CommandProcessor.java:97) at org.eclipse.e4.workbench.ui.internal.E4Workbench.init(E4Workbench.java:109) at org.eclipse.e4.workbench.ui.internal.E4Workbench.<init>(E4Workbench.java:71) at org.eclipse.e4.ui.workbench.swt.internal.E4Application.createE4Workbench(E4Application.java:170) at org.eclipse.e4.ui.workbench.swt.internal.E4Application.start(E4Application.java:81)
bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/E4CommandProcessor.java
for (MCommandParameter cmdParm : modelParms) {
					parmList.add(new Parameter(cmdParm.getElementId(), cmdParm.getName(), null,
							null, cmdParm.isOptional()));
				}
				parms = parmList.toArray(new Parameter[parmList.size()]);
			}
			cs.defineCommand(id, name, null, cat, parms);
		}
	}
	public static void processBindings(IEclipseContext context,
			MBindingTableContainer bindingContainer) {
		Activator.trace(Policy.DEBUG_CMDS, "Initialize binding tables from model", null); 
		final BindingTableManager bindingTables = (BindingTableManager) ContextInjectionFactory
				.make(BindingTableManager.class, context);
		context.set(BindingTableManager.class.getName(), bindingTables);
		MBindingContext root = bindingContainer.getRootContext();
		if (root == null) {
			return;
		}
		final ContextManager manager = (ContextManager) context.get(ContextManager.class.getName());
		defineContexts(null, root, manager);
		for (MBindingTable bt : bindingContainer.getBindingTables()) {
			Context c = manager.getContext(bt.getBindingContextId());
			defineBindingTable(context, c, bindingTables, bt);
		}
		((EObject) bindingContainer).eAdapters().add(new EContentAdapter() {
			/*
			 * (non-Javadoc)
			 * 
			 * @see