servicemix 4 -- integrating osgi with jbi

Click here to load reader

Post on 21-Mar-2017

12.919 views

Category:

Technology

3 download

Embed Size (px)

TRANSCRIPT

  • ServiceMix 4Integrating JBI with OSGi

    2009 Progress Software Corporation*

    OverviewRecent releasesApache ServiceMix 3.2, 3.3 and 4.0.0Dissecting ServiceMix 4.0.0ServiceMix KernelServiceMix NMR and JBIGetting involved?

    In this presentation, we will focus not so much on the constructs in BPEL that can be fairly easily found in other programming languages, but rather focus on what is different about BPEL. In this presentation we will discuss BPELs web service orientation, and then dive into the more advanced concepts in BPEL. This include partner links, properties, property aliases, compensation, event handling, correlation, flows and advanced synchronization semantics.

    2009 Progress Software Corporation*

    Recent releasesRecent releasesServiceMix 3.2.xServiceMix 3.3.xwhy separate components?ServiceMix 4.xwhy a new container?

    In this presentation, we will focus not so much on the constructs in BPEL that can be fairly easily found in other programming languages, but rather focus on what is different about BPEL. In this presentation we will discuss BPELs web service orientation, and then dive into the more advanced concepts in BPEL. This include partner links, properties, property aliases, compensation, event handling, correlation, flows and advanced synchronization semantics.

    2009 Progress Software Corporation*

    ServiceMix 3.2.xServiceMix 3.2.xJBI container and components in one release

    In this presentation, we will focus not so much on the constructs in BPEL that can be fairly easily found in other programming languages, but rather focus on what is different about BPEL. In this presentation we will discuss BPELs web service orientation, and then dive into the more advanced concepts in BPEL. This include partner links, properties, property aliases, compensation, event handling, correlation, flows and advanced synchronization semantics.

    2009 Progress Software Corporation*

    ServiceMix 3.3.xServiceMix 3.3.1JBI Container version 3.3.1JBI Components version 2009.01

    In this presentation, we will focus not so much on the constructs in BPEL that can be fairly easily found in other programming languages, but rather focus on what is different about BPEL. In this presentation we will discuss BPELs web service orientation, and then dive into the more advanced concepts in BPEL. This include partner links, properties, property aliases, compensation, event handling, correlation, flows and advanced synchronization semantics.

    2009 Progress Software Corporation*

    ServiceMix 3.3.x Component versioningRationale for separate components versioningshare component between ServiceMix 3.x and 4.x containersensure container independencebuild using JBI API and shared librarybe able to test/run in both containers(as well as other JBI containers)ease migration from 3.x to 4.x

    2009 Progress Software Corporation*

    ServiceMix 4.xServiceMix 4.0.0 and beyondModular OSGi-based containerServiceMix Kernel, ServiceMix NMRJBI Components version 2009.01

    2009 Progress Software Corporation*

    So what?We started with a JBI container and components......and we ended with one

    Why should I care?

    2009 Progress Software Corporation*

    Dissecting ServiceMix 4

    2009 Progress Software Corporation*

    Dissecting ServiceMix 4ServiceMix Kerneloverview of featuresexample: create a Camel containerServiceMix NMRNMR featuresexample: NMR for loosely-coupled integrationJBI featuresexample: OSGi packaging for JBI

    2009 Progress Software Corporation*

    ServiceMix Kernel

    2009 Progress Software Corporation*

    ServiceMix KernelA flexible OSGi-based server runtimeFeatures:easy-to-use provisioninghot-deploymentSpring integrationpowerful command shell, available over sshJMX managementcontainer-level locking...

    2009 Progress Software Corporation*

    ServiceMix KernelA flexible OSGi-based server runtimeFeatures:easy-to-use provisioninghot-deploymentSpring integrationpowerful command shell, available over sshJMX managementcontainer-level locking...

    Apache Felix Karaf

    2009 Progress Software Corporation*

    ServiceMix Kernel ConsoleConsoleManagement of ServiceMix Kernellocally when running ServiceMix Kernelremotely using SSH connection/ syntaxJust a few examplesOSGi bundle management: osgi/list,headers,install, ... OSGI ConfigAdmin: config/list,edit,update, ... file-system access: ls, cp, rm, mv, ...With UNIX-like utilities, pipes, globbing, ...

    2009 Progress Software Corporation*

    ServiceMix Kernel ConsoleFind, stop and restart a JAAS bundle smx@root:/> osgi/list | grep JAAS [ 21] [Active ] [Started] [ 30] JAAS Config (1.2.0.SNAPSHOT) [ 29] [Active ] [Started] [ 30] JAAS Modules (1.2.0.SNAPSHOT) smx@root:/> osgi/stop 29 smx@root:/> osgi/start 29

    Update the SSH port configuration smx@root:/> config/edit org.apache.servicemix.shell smx@root:/> config/propset sshPort 8100 smx@root:/> config/update

    Create, start and manage a second instance smx@root:/> admin/create slave Creating new instance on port 8102 at: C:\\instances\slave Creating dir: C:\\instances\slave\bin ...

    smx@root:/> admin/start slave smx@root:/> admin/list Port State Pid Name [ 8102] [Starting] [ 5896] slave

    2009 Progress Software Corporation*

    ServiceMix Kernel - FeaturesFeaturesKaraf-specific way for installing applicationsinstall the bundleadd configuration defaultsUsing the command shell or JMX

    smx@root:/> features/addUrl mvn:org.apache.servicemix/apache-servicemix/4.0.0/xml/features

    smx@root:/> features/install websmx@root:/> features/install activemq

    2009 Progress Software Corporation*

    Apache ServiceMix Kernel - Hot-deploymentHot-deploymentuses the deploy directoryallows deployment of bundlesfeatures descriptorsSpring XML filesextensible mechanismdeploy WAR files with web feature installeddeploy JBI artifactswith ServiceMix JBI layer

    2009 Progress Software Corporation*

    Apache ServiceMix Kernel Spring integrationSpring integrationautomatically load and start Spring contextfrom a plain XML filefrom a bundle containing XML files in the META-INF/spring folderSpring DM support for OSGi interactionConfigAdminService Registry

    2009 Progress Software Corporation*

    ServiceMix Kernel Camel ExampleExample: Use ServiceMix Kernel for CamelAdd the features descriptor urlInstall the camel-osgi features... and any other camel component you need

    smx@root:/> features/addUrl mvn:org.apache.camel.karaf/features/2.0-SNAPSHOT/xml/featuressmx@root:/> features/install camel-osgismx@root:/> features/install camel-ftp

    2009 Progress Software Corporation*

    ServiceMix Kernel Camel ExampleNow, create this XML file in the deploy directory

    2009 Progress Software Corporation*

    ServiceMix NMR/JBIUsing ServiceMix Kernel to build a JBI containerWe are using a 2 layer solutionNMR API for messagingJBI specification implementation

    2009 Progress Software Corporation*

    ServiceMix NMR

    2009 Progress Software Corporation*

    ServiceMix NMRServiceMix 4 NMReasy to use messaging API(Exchange, Message, Endpoint, ...)handles XML and POJO payloadslistener interfaces to monitor the NMR(ExchangeListener, EndpointListener, )support for wiring endpoints and intercepting exchangescommand shell for managing the NMR

    2009 Progress Software Corporation*

    ServiceMix NMRServiceMix 4 NMRinstallable as a ServiceMix Kernel featureYou can use it for loosely coupled integrationCamel routesCXF web services add anything else yourself hereWe use it to build our JBI integration layer

    2009 Progress Software Corporation*

    ServiceMix NMR

    2009 Progress Software Corporation*

    ServiceMix JBI

    2009 Progress Software Corporation*

    ServiceMix JBIServiceMix 4 JBIinstallable as a ServiceMix Kernel featureruns on top of ServiceMix NMRit addsJBI Messaging APIJBI Deployment and packagingJBI Management Mbeans

    2009 Progress Software Corporation*

    ServiceMix JBIServiceMix 4 JBI: Deployment modelsJBI packagingFor strict JBI compatibilityFor compatibility with ServiceMix 3just drop your SA in the deploy directoryOSGi packagingDeploy config in a bundle or plain XML fileAdd the OSGi exported to get it linked up with the JBI components

    2009 Progress Software Corporation*

    ServiceMix JBI JBI packaging

    2009 Progress Software Corporation*

    ServiceMix JBI OSGi packagingDeploy plain XML file or bundle with entire configEndpointExporter integrates with NMR/JBI

    2009 Progress Software Corporation*

    ServiceMix JBIServiceMix 4 JBI Cluster Enginereplacement for JMS/JCA Flowall or nothing clusteringno fine-grained control over transactionsJBI cluster engine is installable as a featureadd a cluster registration for every clusterable endpoint to the JBI configuration

    2009 Progress Software Corporation*

    ServiceMix JBI

    2009 Progress Software Corporation*

    Getting involved?Getting involved?Start using the productVersioning of ServiceMix and FUSE ESBGet in touchContribute

    2009 Progress Software Corporation*

    Getting involved?Start using the productApache ServiceMixdevelopment happens here(b)leading edgeideal for following up on future direction or for experimentingFUSE ESBstable versions onlyregular fix releasesideal for use in projects/production

    2009 Progress Software Corporation*

    Getting involved?Versioning of ServiceMix and FUSE ESB

    Apache ServiceMixFUSE ESBFeatures3.2.x3.3.1.xJBI container and components (single release)3.3.x 3.4.1.x JBI container and shared components/4.0.0.xSpecial FUSE ESB preview OSGi-functionality only4.0.04.1.0.0OSGi-based JBI container with the shared components

    2009 Progress Software Corporation*

    Get