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
* org.eclipse.emf.ecore.util.EContentAdapter#notifyChanged(org.eclipse.emf.common.notify
			 * .Notification)
			 */
			@Override
			public void notifyChanged(Notification notification) {
				super.notifyChanged(notification);
				if (notification.isTouch()) {
					return;
				}
				if (notification.getEventType() == Notification.ADD
						&& notification.getNewValue() instanceof MBindingTable) {
					MBindingTable bt = (MBindingTable) notification.getNewValue();
					Context bindingContext = manager.getContext(bt.getBindingContextId());
					BindingTable table = new BindingTable(bindingContext);
					bindingTables.addTable(table);
				}
			}
		});
	}
	private static void defineBindingTable(IEclipseContext context, Context bindingContext,
			BindingTableManager manager, MBindingTable bt) {
		BindingTable table = new BindingTable(bindingContext);
		manager.addTable(table);
		ECommandService cs = (ECommandService) context.get(ECommandService.class.getName());
		EBindingService bs = (EBindingService) context.get(EBindingService.class.getName());
		List<MKeyBinding> bindings = bt.getBindings();
		for (MKeyBinding binding : bindings) {
			Map<String, Object> parameters = null;
			List<MParameter> modelParms = binding.getParameters();
			if (modelParms != null && !modelParms.isEmpty()) {