====== Add data to dynamic menu entry ====== If a dynamic menu contribution is used you can attach additional data (transient data map) to each menu item so that the handler can later work with that data. MCommand command = getCommandInstance(USER_ACTION_COMMAND_ID); for (UserAction userAction : userActions) { MHandledMenuItem dynamicItem = modelService.createModelElement(MHandledMenuItem.class); dynamicItem.setLabel(userAction.getName()); dynamicItem.setCommand(command); dynamicItem.getTransientData().put("name", userAction.getName()); dynamicItem.getTransientData().put("command", userAction.getCommand()); items.add(dynamicItem); } The handler can then retrieve the data by getting the menu item injected. @Execute public void execute(@Optional MMenuItem menuItem) { String userActionName = menuItem.getTransientData().getOrDefault("name", "").toString(); String userActionCommand = menuItem.getTransientData().getOrDefault("command", "").toString(); } {{tag>devel eclipse e4 java}}