SlideShare a Scribd company logo
ServiceMix 4 Integrating JBI with OSGi
Overview Recent releases Apache ServiceMix 3.2, 3.3 and 4.0.0 Dissecting ServiceMix 4.0.0 ServiceMix Kernel ServiceMix NMR and JBI Getting involved?
Recent releases Recent releases ServiceMix 3.2.x ServiceMix 3.3.x why separate components? ServiceMix 4.x why a new container?
ServiceMix 3.2.x ServiceMix 3.2.x JBI container and components  in one release
ServiceMix 3.3.x ServiceMix 3.3.1 JBI Container version 3.3.1 JBI Components version 2009.01
ServiceMix 3.3.x – Component versioning Rationale for separate components versioning share component between  ServiceMix 3.x and 4.x containers ensure container independence build using JBI API and shared library be able to test/run in both containers (as well as other JBI containers)‏ ease migration from 3.x to 4.x
ServiceMix 4.x ServiceMix 4.0.0 and beyond Modular OSGi-based container ServiceMix Kernel, ServiceMix NMR JBI Components version 2009.01
So what? We started with a JBI container and components... ...and we ended with one Why should I care?
Dissecting ServiceMix 4
Dissecting ServiceMix 4 ServiceMix Kernel overview of features example: create a Camel container ServiceMix NMR NMR features example:  NMR for loosely-coupled integration JBI features example: OSGi packaging for JBI
ServiceMix Kernel
ServiceMix Kernel A flexible OSGi-based server runtime Features: easy-to-use provisioning hot-deployment Spring integration powerful command shell, available over ssh JMX management container-level locking ...
ServiceMix Kernel A flexible OSGi-based server runtime Features: easy-to-use provisioning hot-deployment Spring integration powerful command shell, available over ssh JMX management container-level locking ... Apache Felix Karaf
ServiceMix Kernel – Console Console Management of ServiceMix Kernel locally when running ServiceMix Kernel remotely using SSH connection <subshell>/<command> syntax Just a few examples OSGi 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, ...
ServiceMix Kernel – Console Find, 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:\<smx_home>\instances\slave Creating dir:  C:\<smx_home>\instances\slave\bin ... smx@root:/>  admin/start slave smx@root:/>  admin/list Port  State  Pid  Name [ 8102] [Starting] [ 5896] slave
ServiceMix Kernel - Features Features Karaf-specific way for installing applications install the bundle add configuration defaults Using the command shell or JMX smx@root:/> features/addUrl   mvn:org.apache.servicemix/apache-servicemix/4.0.0/xml/features smx@root:/> features/install web smx@root:/> features/install activemq
Apache ServiceMix Kernel - Hot-deployment Hot-deployment uses the deploy directory allows deployment of  bundles features descriptors Spring XML files extensible mechanism deploy WAR files with web feature installed deploy JBI artifactswith ServiceMix JBI laye r
Apache ServiceMix Kernel – Spring integration Spring integration automatically load and start Spring context from a plain XML file from a bundle containing XML files in the META-INF/spring folder Spring DM support for OSGi interaction ConfigAdmin Service Registry
ServiceMix Kernel – Camel Example Example: Use ServiceMix Kernel for Camel Add the features descriptor url Install 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/features smx@root:/> features/install camel-osgi smx@root:/> features/install camel-ftp
ServiceMix Kernel – Camel Example Now, create this XML file in the deploy directory <? xml   version = &quot;1.0&quot; ?> < beans   xmlns = &quot;http://www.springframework.org/schema/beans&quot; xmlns:xsi = &quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemaLocation = &quot; http://www.springframework.org/schema/beans  http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://camel.apache.org/schema/spring  http://camel.apache.org/schema/spring/camel-spring.xsd&quot; > < camelContext   xmlns = &quot;http://camel.apache.org/schema/spring&quot; > < route > < from   uri = &quot;ftp://gertv@ftp.smx.eu/orders?password=secret&quot; /> < to   uri = &quot;file:/home/orders/in&quot; /> </ route > </ camelContext > </ beans >
ServiceMix NMR/JBI Using ServiceMix Kernel to build a JBI container We are using a 2 layer solution NMR API for messaging JBI specification implementation
ServiceMix NMR
ServiceMix NMR ServiceMix 4 NMR easy to use messaging API (Exchange, Message, Endpoint, ...)‏ handles XML and POJO payloads listener interfaces to monitor the NMR (ExchangeListener, EndpointListener, …)‏ support for wiring endpoints and intercepting exchanges command shell for managing the NMR
ServiceMix NMR ServiceMix 4 NMR installable as a ServiceMix Kernel feature You can use it for loosely coupled integration Camel routes CXF web services …  add anything else yourself here We use it to build our JBI integration layer
ServiceMix NMR < beans   xmlns = &quot;http://www.springframework.org/schema/beans&quot; xmlns:xsi = &quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemaLocation = &quot;...&quot; > < import   resource = &quot;classpath:org/apache/servicemix/camel/nmr/camel-nmr.xml&quot;   /> < camelContext   xmlns = &quot;http://camel.apache.org/schema/spring&quot; > < route > < from   uri = &quot;ftp://gertv@ftp.smx.eu/orders?password=secret&quot; /> < to   uri = &quot;nmr:IncomingOrders&quot; /> </ route > <!-- the second route can be in another bundle --> < route > < from   uri = &quot;nmr:IncomingOrders&quot; /> < to   uri = &quot;file:/home/orders/in&quot; /> </ route > </ camelContext > </ beans >
ServiceMix JBI
ServiceMix JBI ServiceMix 4 JBI installable as a ServiceMix Kernel feature runs on top of ServiceMix NMR it adds JBI Messaging API JBI Deployment and packaging JBI Management Mbeans
ServiceMix JBI ServiceMix 4 JBI: Deployment models JBI packaging For strict JBI compatibility For compatibility with ServiceMix 3 just drop your SA in the deploy directory OSGi packaging Deploy config in a bundle or plain XML file Add the OSGi exported to get it linked up with the JBI components
ServiceMix JBI – JBI packaging
ServiceMix JBI – OSGi packaging Deploy plain XML file or bundle with entire config EndpointExporter integrates with NMR/JBI <? xml   version = &quot;1.0&quot; ?> < beans   xmlns = &quot;http://www.springframework.org/schema/beans&quot; xmlns:my = &quot;urn:my:ns&quot; xmlns:file = &quot;http://servicemix.apache.org/file/1.0&quot; xmlns:ftp = &quot;http://servicemix.apache.org/ftp/1.0&quot; xmlns:xsi = &quot;...&quot;   xsi:schemaLocation = &quot;...&quot; > < ftp:poller   service = &quot;my:ftp&quot;   endpoint = &quot;endpoint&quot; targetService = &quot;my:file&quot; uri = &quot;ftp://gert:secret@ftp.smx.eu/orders&quot; /> < file:sender   service = &quot;my:file&quot;   endpoint = &quot;endpoint&quot; directory = &quot;/home/orders/in&quot; /> < bean   class = &quot;org.apache.servicemix.common.osgi.EndpointExporter&quot;   /> </ beans >
ServiceMix JBI ServiceMix 4 JBI Cluster Engine replacement for JMS/JCA Flow all or nothing clustering no fine-grained control over transactions JBI cluster engine is installable as a feature add a cluster registration for every clusterable endpoint to the JBI configuration < bean   class = &quot;o.a.s.jbi.cluster.engine.OsgiSimpleClusterRegistration&quot; > < property   name = &quot;serviceName&quot;   value = &quot;test:myService&quot;   /> < property   name = &quot;endpointName&quot;   value = &quot;myEndpoint&quot;   /> </ bean >
ServiceMix JBI
Getting involved? Getting involved? Start using the product Versioning of ServiceMix and FUSE ESB Get in touch Contribute
Getting involved? Start using the product Apache ServiceMix development happens here (b)leading edge ideal for following up on future direction or for experimenting FUSE ESB stable versions only regular fix releases ideal for use in projects/production
Getting involved? Versioning of ServiceMix and FUSE ESB Apache ServiceMix FUSE ESB Features 3.2.x 3.3.1.x JBI container and components  (single release) 3.3.x  3.4.1.x  JBI container and shared components / 4.0.0.x Special FUSE ESB preview OSGi-functionality only 4.0.0 4.1.0.0 OSGi-based JBI container with the shared components
Getting involved? Get in touch Apache ServiceMix mailing list  [email_address] #servicemix on irc.codehaus.org Apache Felix mailing list  [email_address] FUSE forums on  http://www.fusesource.com
Getting involved? Contribute give us some feedback reportings bugs suggestions for new features (what would you like in ServiceMix 4.1?) we welcome all kinds of contributions involvement on the mailing list/forum documentation patches – we really love patches ;) ...
Getting involved? Learn about ServiceMix and FUSE ESB Apache ServiceMix http://servicemix.apache.org Apache Felix Karaf http://felix.apache.org/site/apache-felix-karaf.html FUSE ESB http://www.fusesource.com more tutorials, webinars, docs, ...
Questions? Remarks?

More Related Content

PPT
An Introduction to Apache ServiceMix 4 - FUSE ESB
PDF
Service Oriented Integration With ServiceMix
PPT
Implementing WebServices with Camel and CXF in ServiceMix
PDF
Service-Oriented Integration With Apache ServiceMix
PPT
Succeding with the Apache SOA stack
PDF
Service Oriented Integration with ServiceMix
PPTX
Apache servicemix1
PDF
WebSockets with Spring 4
An Introduction to Apache ServiceMix 4 - FUSE ESB
Service Oriented Integration With ServiceMix
Implementing WebServices with Camel and CXF in ServiceMix
Service-Oriented Integration With Apache ServiceMix
Succeding with the Apache SOA stack
Service Oriented Integration with ServiceMix
Apache servicemix1
WebSockets with Spring 4

What's hot (20)

ODP
JMS and ActiveMQ - VuNV 201307
PDF
RESTful web service with JBoss Fuse
PPTX
Asynchronous Web Programming with HTML5 WebSockets and Java
PPTX
Web sockets in Java
PDF
Introduction to ActiveMQ Apollo
PDF
Introduction to WebSockets
KEY
The HTML5 WebSocket API
PDF
Tomcatx performance-tuning
KEY
Pushing the web — WebSockets
KEY
Load Balancing with Apache
PDF
Nuts and Bolts of WebSocket Devoxx 2014
PPT
Camelone-2012 HTML5 WebSocket ActiveMQ/Camel
PDF
ActiveMQ In Action
PPTX
WebSockets in JEE 7
PPT
Apache ServiceMix4 : Dream platform for Java Integration
PDF
Realtime web application with java
PDF
Tomcat Optimisation & Performance Tuning
PPTX
Making Apache Camel work for you
PDF
Java troubleshooting thread dump
PDF
Getting Started with WebSocket and Server-Sent Events in Java
JMS and ActiveMQ - VuNV 201307
RESTful web service with JBoss Fuse
Asynchronous Web Programming with HTML5 WebSockets and Java
Web sockets in Java
Introduction to ActiveMQ Apollo
Introduction to WebSockets
The HTML5 WebSocket API
Tomcatx performance-tuning
Pushing the web — WebSockets
Load Balancing with Apache
Nuts and Bolts of WebSocket Devoxx 2014
Camelone-2012 HTML5 WebSocket ActiveMQ/Camel
ActiveMQ In Action
WebSockets in JEE 7
Apache ServiceMix4 : Dream platform for Java Integration
Realtime web application with java
Tomcat Optimisation & Performance Tuning
Making Apache Camel work for you
Java troubleshooting thread dump
Getting Started with WebSocket and Server-Sent Events in Java
Ad

Viewers also liked (20)

PDF
Apache ActiveMQ and Apache ServiceMix
PPT
Gert Vanthienen Presentation
PDF
Enterprise Service Bus and JBI
PPT
Jms introduction
PPTX
ZendCon - Integration and Asynchronous Processing with ActiveMQ and Camel
PPTX
Enabling Security For ActiveMQ JMX Access
PDF
Plata1 recdencia
PPTX
You and I
ODP
Biologia
PPTX
Presentación1
PPTX
Institutional research
PDF
GEOGRAFO DELLE EMOZIONI - La prima partita ufficiale
PDF
ROS+Docker
PPTX
Curso comprensión de textos académicos
PPSX
EL PODER DE LA PALABRA DE DIOS
PDF
What's new in the OSGi 4.2 Enterprise Release
PDF
Apache ActiveMQ, Camel, CXF and ServiceMix Overview
DOCX
Karya ilmiah makanan sehat
PDF
IoT with Apache ActiveMQ, Camel & Spark
PPTX
Jms deep dive [con4864]
Apache ActiveMQ and Apache ServiceMix
Gert Vanthienen Presentation
Enterprise Service Bus and JBI
Jms introduction
ZendCon - Integration and Asynchronous Processing with ActiveMQ and Camel
Enabling Security For ActiveMQ JMX Access
Plata1 recdencia
You and I
Biologia
Presentación1
Institutional research
GEOGRAFO DELLE EMOZIONI - La prima partita ufficiale
ROS+Docker
Curso comprensión de textos académicos
EL PODER DE LA PALABRA DE DIOS
What's new in the OSGi 4.2 Enterprise Release
Apache ActiveMQ, Camel, CXF and ServiceMix Overview
Karya ilmiah makanan sehat
IoT with Apache ActiveMQ, Camel & Spark
Jms deep dive [con4864]
Ad

Similar to ServiceMix 4 -- Integrating OSGi with JBI (20)

PPTX
Servicemix4.5.0
PPT
IJTC ServiceMix 4
PPT
WebServices in ServiceMix with CXF
PDF
Be jug 090611_apacheservicemix
PDF
20100907 fuse-community-evening-adrian-trenaman-no-logo
PDF
Integrate (Yourself) with the Apache Software Foundation - 33rd Degree 4charity
PDF
Make easier Integration of your services with Fuse Solutions - RedHat 2013
PDF
Develop apps with Camel and GWT on OSGi
PPTX
Introduction to-osgi
PPT
Lightning talk service mix
PDF
OSGi as Enterprise Integration Platform
PDF
ApacheCon EU 2009 Tales from the front line - ActiveMQ ServiceMix and CXF
PDF
Agile Integration Workshop
PDF
OSGi for real in the enterprise: Apache Karaf - NLJUG J-FALL 2010
PDF
Integrate (Yourself) with the Apache Software Foundation - Open Source Day 2015
PDF
Developing, Testing and Scaling with Apache Camel - UberConf 2015
PPT
Xke - Introduction to Apache Camel
PDF
Camel and JBoss
PDF
JBoss Fuse Service Works
ODP
Jazoon2010 - Edgar Silva - Open source SOA on Steroids
Servicemix4.5.0
IJTC ServiceMix 4
WebServices in ServiceMix with CXF
Be jug 090611_apacheservicemix
20100907 fuse-community-evening-adrian-trenaman-no-logo
Integrate (Yourself) with the Apache Software Foundation - 33rd Degree 4charity
Make easier Integration of your services with Fuse Solutions - RedHat 2013
Develop apps with Camel and GWT on OSGi
Introduction to-osgi
Lightning talk service mix
OSGi as Enterprise Integration Platform
ApacheCon EU 2009 Tales from the front line - ActiveMQ ServiceMix and CXF
Agile Integration Workshop
OSGi for real in the enterprise: Apache Karaf - NLJUG J-FALL 2010
Integrate (Yourself) with the Apache Software Foundation - Open Source Day 2015
Developing, Testing and Scaling with Apache Camel - UberConf 2015
Xke - Introduction to Apache Camel
Camel and JBoss
JBoss Fuse Service Works
Jazoon2010 - Edgar Silva - Open source SOA on Steroids

Recently uploaded (20)

PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Approach and Philosophy of On baking technology
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
Spectroscopy.pptx food analysis technology
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPTX
MYSQL Presentation for SQL database connectivity
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
KodekX | Application Modernization Development
PDF
Unlocking AI with Model Context Protocol (MCP)
The Rise and Fall of 3GPP – Time for a Sabbatical?
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
“AI and Expert System Decision Support & Business Intelligence Systems”
Building Integrated photovoltaic BIPV_UPV.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Approach and Philosophy of On baking technology
Programs and apps: productivity, graphics, security and other tools
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Spectroscopy.pptx food analysis technology
Per capita expenditure prediction using model stacking based on satellite ima...
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Chapter 3 Spatial Domain Image Processing.pdf
Dropbox Q2 2025 Financial Results & Investor Presentation
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
MYSQL Presentation for SQL database connectivity
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
KodekX | Application Modernization Development
Unlocking AI with Model Context Protocol (MCP)

ServiceMix 4 -- Integrating OSGi with JBI

  • 1. ServiceMix 4 Integrating JBI with OSGi
  • 2. Overview Recent releases Apache ServiceMix 3.2, 3.3 and 4.0.0 Dissecting ServiceMix 4.0.0 ServiceMix Kernel ServiceMix NMR and JBI Getting involved?
  • 3. Recent releases Recent releases ServiceMix 3.2.x ServiceMix 3.3.x why separate components? ServiceMix 4.x why a new container?
  • 4. ServiceMix 3.2.x ServiceMix 3.2.x JBI container and components in one release
  • 5. ServiceMix 3.3.x ServiceMix 3.3.1 JBI Container version 3.3.1 JBI Components version 2009.01
  • 6. ServiceMix 3.3.x – Component versioning Rationale for separate components versioning share component between ServiceMix 3.x and 4.x containers ensure container independence build using JBI API and shared library be able to test/run in both containers (as well as other JBI containers)‏ ease migration from 3.x to 4.x
  • 7. ServiceMix 4.x ServiceMix 4.0.0 and beyond Modular OSGi-based container ServiceMix Kernel, ServiceMix NMR JBI Components version 2009.01
  • 8. So what? We started with a JBI container and components... ...and we ended with one Why should I care?
  • 10. Dissecting ServiceMix 4 ServiceMix Kernel overview of features example: create a Camel container ServiceMix NMR NMR features example: NMR for loosely-coupled integration JBI features example: OSGi packaging for JBI
  • 12. ServiceMix Kernel A flexible OSGi-based server runtime Features: easy-to-use provisioning hot-deployment Spring integration powerful command shell, available over ssh JMX management container-level locking ...
  • 13. ServiceMix Kernel A flexible OSGi-based server runtime Features: easy-to-use provisioning hot-deployment Spring integration powerful command shell, available over ssh JMX management container-level locking ... Apache Felix Karaf
  • 14. ServiceMix Kernel – Console Console Management of ServiceMix Kernel locally when running ServiceMix Kernel remotely using SSH connection <subshell>/<command> syntax Just a few examples OSGi 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, ...
  • 15. ServiceMix Kernel – Console Find, 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:\<smx_home>\instances\slave Creating dir: C:\<smx_home>\instances\slave\bin ... smx@root:/> admin/start slave smx@root:/> admin/list Port State Pid Name [ 8102] [Starting] [ 5896] slave
  • 16. ServiceMix Kernel - Features Features Karaf-specific way for installing applications install the bundle add configuration defaults Using the command shell or JMX smx@root:/> features/addUrl mvn:org.apache.servicemix/apache-servicemix/4.0.0/xml/features smx@root:/> features/install web smx@root:/> features/install activemq
  • 17. Apache ServiceMix Kernel - Hot-deployment Hot-deployment uses the deploy directory allows deployment of bundles features descriptors Spring XML files extensible mechanism deploy WAR files with web feature installed deploy JBI artifactswith ServiceMix JBI laye r
  • 18. Apache ServiceMix Kernel – Spring integration Spring integration automatically load and start Spring context from a plain XML file from a bundle containing XML files in the META-INF/spring folder Spring DM support for OSGi interaction ConfigAdmin Service Registry
  • 19. ServiceMix Kernel – Camel Example Example: Use ServiceMix Kernel for Camel Add the features descriptor url Install 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/features smx@root:/> features/install camel-osgi smx@root:/> features/install camel-ftp
  • 20. ServiceMix Kernel – Camel Example Now, create this XML file in the deploy directory <? xml version = &quot;1.0&quot; ?> < beans xmlns = &quot;http://www.springframework.org/schema/beans&quot; xmlns:xsi = &quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemaLocation = &quot; http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd&quot; > < camelContext xmlns = &quot;http://camel.apache.org/schema/spring&quot; > < route > < from uri = &quot;ftp://gertv@ftp.smx.eu/orders?password=secret&quot; /> < to uri = &quot;file:/home/orders/in&quot; /> </ route > </ camelContext > </ beans >
  • 21. ServiceMix NMR/JBI Using ServiceMix Kernel to build a JBI container We are using a 2 layer solution NMR API for messaging JBI specification implementation
  • 23. ServiceMix NMR ServiceMix 4 NMR easy to use messaging API (Exchange, Message, Endpoint, ...)‏ handles XML and POJO payloads listener interfaces to monitor the NMR (ExchangeListener, EndpointListener, …)‏ support for wiring endpoints and intercepting exchanges command shell for managing the NMR
  • 24. ServiceMix NMR ServiceMix 4 NMR installable as a ServiceMix Kernel feature You can use it for loosely coupled integration Camel routes CXF web services … add anything else yourself here We use it to build our JBI integration layer
  • 25. ServiceMix NMR < beans xmlns = &quot;http://www.springframework.org/schema/beans&quot; xmlns:xsi = &quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemaLocation = &quot;...&quot; > < import resource = &quot;classpath:org/apache/servicemix/camel/nmr/camel-nmr.xml&quot; /> < camelContext xmlns = &quot;http://camel.apache.org/schema/spring&quot; > < route > < from uri = &quot;ftp://gertv@ftp.smx.eu/orders?password=secret&quot; /> < to uri = &quot;nmr:IncomingOrders&quot; /> </ route > <!-- the second route can be in another bundle --> < route > < from uri = &quot;nmr:IncomingOrders&quot; /> < to uri = &quot;file:/home/orders/in&quot; /> </ route > </ camelContext > </ beans >
  • 27. ServiceMix JBI ServiceMix 4 JBI installable as a ServiceMix Kernel feature runs on top of ServiceMix NMR it adds JBI Messaging API JBI Deployment and packaging JBI Management Mbeans
  • 28. ServiceMix JBI ServiceMix 4 JBI: Deployment models JBI packaging For strict JBI compatibility For compatibility with ServiceMix 3 just drop your SA in the deploy directory OSGi packaging Deploy config in a bundle or plain XML file Add the OSGi exported to get it linked up with the JBI components
  • 29. ServiceMix JBI – JBI packaging
  • 30. ServiceMix JBI – OSGi packaging Deploy plain XML file or bundle with entire config EndpointExporter integrates with NMR/JBI <? xml version = &quot;1.0&quot; ?> < beans xmlns = &quot;http://www.springframework.org/schema/beans&quot; xmlns:my = &quot;urn:my:ns&quot; xmlns:file = &quot;http://servicemix.apache.org/file/1.0&quot; xmlns:ftp = &quot;http://servicemix.apache.org/ftp/1.0&quot; xmlns:xsi = &quot;...&quot; xsi:schemaLocation = &quot;...&quot; > < ftp:poller service = &quot;my:ftp&quot; endpoint = &quot;endpoint&quot; targetService = &quot;my:file&quot; uri = &quot;ftp://gert:secret@ftp.smx.eu/orders&quot; /> < file:sender service = &quot;my:file&quot; endpoint = &quot;endpoint&quot; directory = &quot;/home/orders/in&quot; /> < bean class = &quot;org.apache.servicemix.common.osgi.EndpointExporter&quot; /> </ beans >
  • 31. ServiceMix JBI ServiceMix 4 JBI Cluster Engine replacement for JMS/JCA Flow all or nothing clustering no fine-grained control over transactions JBI cluster engine is installable as a feature add a cluster registration for every clusterable endpoint to the JBI configuration < bean class = &quot;o.a.s.jbi.cluster.engine.OsgiSimpleClusterRegistration&quot; > < property name = &quot;serviceName&quot; value = &quot;test:myService&quot; /> < property name = &quot;endpointName&quot; value = &quot;myEndpoint&quot; /> </ bean >
  • 33. Getting involved? Getting involved? Start using the product Versioning of ServiceMix and FUSE ESB Get in touch Contribute
  • 34. Getting involved? Start using the product Apache ServiceMix development happens here (b)leading edge ideal for following up on future direction or for experimenting FUSE ESB stable versions only regular fix releases ideal for use in projects/production
  • 35. Getting involved? Versioning of ServiceMix and FUSE ESB Apache ServiceMix FUSE ESB Features 3.2.x 3.3.1.x JBI container and components (single release) 3.3.x 3.4.1.x JBI container and shared components / 4.0.0.x Special FUSE ESB preview OSGi-functionality only 4.0.0 4.1.0.0 OSGi-based JBI container with the shared components
  • 36. Getting involved? Get in touch Apache ServiceMix mailing list [email_address] #servicemix on irc.codehaus.org Apache Felix mailing list [email_address] FUSE forums on http://www.fusesource.com
  • 37. Getting involved? Contribute give us some feedback reportings bugs suggestions for new features (what would you like in ServiceMix 4.1?) we welcome all kinds of contributions involvement on the mailing list/forum documentation patches – we really love patches ;) ...
  • 38. Getting involved? Learn about ServiceMix and FUSE ESB Apache ServiceMix http://servicemix.apache.org Apache Felix Karaf http://felix.apache.org/site/apache-felix-karaf.html FUSE ESB http://www.fusesource.com more tutorials, webinars, docs, ...