How to write my own binding component
ATTENTION!
This tutorial page is a work in progress and it may contain outdated information or may not work at all. It will be reworked soon, so check back later for updates.
ToDo-List
- when to create a binding component?
- outline the different jbi packaging units (bc, se, su, sa, sl)
- construct a real use case for the bc (for example a snmp poll service for grabbing snmp values of a network device like printer)
- start by setting up the folder structure and the root pom -> watch out for not working maven:create and the incomplete BC archetype
- define as much as possible inside the root pom (maybe done when the SU is created)
- create the binding component
- describe the pom content
- detailed description of the key concepts
- describe the base classes of the new bc and their role
- a note on the annotations which control the elements in the su's xbean.xml
- a note on different MEPs to support (or not)
- doing a consumer endpoint (poller)
- doing a test case for the bc
- testing the bc
- creating a service unit for the bc
- describe how to configure the pom.xml
- describe how to setup the xbean.xml
- create the service assembly
- configure the sa to package the su
- deployment of the sa -> bc is still missing -> describe dependency resolving mechanism
- deployment of the bc -> see the SA now deploying
- see result of the polling in console window
- for experienced users:
- doing a provider endpoint (left over for the experienced reader to implement)
- describe marshaler logic as it is used in nearly every SE / BC of smx
- implement a marshaler (for more experienced readers, this will also affect the BC to provide such possibility)
- add a file-sender to write snmp poll results to a file and wire it to the snmp poller
- deployment and testing
- give links etc. for further reading and for looking at other BC's code (snippets)
An overview of using Maven-based tooling and archetypes to develop a snmp binding component
Goals of the document
This tutorial provides an easy and convenient way for a new user to learn about:
- using Maven to develop JBI binding components
- using Maven to develop JBI service units and service assemblies
- using Maven to create Eclipse projects
- using xbean.xml files to configure routes and services in ServiceMix
- writing your own binding component
After finishing this tutorial you have a snmp binding component ready to poll devices. Feel free to play around with it and adding improvements.
Contents
Start this tutorial