Author: veithen
Date: Thu Jan  1 15:00:37 2009
New Revision: 730627

URL: http://svn.apache.org/viewvc?rev=730627&view=rev
Log:
Added an Ant script that allows to automatically set up ActiveMQ for Synapse 
and the sample Axis2 server.

Added:
    synapse/trunk/java/modules/samples/src/main/scripts/util/
    synapse/trunk/java/modules/samples/src/main/scripts/util/build.xml
Modified:
    synapse/trunk/java/modules/distribution/pom.xml
    synapse/trunk/java/modules/distribution/src/main/assembly/bin.xml
    synapse/trunk/java/src/site/xdoc/Synapse_Samples_Setup.xml

Modified: synapse/trunk/java/modules/distribution/pom.xml
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/distribution/pom.xml?rev=730627&r1=730626&r2=730627&view=diff
==============================================================================
--- synapse/trunk/java/modules/distribution/pom.xml (original)
+++ synapse/trunk/java/modules/distribution/pom.xml Thu Jan  1 15:00:37 2009
@@ -51,8 +51,28 @@
             <artifactId>synapse-experimental</artifactId>
             <version>${pom.version}</version>
         </dependency>
+        <dependency>
+            <groupId>com.oopsconsultancy</groupId>
+            <artifactId>xmltask</artifactId>
+            <version>1.14</version>
+        </dependency>
     </dependencies>
 
+    <repositories>
+        <!-- This is for xmltask -->
+        <repository>
+            <id>atlassian-developer-site</id>
+            <name>Atlassian Maven 2 Contributor Repository</name>
+            <url>https://maven.atlassian.com/repository/public</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </repository>
+    </repositories>
+
     <build>
         <plugins>
             <plugin>

Modified: synapse/trunk/java/modules/distribution/src/main/assembly/bin.xml
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/distribution/src/main/assembly/bin.xml?rev=730627&r1=730626&r2=730627&view=diff
==============================================================================
--- synapse/trunk/java/modules/distribution/src/main/assembly/bin.xml (original)
+++ synapse/trunk/java/modules/distribution/src/main/assembly/bin.xml Thu Jan  
1 15:00:37 2009
@@ -270,6 +270,7 @@
                 <exclude>org.slf4j:slf4j-api:jar</exclude>
                 <exclude>org.apache.qpid:qpid-common:jar</exclude>
                 <exclude>org.apache.qpid:qpid-client:jar</exclude>
+                <exclude>com.oopsconsultancy:xmltask:jar</exclude>
             </excludes>
         </dependencySet>
         <dependencySet>
@@ -312,6 +313,13 @@
             </includes>
             
<outputFileNameMapping>${artifact.artifactId}.${artifact.extension}</outputFileNameMapping>
         </dependencySet>
+        <dependencySet>
+            <useProjectArtifact>false</useProjectArtifact>
+            
<outputDirectory>synapse-${synapse.version}/samples/util</outputDirectory>
+            <includes>
+                <include>com.oopsconsultancy:xmltask:jar</include>
+            </includes>
+        </dependencySet>
     </dependencySets>
 
 </assembly>

Added: synapse/trunk/java/modules/samples/src/main/scripts/util/build.xml
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/samples/src/main/scripts/util/build.xml?rev=730627&view=auto
==============================================================================
--- synapse/trunk/java/modules/samples/src/main/scripts/util/build.xml (added)
+++ synapse/trunk/java/modules/samples/src/main/scripts/util/build.xml Thu Jan  
1 15:00:37 2009
@@ -0,0 +1,107 @@
+<?xml version="1.0"?>
+<!--
+  ~  Licensed to the Apache Software Foundation (ASF) under one
+  ~  or more contributor license agreements.  See the NOTICE file
+  ~  distributed with this work for additional information
+  ~  regarding copyright ownership.  The ASF licenses this file
+  ~  to you under the Apache License, Version 2.0 (the
+  ~  "License"); you may not use this file except in compliance
+  ~  with the License.  You may obtain a copy of the License at
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~  Unless required by applicable law or agreed to in writing,
+  ~  software distributed under the License is distributed on an
+  ~   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~  KIND, either express or implied.  See the License for the
+  ~  specific language governing permissions and limitations
+  ~  under the License.
+  -->
+<project name="util" default="help" basedir=".">
+    <property environment="env"/>
+    <property name="activemq.home" value="${env.ACTIVEMQ_HOME}"/>
+    <property name="axis2.xml" value="../../repository/conf/axis2.xml"/>
+    <property name="libdir" value="../../lib"/>
+    
+    <taskdef name="xmltask" 
classname="com.oopsconsultancy.xmltask.ant.XmlTask">
+        <classpath>
+            <pathelement location="xmltask-1.14.jar"/>
+        </classpath>
+    </taskdef>
+    
+    <target name="help">
+    <echo>
+    ant setupActiveMQ
+        Set up the JMS transport in Synapse for use with ActiveMQ. This task 
copies the required
+        libraries to the lib folder and configures the JMS transport in 
axis2.xml. Note that for
+        this to work, the ActiveMQ installation directory must be specified 
either using the
+        ACTIVEMQ_HOME environment variable or the activemq.home property:
+        
+        ant setupActiveMQ -Dactivemq.home=/usr/local/apache-activemq-4.1.2
+    </echo>
+    </target>
+    
+    <target name="setupActiveMQ">
+        <copy todir="${libdir}">
+            <fileset dir="${activemq.home}/lib">
+                <include name="activeio-core-*.jar"/>
+                <include name="activemq-core-*.jar"/>
+                <include name="geronimo-j2ee-management_*_spec-*.jar"/>
+                <exclude name="*-tests.jar"/>
+            </fileset>
+        </copy>
+        <xmltask source="${axis2.xml}" dest="${axis2.xml}">
+            <remove path="/axisconfig/transportreceiv...@name='jms']"/>
+            <insert path="/axisconfig/transportReceiver[last()]" 
position="after">
+    <![CDATA[
+    <transportReceiver name="jms" 
class="org.apache.axis2.transport.jms.JMSListener">
+        <parameter name="myTopicConnectionFactory">
+            <parameter 
name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
+            <parameter 
name="java.naming.provider.url">tcp://localhost:61616</parameter>
+            <parameter 
name="transport.jms.ConnectionFactoryJNDIName">TopicConnectionFactory</parameter>
+            <parameter name="transport.jms.ConnectionFactoryType" 
locked="false">topic</parameter>
+        </parameter>
+
+        <parameter name="myQueueConnectionFactory">
+            <parameter 
name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
+            <parameter 
name="java.naming.provider.url">tcp://localhost:61616</parameter>
+            <parameter 
name="transport.jms.ConnectionFactoryJNDIName">QueueConnectionFactory</parameter>
+            <parameter name="transport.jms.ConnectionFactoryType" 
locked="false">queue</parameter>
+        </parameter>
+
+        <parameter name="default">
+            <parameter 
name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
+            <parameter 
name="java.naming.provider.url">tcp://localhost:61616</parameter>
+            <parameter 
name="transport.jms.ConnectionFactoryJNDIName">QueueConnectionFactory</parameter>
+            <parameter name="transport.jms.ConnectionFactoryType" 
locked="false">queue</parameter>
+        </parameter>
+    </transportReceiver>
+    ]]>
+            </insert>
+            <remove path="/axisconfig/transportsend...@name='jms']"/>
+            <insert path="/axisconfig/transportSender[last()]" 
position="after">
+    <![CDATA[
+    <transportSender class="org.apache.axis2.transport.jms.JMSSender" 
name="jms">
+        <parameter name="myTopicConnectionFactory">
+            <parameter 
name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
+            <parameter 
name="java.naming.provider.url">tcp://localhost:61616</parameter>
+            <parameter 
name="transport.jms.ConnectionFactoryJNDIName">TopicConnectionFactory</parameter>
+        </parameter>
+    
+        <parameter name="myQueueConnectionFactory">
+            <parameter 
name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
+            <parameter 
name="java.naming.provider.url">tcp://localhost:61616</parameter>
+            <parameter 
name="transport.jms.ConnectionFactoryJNDIName">QueueConnectionFactory</parameter>
+        </parameter>
+    
+        <parameter name="default">
+            <parameter 
name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
+            <parameter 
name="java.naming.provider.url">tcp://localhost:61616</parameter>
+            <parameter 
name="transport.jms.ConnectionFactoryJNDIName">QueueConnectionFactory</parameter>
 
+        </parameter>
+    </transportSender>
+    ]]>
+            </insert>
+        </xmltask>
+    </target>
+</project>

Modified: synapse/trunk/java/src/site/xdoc/Synapse_Samples_Setup.xml
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/src/site/xdoc/Synapse_Samples_Setup.xml?rev=730627&r1=730626&r2=730627&view=diff
==============================================================================
--- synapse/trunk/java/src/site/xdoc/Synapse_Samples_Setup.xml (original)
+++ synapse/trunk/java/src/site/xdoc/Synapse_Samples_Setup.xml Thu Jan  1 
15:00:37 2009
@@ -451,7 +451,6 @@
     <h2>
       Setting up the JMS Listener
     </h2>
-    <p/>
     <p>
       The samples used in this guide assumes the existence of a local ActiveMQ
       (4.1.0 or higher) installation properly installed and started up. You 
also
@@ -461,10 +460,10 @@
     </p>
     <ul>
       <li>
-        activeio-core-3.0.0-incubator.jar
+        activeio-core-3.x.x.jar
       </li>
       <li>
-        activemq-core-4.1.0-incubator.jar
+        activemq-core-4.x.x.jar
       </li>
       <li>
         geronimo-j2ee-management_1.0_spec-1.0.jar
@@ -475,7 +474,7 @@
       listener configuration. If you are using a JMS provider other than
       ActiveMQ this configuration should be updated to reflect your 
environment.
       Once uncommented, the default configuration should be as follows. To
-      enable JMS for synapse, the repository/conf/axis2.xml must be updated,
+      enable JMS for Synapse, the repository/conf/axis2.xml must be updated,
       while to enable JMS support for the sample Axis2 server the
       samples/axis2Server/repository/conf/axis2.xml file must be updated.
     </p>
@@ -499,7 +498,17 @@
                 &lt;parameter name="transport.jms.ConnectionFactoryJNDIName" 
locked="false"&gt;QueueConnectionFactory&lt;/parameter&gt;
         &lt;/parameter&gt;
     &lt;/transportReceiver&gt;</pre>
-    <p/>
+    <p>
+      If you are using ActiveMQ, you can use the Ant script in 
<tt>samples/util</tt> to set up Synapse
+      (i.e. copying the required JAR files and modifying <tt>axis2.xml</tt>) 
in an automated way. In order to do
+      this, change into the <tt>samples/util</tt> directory and execute the 
following command:
+    </p>
+<pre xml:space="preserve">ant setupActiveMQ -Dactivemq.home=<i>&lt;ActiveMQ 
home directory></i></pre>
+    <p>
+      Note that if the environment variable <tt>ACTIVEMQ_HOME</tt> is defined, 
you can omit the <tt>-Dactivemq.home</tt>
+      option. If you also want to set up ActiveMQ for the sample Axis2 server, 
issue the following command:
+    </p>
+<pre xml:space="preserve">ant setupActiveMQ 
-Daxis2.xml=..\axis2Server\repository\conf\axis2.xml</pre>
     <h2 id="setupamqpjms">
       Configure Synapse for AMQP Transport
     </h2>


Reply via email to