You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ode.apache.org by "Tammo van Lessen (JIRA)" <ji...@apache.org> on 2011/01/16 22:45:44 UTC

[jira] Resolved: (ODE-895) Management MBean access broken (Rquest for an Management WS API for the JBI distribution)

     [ 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.