Sure :-) The goal is to be JBI compliant. But the short term and first step is to be able to deploy the JBI components and sample applications from ServiceMix 3.x. To do that, I have recently added to the builds in smx3 the servicemix-shared-compat shared library which contains everything needed for servicemix jbi components (servicemix-shared only contains jars that are not included in the container classpath by default). Using the offline tool that you've just patched, we should be able to convert the JBI artifacts (components, shared libraries and service assemblies). These transformed components should be able to be deployed by copying them in the deploy directory of smx4. These task involves three different modules: * the offline tool * the deployment bundle * the jbi runtime You've already worked on the first one. The deployment tool need to be enhanced to deploy service assemblies (this has not been written yet). Take a look at http://svn.apache.org/repos/asf/servicemix/branches/servicemix-4.0/jbi/deployer/src/main/java/org/apache/servicemix/jbi/deployer/impl/Deployer.java Once the SAs are deployed onto smx4, we need to ensure that they work correctly: the jbi api must be correctly implemented (we can discard the management apis for the time being), which means exchanges are sent to the correct target endpoint, the exchange status are correctly updated, etc... The basics should work, as I've already written an integration test that deploys servicemix-shared-compat, servicemix-eip and send an exchange to it.
To sum up, the first thing is to write the SA deployment code and make some real tests using the servicemix 3.x examples (they should run, not only deploy). Also, I'd like to make sure Ode can be deployed, but this is related to SM-1070 which is assigned to Santosh (not sure if he is still willing to help on that). The deployment of SAs involves several things, as described in the JBI specification (you should read the section about deployment, which is at the end of the spec iirc). The steps are: * check everything is ok (components exists and they are started) * extract the SA to an internal folder ([smx-home]/jbi/sas for example) and extract each service unit inside the sa * retrieve jbi component (retrieved from the osgi registry), retrieve their ServiceUnitManager, call the deploy method * register a ServiceAssembly object in the osgi registry with lifecycles methods (init, start, stop, shutdown) implemented by calling the corresponding methods on the ServiceUnitManager Feel free to take a look and copy some code from smx3 or ask any questions... On Nov 30, 2007 4:42 PM, Jeff Yu (JIRA) <[EMAIL PROTECTED]> wrote: > > [ > https://issues.apache.org/activemq/browse/SM-1091?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_40763] > > Jeff Yu commented on SM-1091: > ----------------------------- > > Can someone help me elaborate this task, I'm interested in the JBI > compatibility layer on SMX 4.0. > > > > Deployment bundle for JBI artifacts > > ----------------------------------- > > > > Key: SM-1091 > > URL: https://issues.apache.org/activemq/browse/SM-1091 > > Project: ServiceMix > > Issue Type: New Feature > > Reporter: Guillaume Nodet > > Assignee: Jeff Yu > > Fix For: 4.0 > > > > > > > -- > This message is automatically generated by JIRA. > - > You can reply to this email to add a comment to the issue online. > > -- Cheers, Guillaume Nodet ------------------------ Blog: http://gnodet.blogspot.com/
