Versions Compared

Key

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

...

You will then find a servicemix-jboss-deployer-3.1.2.jboss-SNAPSHOT.sar in the target directory, simply take this and . Rename this file to end in ".sar" and then drop it in your JBoss deploy directory (tested on JBoss 4.0.3 and 4.0.5), and away you go!!! Want to see it in action? You should be able to drop the JBI RI Transformation Engine example straight into the deploy directory and watch it pick up. Suddenly you have JBI enabled your JBoss Server!

...

Info
titleUseful Information

Note that if you are planning on using the components that ship with ServiceMix there , their libraries are not included in the ServiceMix JBoss deployer. Therefore, therefore you will need to copy your $SERVICEMIX_HOME/lib and $SERVICEMIX_HOME/lib/optional directories to your application server's library path (ie. $JBOSS_HOME/server/default/lib).

 
Since it is this approach that most people start with we added the ability to deploy this these Spring JBI configurations onto in JBoss.  In order to do this, deploy the servicemix-jboss-deployer-3.1-SNAPSHOT.sar deployer that you see below . Next, take a servicemix.xml configuration file and rename it so that it ends in -sm.xml (ie. filebind-sm.xml).  Place the configuration file in the JBoss deploy directory.   Before you do that, you will need to make some basic modifications to the configuration file to get it running, namely you will need to make sure that the createMBeanServer property is false.  Below is the file binding example configured to run under JBoss.

...

Code Block
xml
xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:sm="http://servicemix.apache.org/config/1.0"
       xmlns:foo="http://servicemix.org/demo/">

	  <!-- the JBI container -->
	  <sm:container id="jbi"
                useMBeanServer="false"
    	            createMBeanServer="false"
                dumpStats="true"
                statsInterval="10">

		    <sm:activationSpecs>

			      <!-- Write files to the outbox directory -->
			      <sm:activationSpec componentName="fileSender"
				                        service="foo:fileSender">
				        <sm:component>
					          <bean class="org.apache.servicemix.components.file.FileWriter">
						            <property name="directory" value="outbox" />
						            <property name="marshaler">
							              <bean class="org.apache.servicemix.components.util.DefaultFileMarshaler">
								                <property name="fileName">
									                  <bean class="org.apache.servicemix.expression.JaxenStringXPathExpression">
										                    <constructor-arg value="concat('sample_', /sample/@id, '.xml')" />
									</bean>
								</property>
							</bean>
						</property>
					</bean>
				                  </bean>
                </property>
              </bean>
            </property>
          </bean>
        </sm:component>
			      </sm:activationSpec>

			      <!-- Look for files in the inbox directory -->
			      <sm:activationSpec componentName="filePoller"
				                         destinationService="foo:fileSender"
                         service="foo:filePoller">
				        <sm:component>
					          <bean class="org.apache.servicemix.components.file.FilePoller">
						            <property name="workManager" ref="workManager" />
						            <property name="file" value="inbox" />
						            <property name="period" value="1000" />
					          </bean>
				        </sm:component>
			      </sm:activationSpec>
		    </sm:activationSpecs>
	  </sm:container>

	  <!-- the work manager (thread pool) for this container -->
	  <bean id="workManager" class="org.jencks.factory.WorkManagerFactoryBean">
		    <property name="threadPoolSize" value="30" />
	  </bean>

</beans>