Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

Apache ServiceMix provides a set of Maven archetypes for many different purposes, such as for creation of JBI components, service assemblies or service units for particular ServiceMix components.

...

Code Block
mvn archetype:create \
    -DarchetypeGroupId=org.apache.servicemix.tooling \
    -DarchetypeArtifactId=servicemix-archetype-name \
    -DarchetypeVersion=archetype-version \
    -DgroupId=org.apache.servicemix.samples.embedded \
    -DartifactId=servicemix-embedded-example \
    -DremoteRepositories=http://people.apache.org/repo/m2-incubating-repositoryDversion=1.0-SNAPSHOT

You need to replace servicemix-archetype-name by the name of the archetype you want to utilize.

This will use the latest released version of the archetype available in the repository. Optionally, you can also specify a specific version to use with the -DarchetypeVersion=VERSION parameter.Also, you can omit the -DremoteRepositories parameter if you have previously configured the repository as explained in 2.1. Beginner - Configuring Maven.

If you are using an *-incubating version of ServiceMix (e.g. 3.1.1-incubating), you have to either:

smx-arch

ServiceMix also ships with a smx-arch (or smx-arch.bat for Windows), available in the bin directory of the distribution. It provides a more convenient way for using the archetypes:

No Format
Usage: smx-arch command [su-type] [args]
  commands:
    sl                Creates a new Shared Library"  
    se                Creates a new Service Engine"
    bc                Creates a new Binding Component"
    sa                Creates a new Service Assembly"
    su                Creates a generic Service Unit"
    su [type]         Creates a SU of the specified type"
  SU types:
                      http-consumer, http-provider,"
                      jms-consumer, jms-provider,"
                      ftp-poller, ftp-sender,"
                      jsr181-annotated, jsr181-wsdl-first,"
                      saxon-xquery, saxon-xslt,"
                      eip, lwcontainer, bean, ode"
  Optional arguments:
    -DarchetypeVersion=x.y.z-classifier (if not specified, the latest released version will be used
    -DgroupId=xxxx"
    -DartifactId=xxxx"

...

Here is a list of the ServiceMix archetypes that are available. You can also take a look at the current list of available archetypes at httphttps://peoplerepository.apache.org/maven-snapshot-repository/org/apache/servicemix/tooling/Image Removedcontent/groups/public/ or in the archetypes directory in a ServiceMix source distribution.

...

Most of the ServiceMix archetypes can be used to create service unit projects. The most basic archetype is list above already mentions servicemix-service-unit, which creates a generic SU project. You still have to add a <dependency/> to the pom.xml yourself for the JBI component you want to target. The

These other archetypes already generate a SU targeted at a specific component. They also provide an xbean.xml file and sometimes some additional sample files.

archetype

JBI component

contents of xbean.xml

remarks

servicemix-bean-service-unit

servicemix-bean

a bean endpoint definition

also generates a sample class named MyBean

servicemix-camel-service-unit

servicemix-camel

 

deploys a set of Camel EIP routes
(version 3.2 or above only)

servicemix-cxf-bc-consumer-service-unit

servicemix-cxf-bc

<cxfbc:consumer/> endpoint

 

servicemix-cxf-bc-provider-service-unit

servicemix-cxf-bc

<cxfbc:provider/> endpoint

 

servicemix-cxf-se-service-unit

[ servicemix-cxf-se]

<cxfse:endpoint/>

 

servicemix-drools-service-unit

servicemix-drools

a drools endpoint

also generates a sample Drools rule file named router.drl
(version 3.2 or above only)

servicemix-eip-service-unit

servicemix-eip

an example for every EIP supported

 

servicemix-exec-service-unit

servicemix-exec

<exec:endpoint/>

Provides a service unit for an exec endpoint executing a command.

servicemix-file-poller-service-unit

servicemix-file

<

file:poller/

> endpoint

 

servicemix-file-sender-service-unit

servicemix-file

<

file:sender/

> endpoint

 

servicemix-ftp-poller-service-unit

servicemix-ftp

an <ftp:poller/> endpoint

 

servicemix-ftp-sender-service-unit

servicemix-ftp

an <ftp:sender/> endpoint

 

servicemix-http-consumer-service-unit

servicemix-http

<http:consumer/> endpoint

 

servicemix-http-soap-consumer-service-unit

servicemix-http

<http:soap-consumer/> endpoint

 

servicemix-http-provider-service-unit

servicemix-http

<http:provider/> endpoint some examples of possible HTTP consumer endpoint configurations

 

servicemix-http-soap-provider-service-unit

servicemix-http

<http:soap-provider/> endpoint

 

servicemix-jms-consumer-service-unit

servicemix-jms

<jms:consumer/> endpoint

 

servicemix-jms-soap-consumer-service-unit

servicemix-jms

<jms:soap-consumer/> endpoint some examples of possible HTTP provider endpoint configurations

 

servicemix-jms-jca-consumer-service-unit

servicemix-jms

<jms:jca-consumer/> endpoint

 

servicemix-jms-provider-service-unit

servicemix-jms

<jms:provider/> endpoint some examples of possible JMS consumer endpoint configurations

 

servicemix-jms-soap-provider-service-unit

servicemix-jms

some examples of possible JMS provider endpoint configurations <jms:soap-provider/> endpoint

 

servicemix-jsr181-annotated-service-unit

servicemisservicemix-jsr181

a JSR-181 annotated POJO endpoint

also generates a sample class named ExampleService

servicemix-jsr181-wsdl-first-service-unit

servicemisservicemix-jsr181

a JSR-181 WSDL based endpoint

also generates a sample WSDL file

servicemix-lwcontainer-service-unit

servicemisservicemix-lwcontainer

/

the servicemix.xml provided defines a sample lightweight component

servicemix-mail-poller-service-unit

servicemix-mail

<mail:poller/> endpoint

 

servicemix-mail-sender-service-unit

servicemix-mail

<mail:sender/> endpoint

 

servicemix-ode-service-unit

Apache ODE BPEL engine

/

creates a sample BPEL, WSDL and deploy.xml

servicemix-osworkflow-service-unit

servicemix-osworkflow

 

creates a sample workflow

servicemix-quartz-cron-trigger-service-unit

servicemix-quartz

<quartz:endpoint/> endpoint with cron trigger definition

 

servicemix-quartz-simple-trigger-service-unit

servicemix-quartz

<quartz:endpoint/> endpoint with simple trigger definition

 

servicemix-quartz-custom-marshaler-service-unit

servicemix-quartz

<quartz:endpoint/> with a custom marshaler

 

servicemix-saxon-xquery-service-unit

servicemisservicemix-saxon

examples of all supported (resource, inline and dynamic) ways to XQuery

also generates an example of an XQuery file

servicemix-saxon-xslt-service-unit

servicemisservicemix-saxon

examples of static and dynamic XSL-T usage

provides an example of an XSL-T file

...

servicemix-script-service-unit

servicemix-script

<script:exchangeProcessor/> with groovy script

 

servicemix-scripting-service-unit

servicemix-scripting

<scripting:endpoint/> with groovy, jruby and javascript scripts

 

servicemix-smpp-consumer-service-unit

servicemix-smpp

<smpp:consumer/> endpoint

 

servicemix-smpp-provider-service-unit

servicemix-smpp

<smpp:provider/> endpoint

 

servicemix-snmp-poller-service-unit

servicemix-snmp

<snmp:poller/> endpoint

 

servicemix-snmp-trap-consumer-service-unit

servicemix-snmp

<snmp:poller/> endpoint

 

servicemix-validation-service-unit

servicemix-validation

<validation:endpoint/> endpoint

 

servicemix-vfs-poller-service-unit

servicemix-vfs

<vfs:poller/> endpoint

 

servicemix-vfs-sender-service-unit

servicemix-vfs

<vfs:sender/> endpoint