[ https://issues.apache.org/jira/browse/ODE-895?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tammo van Lessen resolved ODE-895. ---------------------------------- Resolution: Fixed Fix Version/s: 1.3.5 Assignee: Tammo van Lessen This should be fixed in ODE 1.3.5. First, the jbi-karaf-commands are confirmed to be working with SMX 4.3 and ODE 1.3.5. Second, we now have a PMAPI HTTP binding shipped with the jbi-karaf feature. Please follow the instructions at http://ode.apache.org/smx4-osgi-deployment.html. > Management MBean access broken (Rquest for an Management WS API for the JBI > distribution) > ----------------------------------------------------------------------------------------- > > Key: ODE-895 > URL: https://issues.apache.org/jira/browse/ODE-895 > Project: ODE > Issue Type: New Feature > Components: Management API > Affects Versions: 1.3.4 > Environment: ODE 1.3.4 as OSGi bundle in FUSE-ESB 4.3.0-fuse-02-00 > Reporter: Antonio MarĂn > Assignee: Tammo van Lessen > Fix For: 1.3.5 > > > I noticed recently that the old MBean usage is broken with latest stable > version of ODE. So accessing like in the jbi-karaf-commands is not supported: > protected static String COMPONENT_NAME = > "org.apache.servicemix:Type=Component,Name=OdeBpelEngine,SubType=Management"; > protected static final String LIST_ALL_PROCESSES = "listAllProcesses"; > protected <T> T invoke(final String operationName, final Object[] params, > final String[] signature, Class<?> T, long timeoutInSeconds) throws Exception > { > ExecutorService executor = Executors.newSingleThreadExecutor(); > Callable<T> callable = new Callable<T>() { > public T call() throws Exception { > MBeanServer server = getMBeanServer(); > if (server != null) { > return (T) server.invoke(new ObjectName(COMPONENT_NAME), > operationName, params, signature); > } > return null; > } > }; > Future<T> future = executor.submit(callable); > executor.shutdown(); > return future.get(timeoutInSeconds, TimeUnit.SECONDS); > } > protected List<TProcessInfo> getProcesses(long timeoutInSeconds) throws > Exception { > ProcessInfoListDocument result = invoke(LIST_ALL_PROCESSES, null, > null, ProcessInfoListDocument.class, timeoutInSeconds); > if (result != null) { > return result.getProcessInfoList().getProcessInfoList(); > } > return null; > } > is throwing: > java.util.concurrent.ExecutionException: > javax.management.InstanceNotFoundException: > org.apache.servicemix:Type=Component,Name=OdeBpelEngine,SubType=Management > at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:232) > at java.util.concurrent.FutureTask.get(FutureTask.java:91) > at > net.geant.gembus.services.ode_manager.internal.OdeMBeanManager.invoke(OdeMBeanManager.java:91) > at > net.geant.gembus.services.ode_manager.internal.OdeMBeanManager.getProcesses(OdeMBeanManager.java:95) > at > net.geant.gembus.services.ode_manager.internal.OdeMBeanManager.listAllProcesses(OdeMBeanManager.java:104) > at > net.geant.gembus.services.ode_manager.OdeManagerImpl.ListAllProcesses(OdeManagerImpl.java:34) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > ... > It would be desireable to have an input to the Management API on the JBI > distribution as a WS. I tryed to use the pmapi-sa.zip circulating around but > It's not working in my configuration. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.