diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/action/Actions.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/action/Actions.java index 87e70ea264..1c8c95bdc8 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/action/Actions.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/action/Actions.java @@ -56,19 +56,21 @@ public class Actions { } if (aImage != null) return aImage; - - String path = ACTION_IMAGES_PATH + actionId + "24.png"; - InputStream inputStream = Actions.class.getClassLoader().getResourceAsStream(path); - if (inputStream != null) { - try { - aImage = new AImage(actionId, inputStream); - } catch (IOException e) { - } - } - if (aImage != null) { - synchronized (imageCache) { - imageCache.put(actionId, aImage); + + IServiceHolder action = Service.locator().locate(IAction.class, actionId, null); + if (action.getService() != null) { + String path = ACTION_IMAGES_PATH + actionId + "24.png"; + InputStream inputStream = action.getService().getClass().getClassLoader().getResourceAsStream(path); + if (inputStream != null) { + try { + aImage = new AImage(actionId, inputStream); + } catch (IOException e) { + } } + if (aImage != null) + synchronized (imageCache) { + imageCache.put(actionId, aImage); + } } return aImage; }