[jboss-svn-commits] JBL Code SVN: r20577 - in labs/jbossesb/trunk/product: install/conf and 44 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Jun 18 06:11:56 EDT 2008


Author: tfennelly
Date: 2008-06-18 06:11:56 -0400 (Wed, 18 Jun 2008)
New Revision: 20577

Added:
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/jbossesb.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/log4j.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/bindings.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/database/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/database/datasources.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/database/ref-data.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/main.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/parse/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/parse/edi-orders-parser.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/parse/edi-to-xml-order-mapping.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-02_Low_Price_Service.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-03_High_Price_Service.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-04_Reptiles_notify_webservice_proxy.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-05_Database.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/02_Low_Price/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/02_Low_Price/jbossesb.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/02_Low_Price/log4j.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/jbossesb.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/log4j.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/soa/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/soa/esb/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/soa/esb/example/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/soa/esb/example/highprice/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/soa/esb/example/highprice/Address.java
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/soa/esb/example/highprice/Order.java
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/soa/esb/example/highprice/Product.java
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/src/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/src/org/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/src/org/jboss/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/src/org/jboss/esb/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/src/org/jboss/esb/ordwebservice/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/src/org/jboss/esb/ordwebservice/Notification.java
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/src/org/jboss/esb/ordwebservice/ReptilesNotifyWS.java
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/web.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/index.jsp
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db-hsqldb-dataload.sql
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db-hsqldb-schema.sql
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db.lck
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db.log
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db.properties
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db.script
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/hsqldb.jar
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/manager.bat
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/manager.sh
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/server.bat
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/server.properties
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/server.sh
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/README.html
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/build.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/docs/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/docs/02_Low_Price.gif
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/docs/Overview.odp
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/docs/Overview.png
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/docs/datasource-vafter.gif
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/docs/datasource-vbefore.gif
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/docs/source-model.gif
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jbm-queue-service.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jbmq-queue-service.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jbossesb-properties.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jndi.properties
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/juddi.properties
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/log4j.xml
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/jboss/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/jboss/soa/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/jboss/soa/esb/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/jboss/soa/esb/example/
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/jboss/soa/esb/example/MessageGenerator.java
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/jboss/soa/esb/example/PrintMessage.java
   labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/jboss/soa/esb/example/PrintVisitor.java
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-core-1.0.1.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-css-1.0.1.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-csv-1.0.1.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-edi-1.0.1.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-javabean-1.0.1.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-misc-1.0.1.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-routing-1.0.1.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-scripting-1.0.1.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-servlet-1.0.1.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-templating-1.0.1.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/mvel-1.3.3-java1.5.jar
   labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/
   labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/FragmentRouter.java
   labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/SmooksAction.java
   labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/splitting/
   labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/splitting/AbstractStreamSplitter.java
   labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/splitting/FileStreamSplitter.java
   labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/
   labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/SmooksActionUnitTest.java
   labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/SourceResultUnitTest.java
   labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/jbossesb-properties.xml
   labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/
   labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/Person1.java
   labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/Person2.java
   labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/person.xml
   labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/smooks-config.xml
   labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/source-result-esb.xml
   labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/source-result-smooks-01.xml
   labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/source-result-smooks-02.xml
Removed:
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-core-1.0.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-css-1.0.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-csv-1.0.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-edi-1.0.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-javabean-1.0.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-misc-1.0.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-routing-1.0.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-scripting-1.0.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-servlet-1.0.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-templating-1.0.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/mvel-1.2.24-java1.5.jar
   labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/
   labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/Person1.java
   labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/Person2.java
   labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/person.xml
Modified:
   labs/jbossesb/trunk/product/docs/ProgrammersGuide.odt
   labs/jbossesb/trunk/product/install/conf/actionArtifactMap.properties
   labs/jbossesb/trunk/product/samples/quickstarts/smooks_file_splitter_router/jboss-esb-unfiltered.xml
   labs/jbossesb/trunk/product/samples/quickstarts/smooks_file_splitter_router/jboss-esb.xml
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-commons-1.0.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-edisax-0.3.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-edisax-model-0.3.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-magger-0.1.3.jar
   labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-tinak-0.8.1.jar
   labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/converters/SmooksInstanceManager.java
   labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/converters/SmooksTransformer.java
   labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/smooks/SmooksAction.java
   labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/visitors/DOMServiceDelegateVisitor.java
   labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/visitors/ServiceDelegator.java
   labs/jbossesb/trunk/product/services/soap/src/test/java/org/jboss/soa/esb/actions/soap/test-in.wsdl
   labs/jbossesb/trunk/product/services/soap/src/test/java/org/jboss/soa/esb/actions/soap/test-out-expected-http-rewrite.wsdl
   labs/jbossesb/trunk/product/services/soap/src/test/java/org/jboss/soa/esb/actions/soap/test-out-expected.wsdl
Log:
http://jira.jboss.com/jira/browse/JBESB-1800

Modified: labs/jbossesb/trunk/product/docs/ProgrammersGuide.odt
===================================================================
(Binary files differ)

Modified: labs/jbossesb/trunk/product/install/conf/actionArtifactMap.properties
===================================================================
--- labs/jbossesb/trunk/product/install/conf/actionArtifactMap.properties	2008-06-18 10:07:55 UTC (rev 20576)
+++ labs/jbossesb/trunk/product/install/conf/actionArtifactMap.properties	2008-06-18 10:11:56 UTC (rev 20577)
@@ -47,6 +47,7 @@
 # smooks.esb actions
 org.jboss.soa.esb.actions.converters.SmooksTransformer=smooks.esb
 org.jboss.soa.esb.actions.smooks.SmooksAction=smooks.esb
+org.jboss.soa.esb.smooks.SmooksAction=smooks.esb
 
 # management.esb actions
 org.jboss.soa.esb.monitoring.server.DataFilerAction=management.esb

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/jbossesb.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/jbossesb.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/jbossesb.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,45 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd">
+
+    <providers>
+        <fs-provider name="FSprovider1">
+            <fs-bus busid="ediFileMessageBus">
+                <fs-message-filter
+                        directory="build"
+                        input-suffix=".edi"
+                        work-suffix=".esbWorking"
+                        post-delete="false"  post-directory="build"  post-suffix=".sentToEsb"
+                        error-delete="false" error-directory="build" error-suffix=".IN_ERROR" />
+            </fs-bus>
+        </fs-provider>
+    </providers>
+
+    <services>
+
+    <service category="HugeQS" name="SplitterService" description="Splits out the order items and routes them.">
+        <listeners>
+            <fs-listener name="FileGateway" busidref="ediFileMessageBus" is-gateway="true" poll-frequency-seconds="2">
+                <property name="composer-class" value="org.jboss.soa.esb.smooks.splitting.FileStreamSplitter"/>
+                <property name="splitterConfig" value="/smooks_configs/main.xml"/>
+                <!-- property name="reportPath" value="/zap/report.html"/ -->
+             </fs-listener>
+        </listeners>
+        <actions mep="OneWay">
+            <action name="print" class="org.jboss.soa.esb.example.PrintMessage">
+                <property name="delay" value="500" />
+            </action>
+        </actions>
+    </service>
+
+    <service category="HugeQS" name="04_Reptiles_notify_webservice_proxy" description="Routes the SOAP requests to the 'Reptiles Notification' Webservice">
+        <actions mep="OneWay">
+            <action name="httprouter" class="org.jboss.soa.esb.actions.routing.http.HttpRouter">
+                <property name="endpointUrl" value="http://127.0.0.1:8080/Quickstart_Huge_Enrich_Split_Transform_Route/ReptilesNotifyWS" />
+                <property name="method" value="POST" />
+                <property name="responseType" value="STRING" />
+            </action>
+        </actions>
+    </service>
+
+    </services>
+</jbossesb>


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/jbossesb.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/log4j.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/log4j.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/log4j.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
+
+<!-- ===================================================================== -->
+<!--                                                                       -->
+<!--  Log4j Configuration                                                  -->
+<!--                                                                       -->
+<!-- ===================================================================== -->
+
+<!-- $Id: log4j.xml,v 1.26.2.5 2005/09/15 09:31:02 dimitris Exp $ -->
+
+<!--
+   | For more configuration infromation and examples see the Jakarta Log4j
+   | owebsite: http://jakarta.apache.org/log4j
+ -->
+
+<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
+
+   <!-- ============================== -->
+   <!-- Append messages to the console -->
+   <!-- ============================== -->
+
+   <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
+      <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+      <param name="Target" value="System.out"/>
+
+      <layout class="org.apache.log4j.PatternLayout">
+         <!-- The default pattern: Date Priority [Category] Message\n -->
+         <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%c{1}] %m%n"/>
+      </layout>
+   </appender>
+
+
+   <!-- ================================= -->
+   <!-- Preserve messages in a local file -->
+   <!-- ================================= -->
+
+   <!-- A size based file rolling appender -->
+   <appender name="FILE" class="org.jboss.logging.appender.RollingFileAppender">
+     <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+     <param name="File" value="./listener.log"/>
+     <param name="Append" value="false"/>
+     <param name="MaxFileSize" value="500KB"/>
+     <param name="MaxBackupIndex" value="1"/>
+
+     <layout class="org.apache.log4j.PatternLayout">
+       <param name="ConversionPattern" value="%d %-5p [%t][%c] %m%n"/>
+     </layout>	    
+   </appender>
+
+   <!-- ================ -->
+   <!-- Limit categories -->
+   <!-- ================ -->
+
+    <category name="smooks">
+       <priority value="INFO"/>
+    </category>
+    <category name="org">
+       <priority value="INFO"/>
+    </category>
+   <category name="org.jboss">
+      <priority value="WARN"/>
+   </category>
+   <category name="org.jboss.soa.esb">
+      <priority value="INFO"/>
+   </category>
+   <category name="org.jboss.internal.soa.esb">
+      <priority value="ERROR"/>
+   </category>
+   <category name="org.apache">
+      <priority value="ERROR"/>
+   </category>
+    <category name="httpclient.wire">
+       <priority value="ERROR"/>
+    </category>
+   <category name="org.milyn">
+      <priority value="ERROR"/>
+   </category>
+
+    <category name="org.milyn.javabean.expression.BeanMapExpressionEvaluator">
+       <priority value="ERROR"/>
+    </category>
+
+    <category name="org.milyn.edisax.BufferedSegmentReader">
+       <priority value="DEBUG"/>
+    </category>
+
+   <category name="quickstarts">
+      <priority value="ERROR"/>
+   </category>
+   
+   <!-- ======================= -->
+   <!-- Setup the Root category -->
+   <!-- ======================= -->
+
+   <root>
+      <appender-ref ref="CONSOLE"/>
+      <appender-ref ref="FILE"/>
+   </root>
+
+</log4j:configuration>


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/log4j.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/bindings.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/bindings.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/bindings.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,49 @@
+<?xml version="1.0"?>
+<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd">
+
+    <!--
+        Virtual Model Binding Configurations for the order message elements...
+
+        Just capturing the order and order-item element details into 2
+        Maps, overwriting each order-item as we iterate through the message i.e. not
+        accumulating them in memory => low memory footprint because we only
+        have details of the current order + current order-item in memory
+        at any given time (i.e. we never have a full order in memory)...
+    -->
+
+    <!--
+        Bind the main order details....
+    -->
+    <resource-config selector="order">
+        <resource>org.milyn.javabean.BeanPopulator</resource>
+        <param name="beanId">orderDetail</param>
+        <param name="beanClass">java.util.HashMap</param>
+        <param name="bindings">
+            <binding property="orderNum" selector="header/order-id"     type="Long" />
+            <binding property="uname"    selector="customer-details/username" />
+            <binding property="date"     selector="header/date"         type="OrderDateDecoder" /> <!-- Type defined below -->
+        </param>
+    </resource-config>
+
+    <!--
+        Bind each order-item.  Not building a list of order items because we only want to have
+        one order-item in memory at any one time.  This way, we can handle a huge orders with many
+        many order items..
+    -->
+    <resource-config selector="order-item">
+        <resource>org.milyn.javabean.BeanPopulator</resource>
+        <param name="beanId">orderItem</param>
+        <param name="beanClass">java.util.HashMap</param>
+        <param name="bindings">
+            <binding property="position"  selector="order-item/position" type="Integer" />
+            <binding property="quantity"  selector="order-item/quantity" type="Integer" />
+            <binding property="productId" selector="order-item/product-id" />
+        </param>
+    </resource-config>
+
+    <resource-config selector="decoder:OrderDateDecoder">
+        <resource>org.milyn.javabean.decoders.DateDecoder</resource>
+        <param name="format">EEE MMM dd HH:mm:ss z yyyy</param>
+    </resource-config>
+
+</smooks-resource-list>
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/bindings.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/database/datasources.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/database/datasources.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/database/datasources.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,14 @@
+<?xml version="1.0"?>
+<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd">
+
+    <resource-config selector="$document">
+        <resource>org.milyn.db.DirectDataSource</resource>
+        <param name="datasource">OrderManagement</param>
+        <param name="driver">org.hsqldb.jdbcDriver</param>
+        <param name="url">jdbc:hsqldb:hsql://localhost:9002</param>
+        <param name="username">sa</param>
+        <param name="password"></param>
+        <param name="autoCommit">false</param>
+    </resource-config>
+
+</smooks-resource-list>
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/database/datasources.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/database/ref-data.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/database/ref-data.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/database/ref-data.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd">
+
+    <!--                                
+        At the start of the message, select the list of products and bind it into the bean context
+        under the beanId of "products".  We only want to do this lookup once Smooks instance i.e. not for
+        every message, otherwise we'd kill memory performance.  To control this, we set the "resultSetScope"
+        param to "APPLICATION".  The actual order item product row will be selected from the resultset by
+        the ResultsetRowSelector config (below)...
+    -->
+    <resource-config selector="$document">
+        <resource>org.milyn.routing.db.SQLExecutor</resource>
+        <param name="datasource">OrderManagement</param>
+        <param name="executeBefore">true</param>
+        <param name="statement">select productid, name, attr1, listprice, category from product p, item i where p.productid = i.productid</param>
+        <param name="resultSetName">products</param>
+        <param name="resultSetScope">APPLICATION</param>
+    </resource-config>
+
+    <!--
+        For every order-item, select the appropriate product row from the in-mem "products" reference data
+        resultset, using the ResultsetRowSelector. Bind the selected product row back into the
+        bean context under a beanId of "product"...
+    -->
+    <resource-config selector="order-item/product-id">
+        <resource>org.milyn.routing.db.ResultsetRowSelector</resource>
+        <param name="executeBefore">false</param>
+        <param name="resultSetName">products</param>
+        <param name="beanId">product</param>
+        <param name="where">row.PRODUCTID == orderItem.productId</param>
+        <param name="failedSelectError">Unknown Order Item product ID '${orderItem.productId}' on order '${orderDetail.orderNum?c}'.</param>
+    </resource-config>
+
+    <!--
+        At the end of the customer-details/username, select the user account and bind it into the bean context
+        under the beanId of "accounts".  The users account should be the only entry in this list....
+    -->
+    <resource-config selector="customer-details">
+        <resource>org.milyn.routing.db.SQLExecutor</resource>
+        <param name="datasource">OrderManagement</param>
+        <param name="statement">select * from ACCOUNT where userid = ${orderDetail.uname}</param>
+        <param name="resultSetName">accounts</param>
+    </resource-config>
+
+</smooks-resource-list>
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/database/ref-data.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/main.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/main.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/main.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,36 @@
+<?xml version="1.0"?>
+<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd">
+
+    <!--
+    Filter the message using the SAX Filter (i.e. not DOM, so no
+    intermediate DOM, so we can process huge messages...
+    -->
+    <resource-config selector="global-parameters">
+        <param name="stream.filter.type">SAX</param>
+    </resource-config>
+
+    <!-- Import config for parsing this EDI message... -->
+    <import file="parse/edi-orders-parser.xml" />
+
+    <!-- Import datasource configs... -->
+    <import file="database/datasources.xml" />
+
+    <!-- Import reference/enrichment data configs - products, accounts etc... -->
+    <import file="database/ref-data.xml" />
+
+    <!-- Import config for binding order and order-item data into memory... -->
+    <import file="bindings.xml" />
+
+    <!-- Import config for routing order item XML to the "02_Low_Price" Service... -->
+    <import file="routing/route-to-02_Low_Price_Service.xml" />
+
+    <!-- Import config for routing order item Java Objects to the "03_High_Price" Service... -->
+    <import file="routing/route-to-03_High_Price_Service.xml" />
+
+    <!-- Import config for routing order item Java Objects to the "04_Reptiles_notify_webservice_proxy" Service... -->
+    <import file="routing/route-to-04_Reptiles_notify_webservice_proxy.xml" />
+
+    <!-- Import config for routing order items to the database... -->
+    <import file="routing/route-to-05_Database.xml" />
+
+</smooks-resource-list>
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/main.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/parse/edi-orders-parser.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/parse/edi-orders-parser.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/parse/edi-orders-parser.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd">
+
+    <!--
+    Configure the EDI Parser to parse the message stream into a stream of SAX events.
+    -->
+    <resource-config selector="org.xml.sax.driver">
+        <resource>org.milyn.smooks.edi.SmooksEDIParser</resource>
+        <param name="mapping-model">/smooks_configs/parse/edi-to-xml-order-mapping.xml</param>
+    </resource-config>
+
+</smooks-resource-list>
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/parse/edi-orders-parser.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/parse/edi-to-xml-order-mapping.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/parse/edi-to-xml-order-mapping.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/parse/edi-to-xml-order-mapping.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<medi:edimap xmlns:medi="http://www.milyn.org/schema/edi-message-mapping-1.0.xsd">
+
+	<medi:description name="DVD Order" version="1.0" />
+
+	<medi:delimiters segment="&#10;" field="*" component="^" sub-component="~" />
+
+	<medi:segments xmltag="Order">
+
+		<medi:segment segcode="HDR" xmltag="header">
+			<medi:field xmltag="order-id" />
+			<medi:field xmltag="status-code" />
+			<medi:field xmltag="date" />
+		</medi:segment>
+
+		<medi:segment segcode="CUS" xmltag="customer-details">
+			<medi:field xmltag="username" />
+		</medi:segment>
+
+		<medi:segment segcode="ORD" xmltag="order-item" maxOccurs="-1">
+			<medi:field xmltag="position" />
+			<medi:field xmltag="quantity" />
+			<medi:field xmltag="product-id" />
+		</medi:segment>
+
+	</medi:segments>
+	
+</medi:edimap>
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/parse/edi-to-xml-order-mapping.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-02_Low_Price_Service.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-02_Low_Price_Service.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-02_Low_Price_Service.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,43 @@
+<?xml version="1.0"?>
+<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd">
+
+    <!--
+        At the end of every order-item, route the order item XML ("02_XML_OrderItem") to the
+        "02_Low_Price" Service, if the total is 20 or less...
+    -->
+    <resource-config selector="order-item">
+        <resource>org.jboss.soa.esb.smooks.FragmentRouter</resource>
+        <condition>
+            <!--
+            product.LISTPRICE * orderItem.quantity <= 17.00
+            -->
+        </condition>
+        <param name="beanId">02_XML_OrderItem</param> <!-- Populated and bound below... -->
+        <param name="serviceCategory">HugeQS</param>
+        <param name="serviceName">02_Low_Price</param>
+    </resource-config>
+    
+    <!--
+        At the end of every order-item, generate an <ord> split message for the "02_XML" Service
+        and bind it back into the bean context under a bean ID of "02_XML_OrderItem"...
+     -->
+    <resource-config selector="order-item">
+        <resource type="ftl"><!--<ord id="${orderDetail.orderNum?c}" date="${orderDetail.date?string("yyyy-MM-dd")}">
+    <customer>
+        <name>${accounts[0].LASTNAME}, ${accounts[0].FIRSTNAME}</name>
+        <addr1>${accounts[0].ADDR1}</addr1>
+        <addr2>${accounts[0].ADDR2}</addr2>
+        <city>${accounts[0].CITY}</city>
+        <state>${accounts[0].STATE}</state>
+        <zip>${accounts[0].ZIP}</zip>
+    </customer>
+    <productid>${orderItem.productId}</productid>
+    <quantity>${orderItem.quantity?c}</quantity>
+    <price>${product.LISTPRICE?c}</price>
+    <title>${product.NAME} (${product.ATTR1})</title>
+</ord>--></resource>
+        <param name="action">bindto</param>
+        <param name="bindId">02_XML_OrderItem</param>
+    </resource-config>
+
+</smooks-resource-list>
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-02_Low_Price_Service.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-03_High_Price_Service.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-03_High_Price_Service.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-03_High_Price_Service.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,64 @@
+<?xml version="1.0"?>
+<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd">
+
+    <!--
+        At the end of every order-item, route the order item Java Objects ("03_order") to the
+        "03_High_Price" Service, if the price per item is 190 or more...
+    -->
+    <resource-config selector="order-item">
+        <resource>org.jboss.soa.esb.smooks.FragmentRouter</resource>
+        <condition>
+            <!--
+            product.LISTPRICE > 190.00
+            -->
+        </condition>
+        <param name="beanId">03_order</param>
+        <param name="serviceCategory">HugeQS</param>
+        <param name="serviceName">03_High_Price</param>
+    </resource-config>
+    
+    <!--
+        At the end of every order-item, bind together the orderDetail with the current
+        order item in a new HashMap and asign it under the beanId "03_order" in the bean
+        context.  03_order gets routed by the above config..
+    -->
+    <resource-config selector="order-item">
+        <resource>org.milyn.javabean.BeanPopulator</resource>
+        <param name="beanId">03_order</param>
+        <param name="beanClass">org.jboss.soa.esb.example.highprice.Order</param>
+        <param name="bindings">
+            <binding property="firstName">accounts[0].FIRSTNAME</binding>
+            <binding property="lastName">accounts[0].LASTNAME</binding>
+            <binding property="address" selector="${03_address}" />
+            <binding property="date">orderDetail.date</binding>
+            <binding property="product" selector="${03_product}" />
+            <binding property="quantity">orderItem.quantity</binding>
+        </param>
+    </resource-config>
+
+    <resource-config selector="order-item">
+        <resource>org.milyn.javabean.BeanPopulator</resource>
+        <param name="beanId">03_address</param>
+        <param name="beanClass">org.jboss.soa.esb.example.highprice.Address</param>
+        <param name="bindings">
+            <binding property="email">accounts[0].EMAIL</binding>
+            <binding property="address1">accounts[0].ADDR1</binding>
+            <binding property="address2">accounts[0].ADDR2</binding>
+            <binding property="city">accounts[0].CITY</binding>
+            <binding property="state">accounts[0].STATE</binding>
+        </param>
+    </resource-config>
+
+    <resource-config selector="order-item">
+        <resource>org.milyn.javabean.BeanPopulator</resource>
+        <param name="beanId">03_product</param>
+        <param name="beanClass">org.jboss.soa.esb.example.highprice.Product</param>
+        <param name="bindings">
+            <binding property="id">product.PRODUCTID</binding>
+            <binding property="title">product.NAME</binding>
+            <binding property="category">product.CATEGORY</binding>
+            <binding property="price">product.LISTPRICE</binding>
+        </param>
+    </resource-config>
+
+</smooks-resource-list>
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-03_High_Price_Service.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-04_Reptiles_notify_webservice_proxy.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-04_Reptiles_notify_webservice_proxy.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-04_Reptiles_notify_webservice_proxy.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,45 @@
+<?xml version="1.0"?>
+<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd">
+
+    <!--
+        At the end of every order-item, route the "Reptiles Notification" SOAP message ("04_SOAP_OrderItem") to the
+        "04_Reptiles_notify_webservice_proxy" Service, if the order item product.CATEGORY is "REPTILES"...
+    -->
+    <resource-config selector="order-item">
+        <resource>org.jboss.soa.esb.smooks.FragmentRouter</resource>
+        <condition>
+            <!--
+            product.CATEGORY == "REPTILES"
+            -->
+        </condition>
+        <param name="beanId">04_SOAP_OrderItem</param>
+        <param name="serviceCategory">HugeQS</param>
+        <param name="serviceName">04_Reptiles_notify_webservice_proxy</param>
+    </resource-config>
+    
+    <!--
+        At the end of every order-item, generate an <ord> split message for the "02_XML" Service
+        and bind it back into the bean context under a bean ID of "02_XML_OrderItem"...
+     -->
+    <resource-config selector="order-item">
+        <resource type="ftl"><!--<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ord="http://ordermanagement/ReptilesNotifyWS">
+   <soapenv:Header/>
+   <soapenv:Body>
+      <ord:notify>
+         <notification>
+            <date>${orderDetail.date?string("yyyy-MM-dd'T'HH:mm:ss")}</date>
+            <email>${accounts[0].EMAIL}</email>
+            <firstName>${accounts[0].FIRSTNAME}</firstName>
+            <lastName>${accounts[0].LASTNAME}</lastName>
+            <product>${product.NAME} (${product.ATTR1})</product>
+            <quantity>${orderItem.quantity}</quantity>
+            <totalPrice>${product.LISTPRICE?c}</totalPrice>
+         </notification>
+      </ord:notify>
+   </soapenv:Body>
+</soapenv:Envelope>--></resource>
+        <param name="action">bindto</param>
+        <param name="bindId">04_SOAP_OrderItem</param>
+    </resource-config>
+
+</smooks-resource-list>
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-04_Reptiles_notify_webservice_proxy.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-05_Database.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-05_Database.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-05_Database.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,31 @@
+<?xml version="1.0"?>
+<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd">
+
+    <!--
+        This resource is needed because we only want to limit the number or orders inserted into the database,
+        so we need to count them...
+    -->
+    <resource-config selector="order-item">
+        <resource>org.milyn.routing.db.SQLExecutor</resource>
+        <param name="executeBefore">true</param>
+        <param name="datasource">OrderManagement</param>
+        <param name="statement">select count(*) as "numOrders" from orders</param>
+        <param name="resultSetName">orderCountRS</param>
+    </resource-config>
+    
+    <!--
+        At the end of every order-item, insert the order details for that order item...
+     -->
+    <resource-config selector="order-item">
+        <resource>org.milyn.routing.db.SQLExecutor</resource>
+        <condition>
+            <!--
+            orderCountRS[0].numOrders < 10
+            -->
+        </condition>
+        <param name="executeBefore">false</param>
+        <param name="datasource">OrderManagement</param>
+        <param name="statement">INSERT INTO ORDERS VALUES(${orderDetail.orderNum + "-" + product.PRODUCTID}, ${accounts[0].USERID}, ${orderDetail.date}, ${accounts[0].ADDR1}, ${accounts[0].ADDR2}, ${accounts[0].CITY}, ${accounts[0].STATE},'30253','USA', ${accounts[0].ADDR1}, ${accounts[0].ADDR2}, ${accounts[0].CITY}, ${accounts[0].STATE},'30253','USA','UPS',22.23, ${accounts[0].FIRSTNAME}, ${accounts[0].LASTNAME}, ${accounts[0].FIRSTNAME}, ${accounts[0].LASTNAME},'999 9999 9999 9999','12/03','Visa','CA')</param>
+    </resource-config>
+
+</smooks-resource-list>
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/01_split_enrich_transform_route/smooks_configs/routing/route-to-05_Database.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/02_Low_Price/jbossesb.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/02_Low_Price/jbossesb.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/02_Low_Price/jbossesb.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,23 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd">
+
+    <providers>
+        <jms-provider name="JBossMQ" connection-factory="ConnectionFactory"
+                      jndi-context-factory="org.jnp.interfaces.NamingContextFactory"
+                      jndi-URL="localhost">
+            <jms-bus busid="02XMLBus">
+                <jms-message-filter dest-type="QUEUE" dest-name="queue/quickstart_HugeSplitTransRoute_02_XML"/>
+            </jms-bus>
+        </jms-provider>
+    </providers>
+    <services>
+        <service category="HugeQS" name="02_Low_Price" description="02_Low_Price Service">
+            <listeners>
+                <jms-listener name="XMLjms" busidref="02XMLBus" />
+            </listeners>
+            <actions mep="OneWay">
+                <action name="print" class="org.jboss.soa.esb.example.PrintMessage" />
+            </actions>
+        </service>
+    </services>
+</jbossesb>


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/02_Low_Price/jbossesb.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/02_Low_Price/log4j.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/02_Low_Price/log4j.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/02_Low_Price/log4j.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
+
+<!-- ===================================================================== -->
+<!--                                                                       -->
+<!--  Log4j Configuration                                                  -->
+<!--                                                                       -->
+<!-- ===================================================================== -->
+
+<!-- $Id: log4j.xml,v 1.26.2.5 2005/09/15 09:31:02 dimitris Exp $ -->
+
+<!--
+   | For more configuration infromation and examples see the Jakarta Log4j
+   | owebsite: http://jakarta.apache.org/log4j
+ -->
+
+<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
+
+   <!-- ============================== -->
+   <!-- Append messages to the console -->
+   <!-- ============================== -->
+
+   <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
+      <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+      <param name="Target" value="System.out"/>
+
+      <layout class="org.apache.log4j.PatternLayout">
+         <!-- The default pattern: Date Priority [Category] Message\n -->
+         <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%t][%c{1}] %m%n"/>
+      </layout>
+   </appender>
+
+
+   <!-- ================================= -->
+   <!-- Preserve messages in a local file -->
+   <!-- ================================= -->
+
+   <!-- A size based file rolling appender -->
+   <appender name="FILE" class="org.jboss.logging.appender.RollingFileAppender">
+     <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+     <param name="File" value="./listener.log"/>
+     <param name="Append" value="false"/>
+     <param name="MaxFileSize" value="500KB"/>
+     <param name="MaxBackupIndex" value="1"/>
+
+     <layout class="org.apache.log4j.PatternLayout">
+       <param name="ConversionPattern" value="%d %-5p [%t][%c] %m%n"/>
+     </layout>	    
+   </appender>
+
+   <!-- ================ -->
+   <!-- Limit categories -->
+   <!-- ================ -->
+
+   <category name="org.jboss">
+      <priority value="WARN"/>
+   </category>
+   <category name="org.jboss.soa.esb">
+      <priority value="ERROR"/>
+   </category>
+   <category name="org.jboss.internal.soa.esb">
+      <priority value="ERROR"/>
+   </category>
+   <category name="org.apache">
+      <priority value="ERROR"/>
+   </category>
+   <category name="org.milyn">
+      <priority value="ERROR"/>
+   </category>
+
+   <category name="quickstarts">
+      <priority value="ERROR"/>
+   </category>
+   
+   <!-- ======================= -->
+   <!-- Setup the Root category -->
+   <!-- ======================= -->
+
+   <root>
+      <appender-ref ref="CONSOLE"/>
+      <appender-ref ref="FILE"/>
+   </root>
+
+</log4j:configuration>


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/02_Low_Price/log4j.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/jbossesb.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/jbossesb.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/jbossesb.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,23 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd">
+
+    <providers>
+        <jms-provider name="JBossMQ" connection-factory="ConnectionFactory"
+                      jndi-context-factory="org.jnp.interfaces.NamingContextFactory"
+                      jndi-URL="localhost">
+            <jms-bus busid="03JavaObjectsBus">
+                <jms-message-filter dest-type="QUEUE" dest-name="queue/quickstart_HugeSplitTransRoute_JavaObjects"/>
+            </jms-bus>
+        </jms-provider>
+    </providers>
+    <services>
+        <service category="HugeQS" name="03_High_Price" description="03_High_Price Service">
+            <listeners>
+                <jms-listener name="JavaObjectsJms" busidref="03JavaObjectsBus" />
+            </listeners>
+            <actions mep="OneWay">
+                <action name="print" class="org.jboss.soa.esb.example.PrintMessage" />
+            </actions>
+        </service>
+    </services>
+</jbossesb>


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/jbossesb.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/log4j.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/log4j.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/log4j.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
+
+<!-- ===================================================================== -->
+<!--                                                                       -->
+<!--  Log4j Configuration                                                  -->
+<!--                                                                       -->
+<!-- ===================================================================== -->
+
+<!-- $Id: log4j.xml,v 1.26.2.5 2005/09/15 09:31:02 dimitris Exp $ -->
+
+<!--
+   | For more configuration infromation and examples see the Jakarta Log4j
+   | owebsite: http://jakarta.apache.org/log4j
+ -->
+
+<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
+
+   <!-- ============================== -->
+   <!-- Append messages to the console -->
+   <!-- ============================== -->
+
+   <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
+      <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+      <param name="Target" value="System.out"/>
+
+      <layout class="org.apache.log4j.PatternLayout">
+         <!-- The default pattern: Date Priority [Category] Message\n -->
+         <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%t][%c{1}] %m%n"/>
+      </layout>
+   </appender>
+
+
+   <!-- ================================= -->
+   <!-- Preserve messages in a local file -->
+   <!-- ================================= -->
+
+   <!-- A size based file rolling appender -->
+   <appender name="FILE" class="org.jboss.logging.appender.RollingFileAppender">
+     <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+     <param name="File" value="./listener.log"/>
+     <param name="Append" value="false"/>
+     <param name="MaxFileSize" value="500KB"/>
+     <param name="MaxBackupIndex" value="1"/>
+
+     <layout class="org.apache.log4j.PatternLayout">
+       <param name="ConversionPattern" value="%d %-5p [%t][%c] %m%n"/>
+     </layout>	    
+   </appender>
+
+   <!-- ================ -->
+   <!-- Limit categories -->
+   <!-- ================ -->
+
+   <category name="org.jboss">
+      <priority value="WARN"/>
+   </category>
+   <category name="org.jboss.soa.esb">
+      <priority value="ERROR"/>
+   </category>
+   <category name="org.jboss.internal.soa.esb">
+      <priority value="ERROR"/>
+   </category>
+   <category name="org.apache">
+      <priority value="ERROR"/>
+   </category>
+   <category name="org.milyn">
+      <priority value="ERROR"/>
+   </category>
+
+   <category name="quickstarts">
+      <priority value="ERROR"/>
+   </category>
+   
+   <!-- ======================= -->
+   <!-- Setup the Root category -->
+   <!-- ======================= -->
+
+   <root>
+      <appender-ref ref="CONSOLE"/>
+      <appender-ref ref="FILE"/>
+   </root>
+
+</log4j:configuration>


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/log4j.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/soa/esb/example/highprice/Address.java
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/soa/esb/example/highprice/Address.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/soa/esb/example/highprice/Address.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,78 @@
+/*
+	Milyn - Copyright (C) 2006
+
+	This library is free software; you can redistribute it and/or
+	modify it under the terms of the GNU Lesser General Public
+	License (version 2.1) as published by the Free Software
+	Foundation.
+
+	This library is distributed in the hope that it will be useful,
+	but WITHOUT ANY WARRANTY; without even the implied warranty of
+	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+	See the GNU Lesser General Public License for more details:
+	http://www.gnu.org/licenses/lgpl.txt
+*/
+package org.jboss.soa.esb.example.highprice;
+
+import java.io.Serializable;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class Address implements Serializable {
+    private String email;
+    private String address1;
+    private String address2;
+    private String address3;
+    private String city;
+    private String state;
+
+    public String getEmail() {
+        return email;
+    }
+
+    public void setEmail(String email) {
+        this.email = email;
+    }
+
+    public String getAddress1() {
+        return address1;
+    }
+
+    public void setAddress1(String address1) {
+        this.address1 = address1;
+    }
+
+    public String getAddress2() {
+        return address2;
+    }
+
+    public void setAddress2(String address2) {
+        this.address2 = address2;
+    }
+
+    public String getAddress3() {
+        return address3;
+    }
+
+    public void setAddress3(String address3) {
+        this.address3 = address3;
+    }
+
+    public String getCity() {
+        return city;
+    }
+
+    public void setCity(String city) {
+        this.city = city;
+    }
+
+    public String getState() {
+        return state;
+    }
+
+    public void setState(String state) {
+        this.state = state;
+    }
+}


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/soa/esb/example/highprice/Address.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/soa/esb/example/highprice/Order.java
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/soa/esb/example/highprice/Order.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/soa/esb/example/highprice/Order.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,96 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.example.highprice;
+
+import java.beans.XMLEncoder;
+import java.io.Serializable;
+import java.io.ByteArrayOutputStream;
+import java.util.Date;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class Order implements Serializable {
+
+    private String firstName;
+    private String lastName;
+    private Address address;
+    private Date date;
+    private Product product;
+    private int quantity;
+
+    public String getFirstName() {
+        return firstName;
+    }
+
+    public void setFirstName(String firstName) {
+        this.firstName = firstName;
+    }
+
+    public String getLastName() {
+        return lastName;
+    }
+
+    public void setLastName(String lastName) {
+        this.lastName = lastName;
+    }
+
+    public Address getAddress() {
+        return address;
+    }
+
+    public void setAddress(Address address) {
+        this.address = address;
+    }
+
+    public Date getDate() {
+        return date;
+    }
+
+    public void setDate(Date date) {
+        this.date = date;
+    }
+
+    public Product getProduct() {
+        return product;
+    }
+
+    public void setProduct(Product product) {
+        this.product = product;
+    }
+
+    public int getQuantity() {
+        return quantity;
+    }
+
+    public void setQuantity(int quantity) {
+        this.quantity = quantity;
+    }
+
+    public String toString() {
+        ByteArrayOutputStream stream = new ByteArrayOutputStream();
+        XMLEncoder encoder = new XMLEncoder(stream);
+
+        encoder.writeObject(this);
+        encoder.close();
+
+        return stream.toString();
+    }
+}


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/soa/esb/example/highprice/Order.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/soa/esb/example/highprice/Product.java
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/soa/esb/example/highprice/Product.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/soa/esb/example/highprice/Product.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,65 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.example.highprice;
+
+import java.io.Serializable;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class Product implements Serializable {
+
+    private String id;
+    private String title;
+    private String category;
+    private float price;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getTitle() {
+        return title;
+    }
+
+    public void setTitle(String title) {
+        this.title = title;
+    }
+
+    public String getCategory() {
+        return category;
+    }
+
+    public void setCategory(String category) {
+        this.category = category;
+    }
+
+    public float getPrice() {
+        return price;
+    }
+
+    public void setPrice(float price) {
+        this.price = price;
+    }
+}


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/03_High_Price/src/org/jboss/soa/esb/example/highprice/Product.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/src/org/jboss/esb/ordwebservice/Notification.java
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/src/org/jboss/esb/ordwebservice/Notification.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/src/org/jboss/esb/ordwebservice/Notification.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,108 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.esb.ordwebservice;
+
+import java.util.Date;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class Notification {
+
+    private String firstName;
+    private String lastName;
+    private String email;
+    private Date date;
+    private String product;
+    private int quantity;
+    private double totalPrice;
+
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+
+        sb.append("public class Notification {\n");
+        sb.append("\tjava.lang.String firstName = " + firstName + "\n");
+        sb.append("\tjava.lang.String lastName = " + lastName + "\n");
+        sb.append("\tjava.lang.String email = " + email + "\n");
+        sb.append("\tjava.util.Date date = " + date + "\n");
+        sb.append("\tjava.lang.String product = " + product + "\n");
+        sb.append("\tint quantity = " + quantity + "\n");
+        sb.append("\tdouble totalPrice = " + totalPrice + "\n");
+        sb.append("}");
+
+        return sb.toString();
+    }
+
+    public String getFirstName() {
+        return firstName;
+    }
+
+    public void setFirstName(String firstName) {
+        this.firstName = firstName;
+    }
+
+    public String getLastName() {
+        return lastName;
+    }
+
+    public void setLastName(String lastName) {
+        this.lastName = lastName;
+    }
+
+    public String getEmail() {
+        return email;
+    }
+
+    public void setEmail(String email) {
+        this.email = email;
+    }
+
+    public Date getDate() {
+        return date;
+    }
+
+    public void setDate(Date date) {
+        this.date = date;
+    }
+
+    public String getProduct() {
+        return product;
+    }
+
+    public void setProduct(String product) {
+        this.product = product;
+    }
+
+    public int getQuantity() {
+        return quantity;
+    }
+
+    public void setQuantity(int quantity) {
+        this.quantity = quantity;
+    }
+
+    public double getTotalPrice() {
+        return totalPrice;
+    }
+
+    public void setTotalPrice(double totalPrice) {
+        this.totalPrice = totalPrice;
+    }
+}


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/src/org/jboss/esb/ordwebservice/Notification.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/src/org/jboss/esb/ordwebservice/ReptilesNotifyWS.java
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/src/org/jboss/esb/ordwebservice/ReptilesNotifyWS.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/src/org/jboss/esb/ordwebservice/ReptilesNotifyWS.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,36 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.esb.ordwebservice;
+
+import javax.jws.WebService;
+import javax.jws.WebMethod;
+import javax.jws.WebParam;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+ at WebService(name = "ReptilesNotifyWS", targetNamespace="http://ordermanagement/ReptilesNotifyWS")
+public class ReptilesNotifyWS {
+
+    @WebMethod
+    public void notify(@WebParam(name="notification") Notification notification) {
+        System.out.println("Reptile SOAP Notification Received.  Unmarshaled SOAP Notification object:\n" + notification);
+    }
+}


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/src/org/jboss/esb/ordwebservice/ReptilesNotifyWS.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/web.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/web.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/web.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+
+<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
+         version="2.4">
+
+    <servlet>
+        <servlet-name>ReptilesNotifyWS</servlet-name>
+        <servlet-class>org.jboss.esb.ordwebservice.ReptilesNotifyWS</servlet-class>
+    </servlet>
+
+    <servlet-mapping>
+        <servlet-name>ReptilesNotifyWS</servlet-name>
+        <url-pattern>/ReptilesNotifyWS</url-pattern>
+    </servlet-mapping>
+
+</web-app>


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/WEB-INF/web.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/index.jsp
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/index.jsp	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/04_Reptiles_notify_webservice/index.jsp	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,9 @@
+<html>
+	<body>
+		This is just a place holder.<br>
+		Verify the that the WS has been deployed by hitting 
+			<a href="http://localhost:8080/jbossws">
+				http://localhost:8080/jbossws
+			</a>
+  </body>
+</html>	
\ No newline at end of file

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db-hsqldb-dataload.sql
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db-hsqldb-dataload.sql	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db-hsqldb-dataload.sql	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,101 @@
+INSERT INTO sequence VALUES ('ordernum', 1000);
+INSERT INTO sequence VALUES ('linenum', 1000);
+
+INSERT INTO signon VALUES ('j2ee','j2ee');
+INSERT INTO signon VALUES ('ACID','ACID');
+
+INSERT INTO account VALUES ('j2ee','yourname at yourdomain.com', 'Greg', 'Pierson', 'OK', '901 San Antonio Road', 'MS UCUP02-206', 'Palo Alto', 'CA', '94303', 'USA',  '555-555-5555');
+INSERT INTO account VALUES ('ACID','acid at yourdomain.com', 'Barbet', 'Schroeder', 'OK', '901 San Antonio Road', 'MS UCUP02-206', 'Palo Alto', 'CA', '94303', 'USA',  '555-555-5555');
+
+INSERT INTO profile VALUES ('j2ee','english','DOGS',1,1);
+INSERT INTO profile VALUES ('ACID','english','CATS',1,1);
+
+INSERT INTO bannerdata VALUES ('FISH','<image src="../images/banner_fish.gif">');
+INSERT INTO bannerdata VALUES ('CATS','<image src="../images/banner_cats.gif">');
+INSERT INTO bannerdata VALUES ('DOGS','<image src="../images/banner_dogs.gif">');
+INSERT INTO bannerdata VALUES ('REPTILES','<image src="../images/banner_reptiles.gif">');
+INSERT INTO bannerdata VALUES ('BIRDS','<image src="../images/banner_birds.gif">');
+
+INSERT INTO category VALUES ('FISH','Fish','<image src="../images/fish_icon.gif"><font size="5" color="blue"> Fish</font>');
+INSERT INTO category VALUES ('DOGS','Dogs','<image src="../images/dogs_icon.gif"><font size="5" color="blue"> Dogs</font>');
+INSERT INTO category VALUES ('REPTILES','Reptiles','<image src="../images/reptiles_icon.gif"><font size="5" color="blue"> Reptiles</font>');
+INSERT INTO category VALUES ('CATS','Cats','<image src="../images/cats_icon.gif"><font size="5" color="blue"> Cats</font>');
+INSERT INTO category VALUES ('BIRDS','Birds','<image src="../images/birds_icon.gif"><font size="5" color="blue"> Birds</font>');
+
+INSERT INTO product VALUES ('FI-SW-01','FISH','Angelfish','<image src="../images/fish1.jpg">Salt Water fish from Australia');
+INSERT INTO product VALUES ('FI-SW-02','FISH','Tiger Shark','<image src="../images/fish4.gif">Salt Water fish from Australia');
+INSERT INTO product VALUES ('FI-FW-01','FISH', 'Koi','<image src="../images/fish3.gif">Fresh Water fish from Japan');
+INSERT INTO product VALUES ('FI-FW-02','FISH', 'Goldfish','<image src="../images/fish2.gif">Fresh Water fish from China');
+INSERT INTO product VALUES ('K9-BD-01','DOGS','Bulldog','<image src="../images/dog2.gif">Friendly dog from England');
+INSERT INTO product VALUES ('K9-PO-02','DOGS','Poodle','<image src="../images/dog6.gif">Cute dog from France');
+INSERT INTO product VALUES ('K9-DL-01','DOGS', 'Dalmation','<image src="../images/dog5.gif">Great dog for a Fire Station');
+INSERT INTO product VALUES ('K9-RT-01','DOGS', 'Golden Retriever','<image src="../images/dog1.gif">Great family dog');
+INSERT INTO product VALUES ('K9-RT-02','DOGS', 'Labrador Retriever','<image src="../images/dog5.gif">Great hunting dog');
+INSERT INTO product VALUES ('K9-CW-01','DOGS', 'Chihuahua','<image src="../images/dog4.gif">Great companion dog');
+INSERT INTO product VALUES ('RP-SN-01','REPTILES','Rattlesnake','<image src="../images/lizard3.gif">Doubles as a watch dog');
+INSERT INTO product VALUES ('RP-LI-02','REPTILES','Iguana','<image src="../images/lizard2.gif">Friendly green friend');
+INSERT INTO product VALUES ('FL-DSH-01','CATS','Manx','<image src="../images/cat3.gif">Great for reducing mouse populations');
+INSERT INTO product VALUES ('FL-DLH-02','CATS','Persian','<image src="../images/cat1.gif">Friendly house cat, doubles as a princess');
+INSERT INTO product VALUES ('AV-CB-01','BIRDS','Amazon Parrot','<image src="../images/bird4.gif">Great companion for up to 75 years');
+INSERT INTO product VALUES ('AV-SB-02','BIRDS','Finch','<image src="../images/bird1.gif">Great stress reliever');
+
+INSERT INTO supplier VALUES (1,'XYZ Pets','AC','600 Avon Way','','Los Angeles','CA','94024','212-947-0797');
+INSERT INTO supplier VALUES (2,'ABC Pets','AC','700 Abalone Way','','San Francisco ','CA','94024','415-947-0797');
+
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-1','FI-SW-01',16.50,10.00,1,'P','Large');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-2','FI-SW-01',16.50,10.00,1,'P','Small');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-3','FI-SW-02',18.50,12.00,1,'P','Toothless');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-4','FI-FW-01',18.50,12.00,1,'P','Spotted');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-5','FI-FW-01',18.50,12.00,1,'P','Spotless');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-6','K9-BD-01',18.50,12.00,1,'P','Male Adult');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-7','K9-BD-01',18.50,12.00,1,'P','Female Puppy');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-8','K9-PO-02',18.50,12.00,1,'P','Male Puppy');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-9','K9-DL-01',18.50,12.00,1,'P','Spotless Male Puppy');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-10','K9-DL-01',18.50,12.00,1,'P','Spotted Adult Female');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-11','RP-SN-01',18.50,12.00,1,'P','Venomless');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-12','RP-SN-01',18.50,12.00,1,'P','Rattleless');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-13','RP-LI-02',18.50,12.00,1,'P','Green Adult');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-14','FL-DSH-01',58.50,12.00,1,'P','Tailless');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-15','FL-DSH-01',23.50,12.00,1,'P','With tail');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-16','FL-DLH-02',93.50,12.00,1,'P','Adult Female');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-17','FL-DLH-02',93.50,12.00,1,'P','Adult Male');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-18','AV-CB-01',193.50,92.00,1,'P','Adult Male');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-19','AV-SB-02',15.50, 2.00,1,'P','Adult Male');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-20','FI-FW-02',5.50, 2.00,1,'P','Adult Male');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-21','FI-FW-02',5.29, 1.00,1,'P','Adult Female');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-22','K9-RT-02',135.50, 100.00,1,'P','Adult Male');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-23','K9-RT-02',145.49, 100.00,1,'P','Adult Female');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-24','K9-RT-02',255.50, 92.00,1,'P','Adult Male');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-25','K9-RT-02',325.29, 90.00,1,'P','Adult Female');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-26','K9-CW-01',125.50, 92.00,1,'P','Adult Male');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-27','K9-CW-01',155.29, 90.00,1,'P','Adult Female');
+INSERT INTO item (itemid, productid, listprice, unitcost, supplier, status, attr1) VALUES ('EST-28','K9-RT-01',155.29, 90.00,1,'P','Adult Female');
+
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-1',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-2',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-3',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-4',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-5',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-6',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-7',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-8',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-9',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-10',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-11',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-12',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-13',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-14',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-15',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-16',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-17',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-18',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-19',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-20',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-21',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-22',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-23',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-24',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-25',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-26',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-27',10000);
+INSERT INTO inventory (itemid, qty ) VALUES ('EST-28',10000);

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db-hsqldb-schema.sql
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db-hsqldb-schema.sql	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db-hsqldb-schema.sql	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,166 @@
+drop index productCat;
+drop index productName;
+drop index itemProd;
+
+drop table lineitem;
+drop table orderstatus;
+drop table orders;
+drop table bannerdata;
+drop table profile;
+drop table signon;
+drop table inventory;
+drop table item;
+drop table product;
+drop table account;
+drop table category;
+drop table supplier;
+drop table sequence;
+
+create table supplier (
+    suppid int not null,
+    name varchar(80) null,
+    status varchar(2) not null,
+    addr1 varchar(80) null,
+    addr2 varchar(80) null,
+    city varchar(80) null,
+    state varchar(80) null,
+    zip varchar(5) null,
+    phone varchar(80) null,
+    constraint pk_supplier primary key (suppid)
+);
+
+create table signon (
+    username varchar(25) not null,
+    password varchar(25)  not null,
+    constraint pk_signon primary key (username)
+);
+
+create table account (
+    userid varchar(80) not null,
+    email varchar(80) not null,
+    firstname varchar(80) not null,
+    lastname varchar(80) not null,
+    status varchar(2)  null,
+    addr1 varchar(80) not null,
+    addr2 varchar(40) null,
+    city varchar(80) not  null,
+    state varchar(80) not null,
+    zip varchar(20) not null,
+    country varchar(20) not null,
+    phone varchar(80) not null,
+    constraint pk_account primary key (userid)
+);
+
+create table profile (
+    userid varchar(80) not null,
+    langpref varchar(80) not null,
+    favcategory varchar(30),
+    mylistopt int,
+    banneropt int,
+    constraint pk_profile primary key (userid)
+);
+
+create table bannerdata (
+    favcategory varchar(80) not null,
+    bannername varchar(255)  null,
+    constraint pk_bannerdata primary key (favcategory)
+);
+
+create table orders (
+      orderid varchar(80) not null,
+      userid varchar(80) not null,
+      orderdate date not null,
+      shipaddr1 varchar(80) not null,
+      shipaddr2 varchar(80) null,
+      shipcity varchar(80) not null,
+      shipstate varchar(80) not null,
+      shipzip varchar(20) not null,
+      shipcountry varchar(20) not null,
+      billaddr1 varchar(80) not null,
+      billaddr2 varchar(80)  null,
+      billcity varchar(80) not null,
+      billstate varchar(80) not null,
+      billzip varchar(20) not null,
+      billcountry varchar(20) not null,
+      courier varchar(80) not null,
+      totalprice decimal(10,2) not null,
+      billtofirstname varchar(80) not null,
+      billtolastname varchar(80) not null,
+      shiptofirstname varchar(80) not null,
+      shiptolastname varchar(80) not null,
+      creditcard varchar(80) not null,
+      exprdate varchar(7) not null,
+      cardtype varchar(80) not null,
+      locale varchar(80) not null,
+      constraint pk_orders primary key (orderid)
+);
+
+create table orderstatus (
+      orderid int not null,
+      linenum int not null,
+      timestamp date not null,
+      status varchar(2) not null,
+      constraint pk_orderstatus primary key (orderid, linenum)
+);
+
+create table lineitem (
+      orderid int not null,
+      linenum int not null,
+      itemid varchar(10) not null,
+      quantity int not null,
+      unitprice decimal(10,2) not null,
+      constraint pk_lineitem primary key (orderid, linenum)
+);
+
+create table category (
+	catid varchar(10) not null,
+	name varchar(80) null,
+	descn varchar(255) null,
+	constraint pk_category primary key (catid)
+);
+
+create table product (
+    productid varchar(10) not null,
+    category varchar(10) not null,
+    name varchar(80) null,
+    descn varchar(255) null,
+    constraint pk_product primary key (productid),
+        constraint fk_product_1 foreign key (category)
+        references category (catid)
+);
+
+create index productCat on product (category);
+create index productName on product (name);
+
+create table item (
+    itemid varchar(10) not null,
+    productid varchar(10) not null,
+    listprice decimal(10,2) null,
+    unitcost decimal(10,2) null,
+    supplier int null,
+    status varchar(2) null,
+    attr1 varchar(80) null,
+    attr2 varchar(80) null,
+    attr3 varchar(80) null,
+    attr4 varchar(80) null,
+    attr5 varchar(80) null,
+    constraint pk_item primary key (itemid),
+        constraint fk_item_1 foreign key (productid)
+        references product (productid),
+        constraint fk_item_2 foreign key (supplier)
+        references supplier (suppid)
+);
+
+create index itemProd on item (productid);
+
+create table inventory (
+    itemid varchar(10) not null,
+    qty int not null,
+    constraint pk_inventory primary key (itemid)
+);
+
+create table sequence (
+    name varchar(30) not null,
+    nextid int not null,
+    constraint pk_sequence primary key (name)
+);

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db.lck
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db.lck	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db.lck	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1 @@
+HSQLLOCK
\ No newline at end of file

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db.log
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db.log	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db.log	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,52 @@
+/*C23*/SET SCHEMA PUBLIC
+CONNECT USER SA
+DELETE FROM ORDERS WHERE ORDERID='1213712709484-FL-DLH-02' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+DELETE FROM ORDERS WHERE ORDERID='1213712709484-FI-FW-02' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+DELETE FROM ORDERS WHERE ORDERID='1213712709484-K9-DL-01' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+DELETE FROM ORDERS WHERE ORDERID='1213712709484-K9-CW-01' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+DELETE FROM ORDERS WHERE ORDERID='1213712709484-RP-SN-01' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+DELETE FROM ORDERS WHERE ORDERID='1213712709484-FI-SW-01' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+DELETE FROM ORDERS WHERE ORDERID='1213712709484-K9-RT-02' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+DELETE FROM ORDERS WHERE ORDERID='1213712709484-K9-RT-02' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+DELETE FROM ORDERS WHERE ORDERID='1213712709484-K9-PO-02' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+DELETE FROM ORDERS WHERE ORDERID='1213712709484-RP-SN-01' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+/*C24*/SET SCHEMA PUBLIC
+CONNECT USER SA
+SET AUTOCOMMIT FALSE
+INSERT INTO ORDERS VALUES('1213739454593-AV-CB-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213739454593-K9-BD-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213739454593-FI-FW-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213739454593-RP-LI-02','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213739454593-K9-CW-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213739454593-AV-CB-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213739454593-AV-CB-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213739454593-FI-SW-02','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213739454593-RP-SN-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213739454593-RP-LI-02','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+COMMIT
+DISCONNECT
+/*C23*/DELETE FROM ORDERS WHERE ORDERID='1213739454593-AV-CB-01' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+DELETE FROM ORDERS WHERE ORDERID='1213739454593-K9-BD-01' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+DELETE FROM ORDERS WHERE ORDERID='1213739454593-FI-FW-01' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+DELETE FROM ORDERS WHERE ORDERID='1213739454593-RP-LI-02' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+DELETE FROM ORDERS WHERE ORDERID='1213739454593-K9-CW-01' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+DELETE FROM ORDERS WHERE ORDERID='1213739454593-AV-CB-01' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+DELETE FROM ORDERS WHERE ORDERID='1213739454593-AV-CB-01' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+DELETE FROM ORDERS WHERE ORDERID='1213739454593-FI-SW-02' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+DELETE FROM ORDERS WHERE ORDERID='1213739454593-RP-SN-01' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+DELETE FROM ORDERS WHERE ORDERID='1213739454593-RP-LI-02' AND USERID='ACID' AND ORDERDATE='2006-11-15' AND SHIPADDR1='901 San Antonio Road' AND SHIPADDR2='MS UCUP02-206' AND SHIPCITY='Palo Alto' AND SHIPSTATE='CA' AND SHIPZIP='30253' AND SHIPCOUNTRY='USA' AND BILLADDR1='901 San Antonio Road' AND BILLADDR2='MS UCUP02-206' AND BILLCITY='Palo Alto' AND BILLSTATE='CA' AND BILLZIP='30253' AND BILLCOUNTRY='USA' AND COURIER='UPS' AND TOTALPRICE=22.23 AND BILLTOFIRSTNAME='ACID' AND BILLTOLASTNAME='Pets' AND SHIPTOFIRSTNAME='ACID' AND SHIPTOLASTNAME='Pets' AND CREDITCARD='999 9999 9999 9999' AND EXPRDATE='12/03' AND CARDTYPE='Visa' AND LOCALE='CA'
+/*C25*/SET SCHEMA PUBLIC
+CONNECT USER SA
+SET AUTOCOMMIT FALSE
+INSERT INTO ORDERS VALUES('1213739684328-FL-DLH-02','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213739684328-FL-DSH-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213739684328-FI-SW-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213739684328-RP-SN-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213739684328-K9-RT-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213739684328-AV-SB-02','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213739684328-K9-RT-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213739684328-RP-SN-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213739684328-RP-SN-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213739684328-K9-DL-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+COMMIT
+DISCONNECT

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db.properties
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db.properties	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db.properties	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,17 @@
+#HSQL Database Engine 1.8.0.8
+#Tue Jun 17 22:47:17 BST 2008
+hsqldb.script_format=0
+runtime.gc_interval=0
+sql.enforce_strict_size=false
+hsqldb.cache_size_scale=8
+readonly=false
+hsqldb.nio_data_file=true
+hsqldb.cache_scale=14
+version=1.8.0
+hsqldb.default_table_type=memory
+hsqldb.cache_file_scale=1
+hsqldb.log_size=200
+modified=yes
+hsqldb.cache_version=1.7.0
+hsqldb.original_version=1.8.0
+hsqldb.compatible_version=1.8.0


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db.properties
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db.script
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db.script	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/db.script	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,132 @@
+CREATE SCHEMA PUBLIC AUTHORIZATION DBA
+CREATE MEMORY TABLE SUPPLIER(SUPPID INTEGER NOT NULL PRIMARY KEY,NAME VARCHAR(80),STATUS VARCHAR(2) NOT NULL,ADDR1 VARCHAR(80),ADDR2 VARCHAR(80),CITY VARCHAR(80),STATE VARCHAR(80),ZIP VARCHAR(5),PHONE VARCHAR(80))
+CREATE MEMORY TABLE SIGNON(USERNAME VARCHAR(25) NOT NULL PRIMARY KEY,PASSWORD VARCHAR(25) NOT NULL)
+CREATE MEMORY TABLE ACCOUNT(USERID VARCHAR(80) NOT NULL PRIMARY KEY,EMAIL VARCHAR(80) NOT NULL,FIRSTNAME VARCHAR(80) NOT NULL,LASTNAME VARCHAR(80) NOT NULL,STATUS VARCHAR(2),ADDR1 VARCHAR(80) NOT NULL,ADDR2 VARCHAR(40),CITY VARCHAR(80) NOT NULL,STATE VARCHAR(80) NOT NULL,ZIP VARCHAR(20) NOT NULL,COUNTRY VARCHAR(20) NOT NULL,PHONE VARCHAR(80) NOT NULL)
+CREATE MEMORY TABLE PROFILE(USERID VARCHAR(80) NOT NULL PRIMARY KEY,LANGPREF VARCHAR(80) NOT NULL,FAVCATEGORY VARCHAR(30),MYLISTOPT INTEGER,BANNEROPT INTEGER)
+CREATE MEMORY TABLE BANNERDATA(FAVCATEGORY VARCHAR(80) NOT NULL PRIMARY KEY,BANNERNAME VARCHAR(255))
+CREATE MEMORY TABLE ORDERS(ORDERID VARCHAR(80) NOT NULL,USERID VARCHAR(80) NOT NULL,ORDERDATE DATE NOT NULL,SHIPADDR1 VARCHAR(80) NOT NULL,SHIPADDR2 VARCHAR(80),SHIPCITY VARCHAR(80) NOT NULL,SHIPSTATE VARCHAR(80) NOT NULL,SHIPZIP VARCHAR(20) NOT NULL,SHIPCOUNTRY VARCHAR(20) NOT NULL,BILLADDR1 VARCHAR(80) NOT NULL,BILLADDR2 VARCHAR(80),BILLCITY VARCHAR(80) NOT NULL,BILLSTATE VARCHAR(80) NOT NULL,BILLZIP VARCHAR(20) NOT NULL,BILLCOUNTRY VARCHAR(20) NOT NULL,COURIER VARCHAR(80) NOT NULL,TOTALPRICE DECIMAL(10,2) NOT NULL,BILLTOFIRSTNAME VARCHAR(80) NOT NULL,BILLTOLASTNAME VARCHAR(80) NOT NULL,SHIPTOFIRSTNAME VARCHAR(80) NOT NULL,SHIPTOLASTNAME VARCHAR(80) NOT NULL,CREDITCARD VARCHAR(80) NOT NULL,EXPRDATE VARCHAR(7) NOT NULL,CARDTYPE VARCHAR(80) NOT NULL,LOCALE VARCHAR(80) NOT NULL)
+CREATE MEMORY TABLE ORDERSTATUS(ORDERID INTEGER NOT NULL,LINENUM INTEGER NOT NULL,TIMESTAMP DATE NOT NULL,STATUS VARCHAR(2) NOT NULL,CONSTRAINT PK_ORDERSTATUS PRIMARY KEY(ORDERID,LINENUM))
+CREATE MEMORY TABLE LINEITEM(ORDERID INTEGER NOT NULL,LINENUM INTEGER NOT NULL,ITEMID VARCHAR(10) NOT NULL,QUANTITY INTEGER NOT NULL,UNITPRICE DECIMAL(10,2) NOT NULL,CONSTRAINT PK_LINEITEM PRIMARY KEY(ORDERID,LINENUM))
+CREATE MEMORY TABLE CATEGORY(CATID VARCHAR(10) NOT NULL PRIMARY KEY,NAME VARCHAR(80),DESCN VARCHAR(255))
+CREATE MEMORY TABLE PRODUCT(PRODUCTID VARCHAR(10) NOT NULL PRIMARY KEY,CATEGORY VARCHAR(10) NOT NULL,NAME VARCHAR(80),DESCN VARCHAR(255),CONSTRAINT FK_PRODUCT_1 FOREIGN KEY(CATEGORY) REFERENCES CATEGORY(CATID))
+CREATE INDEX PRODUCTCAT ON PRODUCT(CATEGORY)
+CREATE INDEX PRODUCTNAME ON PRODUCT(NAME)
+CREATE MEMORY TABLE ITEM(ITEMID VARCHAR(10) NOT NULL PRIMARY KEY,PRODUCTID VARCHAR(10) NOT NULL,LISTPRICE DECIMAL(10,2),UNITCOST DECIMAL(10,2),SUPPLIER INTEGER,STATUS VARCHAR(2),ATTR1 VARCHAR(80),ATTR2 VARCHAR(80),ATTR3 VARCHAR(80),ATTR4 VARCHAR(80),ATTR5 VARCHAR(80),CONSTRAINT FK_ITEM_1 FOREIGN KEY(PRODUCTID) REFERENCES PRODUCT(PRODUCTID),CONSTRAINT FK_ITEM_2 FOREIGN KEY(SUPPLIER) REFERENCES SUPPLIER(SUPPID))
+CREATE INDEX ITEMPROD ON ITEM(PRODUCTID)
+CREATE MEMORY TABLE INVENTORY(ITEMID VARCHAR(10) NOT NULL PRIMARY KEY,QTY INTEGER NOT NULL)
+CREATE MEMORY TABLE SEQUENCE(NAME VARCHAR(30) NOT NULL PRIMARY KEY,NEXTID INTEGER NOT NULL)
+CREATE USER SA PASSWORD ""
+GRANT DBA TO SA
+SET WRITE_DELAY 60
+SET SCHEMA PUBLIC
+INSERT INTO SUPPLIER VALUES(1,'XYZ Pets','AC','600 Avon Way','','Los Angeles','CA','94024','212-947-0797')
+INSERT INTO SUPPLIER VALUES(2,'ABC Pets','AC','700 Abalone Way','','San Francisco ','CA','94024','415-947-0797')
+INSERT INTO SIGNON VALUES('ACID','ACID')
+INSERT INTO SIGNON VALUES('j2ee','j2ee')
+INSERT INTO ACCOUNT VALUES('ACID','acid at yourdomain.com','ACID','Pets','OK','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','94303','USA','555-555-5555')
+INSERT INTO ACCOUNT VALUES('j2ee','yourname at yourdomain.com','JEE','Pets','OK','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','94303','USA','555-555-5555')
+INSERT INTO PROFILE VALUES('ACID','english','CATS',1,1)
+INSERT INTO PROFILE VALUES('j2ee','english','DOGS',1,1)
+INSERT INTO BANNERDATA VALUES('BIRDS','<image src="../images/banner_birds.gif">')
+INSERT INTO BANNERDATA VALUES('CATS','<image src="../images/banner_cats.gif">')
+INSERT INTO BANNERDATA VALUES('DOGS','<image src="../images/banner_dogs.gif">')
+INSERT INTO BANNERDATA VALUES('FISH','<image src="../images/banner_fish.gif">')
+INSERT INTO BANNERDATA VALUES('REPTILES','<image src="../images/banner_reptiles.gif">')
+INSERT INTO ORDERS VALUES('1213712709484-FL-DLH-02','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213712709484-FI-FW-02','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213712709484-K9-DL-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213712709484-K9-CW-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213712709484-RP-SN-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213712709484-FI-SW-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213712709484-K9-RT-02','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213712709484-K9-RT-02','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213712709484-K9-PO-02','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERS VALUES('1213712709484-RP-SN-01','ACID','2006-11-15','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','901 San Antonio Road','MS UCUP02-206','Palo Alto','CA','30253','USA','UPS',22.23,'ACID','Pets','ACID','Pets','999 9999 9999 9999','12/03','Visa','CA')
+INSERT INTO ORDERSTATUS VALUES(1000,1000,'2007-05-25','P')
+INSERT INTO ORDERSTATUS VALUES(1001,1001,'2007-05-25','P')
+INSERT INTO ORDERSTATUS VALUES(1002,1002,'2007-05-25','P')
+INSERT INTO ORDERSTATUS VALUES(1003,1003,'2007-05-25','P')
+INSERT INTO ORDERSTATUS VALUES(1004,1004,'2007-05-25','P')
+INSERT INTO ORDERSTATUS VALUES(1005,1005,'2007-05-25','P')
+INSERT INTO ORDERSTATUS VALUES(1006,1006,'2007-05-25','P')
+INSERT INTO ORDERSTATUS VALUES(1007,1007,'2007-05-25','P')
+INSERT INTO ORDERSTATUS VALUES(1008,1008,'2007-05-25','P')
+INSERT INTO CATEGORY VALUES('BIRDS','Birds','<image src="../images/birds_icon.gif"><font size="5" color="blue"> Birds</font>')
+INSERT INTO CATEGORY VALUES('CATS','Cats','<image src="../images/cats_icon.gif"><font size="5" color="blue"> Cats</font>')
+INSERT INTO CATEGORY VALUES('DOGS','Dogs','<image src="../images/dogs_icon.gif"><font size="5" color="blue"> Dogs</font>')
+INSERT INTO CATEGORY VALUES('FISH','Fish','<image src="../images/fish_icon.gif"><font size="5" color="blue"> Fish</font>')
+INSERT INTO CATEGORY VALUES('REPTILES','Reptiles','<image src="../images/reptiles_icon.gif"><font size="5" color="blue"> Reptiles</font>')
+INSERT INTO PRODUCT VALUES('AV-CB-01','BIRDS','Amazon Parrot','<image src="../images/bird4.gif">Great companion for up to 75 years')
+INSERT INTO PRODUCT VALUES('AV-SB-02','BIRDS','Finch','<image src="../images/bird1.gif">Great stress reliever')
+INSERT INTO PRODUCT VALUES('FI-FW-01','FISH','Koi','<image src="../images/fish3.gif">Fresh Water fish from Japan')
+INSERT INTO PRODUCT VALUES('FI-FW-02','FISH','Goldfish','<image src="../images/fish2.gif">Fresh Water fish from China')
+INSERT INTO PRODUCT VALUES('FI-SW-01','FISH','Angelfish','<image src="../images/fish1.jpg">Salt Water fish from Australia')
+INSERT INTO PRODUCT VALUES('FI-SW-02','FISH','Tiger Shark','<image src="../images/fish4.gif">Salt Water fish from Australia')
+INSERT INTO PRODUCT VALUES('FL-DLH-02','CATS','Persian','<image src="../images/cat1.gif">Friendly house cat, doubles as a princess')
+INSERT INTO PRODUCT VALUES('FL-DSH-01','CATS','Manx','<image src="../images/cat3.gif">Great for reducing mouse populations')
+INSERT INTO PRODUCT VALUES('K9-BD-01','DOGS','Bulldog','<image src="../images/dog2.gif">Friendly dog from England')
+INSERT INTO PRODUCT VALUES('K9-CW-01','DOGS','Chihuahua','<image src="../images/dog4.gif">Great companion dog')
+INSERT INTO PRODUCT VALUES('K9-DL-01','DOGS','Dalmation','<image src="../images/dog5.gif">Great dog for a Fire Station')
+INSERT INTO PRODUCT VALUES('K9-PO-02','DOGS','Poodle','<image src="../images/dog6.gif">Cute dog from France')
+INSERT INTO PRODUCT VALUES('K9-RT-01','DOGS','Golden Retriever','<image src="../images/dog1.gif">Great family dog')
+INSERT INTO PRODUCT VALUES('K9-RT-02','DOGS','Labrador Retriever','<image src="../images/dog5.gif">Great hunting dog')
+INSERT INTO PRODUCT VALUES('RP-LI-02','REPTILES','Iguana','<image src="../images/lizard2.gif">Friendly green friend')
+INSERT INTO PRODUCT VALUES('RP-SN-01','REPTILES','Rattlesnake','<image src="../images/lizard3.gif">Doubles as a watch dog')
+INSERT INTO ITEM VALUES('EST-1','FI-SW-01',16.50,10.00,1,'P','Large',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-10','K9-DL-01',18.50,12.00,1,'P','Spotted Adult Female',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-11','RP-SN-01',18.50,12.00,1,'P','Venomless',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-12','RP-SN-01',18.50,12.00,1,'P','Rattleless',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-13','RP-LI-02',18.50,12.00,1,'P','Green Adult',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-14','FL-DSH-01',58.50,12.00,1,'P','Tailless',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-15','FL-DSH-01',23.50,12.00,1,'P','With tail',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-16','FL-DLH-02',93.50,12.00,1,'P','Adult Female',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-17','FL-DLH-02',93.50,12.00,1,'P','Adult Male',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-18','AV-CB-01',193.50,92.00,1,'P','Adult Male',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-19','AV-SB-02',15.50,2.00,1,'P','Adult Male',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-2','FI-SW-01',16.50,10.00,1,'P','Small',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-20','FI-FW-02',5.50,2.00,1,'P','Adult Male',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-21','FI-FW-02',5.29,1.00,1,'P','Adult Female',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-22','K9-RT-02',135.50,100.00,1,'P','Adult Male',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-23','K9-RT-02',145.49,100.00,1,'P','Adult Female',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-24','K9-RT-02',255.50,92.00,1,'P','Adult Male',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-25','K9-RT-02',325.29,90.00,1,'P','Adult Female',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-26','K9-CW-01',125.50,92.00,1,'P','Adult Male',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-27','K9-CW-01',155.29,90.00,1,'P','Adult Female',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-28','K9-RT-01',155.29,90.00,1,'P','Adult Female',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-3','FI-SW-02',18.50,12.00,1,'P','Toothless',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-4','FI-FW-01',18.50,12.00,1,'P','Spotted',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-5','FI-FW-01',18.50,12.00,1,'P','Spotless',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-6','K9-BD-01',18.50,12.00,1,'P','Male Adult',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-7','K9-BD-01',18.50,12.00,1,'P','Female Puppy',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-8','K9-PO-02',18.50,12.00,1,'P','Male Puppy',NULL,NULL,NULL,NULL)
+INSERT INTO ITEM VALUES('EST-9','K9-DL-01',18.50,12.00,1,'P','Spotless Male Puppy',NULL,NULL,NULL,NULL)
+INSERT INTO INVENTORY VALUES('EST-1',10000)
+INSERT INTO INVENTORY VALUES('EST-10',10000)
+INSERT INTO INVENTORY VALUES('EST-11',10000)
+INSERT INTO INVENTORY VALUES('EST-12',10000)
+INSERT INTO INVENTORY VALUES('EST-13',10000)
+INSERT INTO INVENTORY VALUES('EST-14',10000)
+INSERT INTO INVENTORY VALUES('EST-15',10000)
+INSERT INTO INVENTORY VALUES('EST-16',10000)
+INSERT INTO INVENTORY VALUES('EST-17',10000)
+INSERT INTO INVENTORY VALUES('EST-18',10000)
+INSERT INTO INVENTORY VALUES('EST-19',10000)
+INSERT INTO INVENTORY VALUES('EST-2',10000)
+INSERT INTO INVENTORY VALUES('EST-20',10000)
+INSERT INTO INVENTORY VALUES('EST-21',10000)
+INSERT INTO INVENTORY VALUES('EST-22',10000)
+INSERT INTO INVENTORY VALUES('EST-23',10000)
+INSERT INTO INVENTORY VALUES('EST-24',10000)
+INSERT INTO INVENTORY VALUES('EST-25',10000)
+INSERT INTO INVENTORY VALUES('EST-26',10000)
+INSERT INTO INVENTORY VALUES('EST-27',10000)
+INSERT INTO INVENTORY VALUES('EST-28',10000)
+INSERT INTO INVENTORY VALUES('EST-3',10000)
+INSERT INTO INVENTORY VALUES('EST-4',10000)
+INSERT INTO INVENTORY VALUES('EST-5',10000)
+INSERT INTO INVENTORY VALUES('EST-6',10000)
+INSERT INTO INVENTORY VALUES('EST-7',10000)
+INSERT INTO INVENTORY VALUES('EST-8',10000)
+INSERT INTO INVENTORY VALUES('EST-9',10000)
+INSERT INTO SEQUENCE VALUES('linenum',1000)
+INSERT INTO SEQUENCE VALUES('ordernum',1009)

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/hsqldb.jar
===================================================================
(Binary files differ)


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/hsqldb.jar
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/manager.bat
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/manager.bat	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/manager.bat	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,2 @@
+"%JAVA_HOME%/bin/java" -classpath hsqldb.jar org.hsqldb.util.DatabaseManager
+

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/manager.sh
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/manager.sh	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/manager.sh	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1 @@
+java -cp hsqldb.jar org.hsqldb.util.DatabaseManager

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/server.bat
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/server.bat	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/server.bat	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1 @@
+"%JAVA_HOME%/bin/java" -classpath hsqldb.jar org.hsqldb.Server -database db

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/server.properties
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/server.properties	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/server.properties	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,2 @@
+server.port=9002
+server.trace=true


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/server.properties
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/server.sh
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/server.sh	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/05_Database/server.sh	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1 @@
+java -classpath hsqldb.jar org.hsqldb.Server -database db

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/README.html
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/README.html	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/README.html	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,692 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+    <title>JBossESB Quickstart - "Huge Split, Enrich, Transform and Route"</title>
+    <style type="text/css">
+        body {
+            font-family: helvetica
+        }
+        pre {
+            margin-left: 20px;
+            background-color: lavender;
+        }
+        .rhighlight {
+            color: red;
+        }        
+        div.indent {
+            margin-left: 20px;
+        }
+        h4 {
+            font-style: italic;
+        }
+        .commentedcode {
+            font-size: smaller; color: slategray;
+        }
+    </style>
+</head>
+<body>
+
+<h2>JBossESB Quickstart - "Huge Split, Enrich, Transform and Route"</h2>
+<div class="indent">
+
+    This Quickstart demonstrates how JBossESB can be used to:
+
+    <ol>
+        <li>split,</li>
+        <li>enrich,</li>
+        <li>transform, and</li>
+        <li>route</li>
+    </ol>
+
+    messages of any size, including huge messages i.e. GB size messages.
+    <p/>
+    <b>Table of Contents:</b>
+    <div class="indent">
+        <a href="#overview">Overview</a><br/>
+        <a href="#main-points">Main Points of Note</a><br/>
+        <a href="#illustration">Illustration</a><br/>
+        <a href="#running">Running the Quickstart</a><br/>
+        <a href="#how-it-works">How it Works</a><br/>
+        <div class="indent">
+            <a href="#high-level">High Level</a><br/>
+            <a href="#splitting-routing">Splitting &amp; Routing Details</a>
+        </div>
+    </div>
+
+    <h3 id="overview">Overview</h3>
+
+    Messages can often be received containing data of interest to multiple parties.  Extracting and distributing this data
+    is a non trivial process.  Firstly you have the challenge of physically extracting the message data from the source message.
+    Then you need to reassemble the extracted data in a format consumable by each of these parties.  Each party may have different
+    requirements (different formats etc) and it's the natural responsibility of the ESB to take care of these differing integration
+    requirements.  Things can get even more complex if the source message does not contain all the information required by the
+    interested parties.
+    <p/>
+    JBossESB features tools that support solving these issues in a declaritive manner i.e. typically, there's no need to write reams of code.
+    The ability to parse, split transform and route message fragments is very powerful.  These capabilities are also key to solving another
+    message processing related usecase encountered in the Enterprise i.e. that of <b>processing huge messages (GBs)</b>.  JBossESB's abilty to perform
+    complex splitting operations on messages of different formats provides one solution to processing huge messages.
+    <p/>
+    This quickstart demonstrates these capabilities and walks you through the components involved.  The Quickstart is based on
+    a usecase where JBossESB is used to process Order messages (EDI format) from the local file system.
+    Each Order message contains order header information (orderId, date, customer userId etc), as well as a list of order items
+    (productId, quantity etc).  JBossESB is used to:
+    <ol>
+        <li>Split out and route order items whose "price" is less than "17.00" to the "02_Low_Price" Service.  The "02_Low_Price"
+            Service expects the order item data to:
+            <ol type="a">
+                <li>be in <b>XML format</b>,</li>
+                <li>contain order header data, as well as the order item data, and</li>
+                <li>contain additional customer and product data not provided in the source EDI message.</li>
+            </ol>
+        </li>
+        <li>Split out and route order items whose "price" is greater than "190.00" to the "03_High_Price" Service.  The "03_High_Price"
+            Service expects the order item data to:
+            <ol type="a">
+                <li>be in a populated <b>Java Object model</b>,</li>
+                <li>contain order header data, as well as the order item data, and</li>
+                <li>contain additional customer and product data not provided in the source EDI message.</li>
+            </ol>
+        </li>
+        <li>Split out and route order items whose "category" is "REPTILES" to the "04_Reptiles_notify_webservice_proxy" Service.  The "04_Reptiles_notify_webservice_proxy"
+            Service expects the order item data to:
+            <ol type="a">
+                <li>be in <b>SOAP format</b> complying with the ReptilesNotifyWS interface (to which the 04_Reptiles_notify_webservice_proxy
+                    routes the SOAP message using the HttpRouter),</li>
+                <li>contain order header data, as well as the order item data, and</li>
+                <li>contain additional customer and product data not provided in the source EDI message.</li>
+            </ol>
+        </li>
+        <li>Split out and route all order items to the <b>"Orders" table in the database</b> ("05_Database").</li>
+    </ol>
+
+    <h3 id="main-points">Main Points of Note</h3>
+    The main points of note are:
+    <ul>
+        <li>The split messages don't just contain data from the order item in question, they also contain data
+            from the message header (orderId, date etc).  This means the split is <b>not just a dumb fragment extraction</b>.
+            Data from different fragments (header and order item) needs to be merged together into the new messages.</li>
+        <li>The routed messages need to be "<b>Enriched</b>" with additional customer and product data from the database.</li>
+        <li>The routed messages are in <b>different formats</b> - XML, Java, SOAP, JDBC.</li>
+        <li>Each order item may be sent to <b>multiple parties concurrently</b>.</li>
+        <li>Each order item is routed based on content (<b>Content Based Routing</b>).</li>
+    </ul>
+
+    <h3 id="illustration">Illustration</h3>
+    The Quickstart can be illustrated as follows:
+    <p/>
+    <img src="docs/Overview.png" />
+    <p/>
+
+    <h3 id="running">Running the Quickstart</h3>
+    <ol>
+        <li>Open 6 command shell windows in the root folder of this quickstart.</li>
+        <li>In one of the command shell windows, start your JBoss ESB/Application Server instance.</li>
+        <li>In one of the command shell windows, type "ant deploy-jms-dests" to deploy the JMS Queues.</li>
+        <li>In one of the command shell windows, change directory into the "05_Database" folder and
+            type "server.bat" or "server.sh", depending on your OS.</li>
+        <li>In the remaining command shell windows, type the following commands in seperate windows:
+            <ul>
+                <li>"ant 01_split_enrich_transform_route"</li>
+                <li>"ant 02_Low_Price"</li>
+                <li>"ant 03_High_Price"</li>
+                <li>"ant 04_Reptiles_notify_webservice_proxy" (this just builds and deploys the Webservice)</li>
+            </ul>
+        </li>
+        <li>In the 6th command shell window, type "ant createMessage" to execute the message creation
+            script.  This script will generate an EDI message in the Service input folder.</li>
+    </ol>
+
+    <h3 id="how-it-works">How it Works</h3>
+    The main ESB components used in this quickstart (and how they depend on each other) are as follows:
+    <ul>
+        <li>FileGateway
+            <ul>
+                <li>FileStreamSplitter
+                    <ul>
+                        <li>Smooks
+                            <ul>
+                                <li>EdiParser</li>
+                                <li>FreeMarker</li>
+                                <li>FragmentRouter
+                                    <ul>ServiceInvoker</ul>
+                                </li>
+                            </ul>
+                        </li>
+                    </ul>
+                </li>
+            </ul>
+        </li>
+        <li>HttpRouter</li>
+    </ul>
+
+    <div class="indent">
+        <h4 id="high-level">High Level</h4>
+        As can be seen from the <a href="#illustration">illustration above</a>, this quickstart revolves around the
+        "01_split_enrich_transform_route" Service deployment.  This .esb deployment defines the "SplitterService"
+        and "04_Reptiles_notify_webservice_proxy" Services as follows:
+
+        <p/>
+        <pre>
+&lt;service category="HugeQS" name="SplitterService" description="Splits out the order items and routes them."&gt;
+    &lt;listeners&gt;
+        <span class="rhighlight">&lt;fs-listener name="FileGateway" busidref="ediFileMessageBus" is-gateway="true" poll-frequency-seconds="2"&gt;
+            &lt;property name="composer-class" value="org.jboss.soa.esb.smooks.splitting.FileStreamSplitter"/&gt;
+            &lt;property name="splitterConfig" value="/smooks_configs/main.xml"/&gt;
+            &lt;!-- property name="reportPath" value="/zap/report.html"/ --&gt;
+        &lt;/fs-listener&gt;</span>
+    &lt;/listeners&gt;
+    &lt;actions mep="OneWay"&gt;
+        &lt;action name="print" class="org.jboss.soa.esb.example.PrintMessage"&gt;
+            &lt;property name="delay" value="500" /&gt;
+        &lt;/action&gt;
+    &lt;/actions&gt;
+&lt;/service&gt;
+
+&lt;service category="HugeQS" name="04_Reptiles_notify_webservice_proxy" description="Routes the SOAP requests to the 'Reptiles Notification' Webservice"&gt;
+    &lt;actions mep="OneWay"&gt;
+        &lt;action name="httprouter" class="org.jboss.soa.esb.actions.routing.http.HttpRouter"&gt;
+            &lt;property name="endpointUrl" value="http://127.0.0.1:8080/Quickstart_Huge_Enrich_Split_Transform_Route/ReptilesNotifyWS" /&gt;
+            &lt;property name="method" value="POST" /&gt;
+            &lt;property name="responseType" value="STRING" /&gt;
+        &lt;/action&gt;
+    &lt;/actions&gt;
+&lt;/service&gt;</pre>
+        <p/>
+
+        The "SplitterService" is of most interest since this is the Service that performs the Splitting &amp; Routing of the Order Items contained in the
+        source EDI Order message.  The FileGateway is configured with the <code>FileStreamSplitter</code>, which is a specialised MessageComposer implementation.
+        The <code>FileStreamSplitter</code> uses <a href="http://milyn.codehaus.org">Smooks</a> to perform the Splitting &amp; Routing of the Order Items.
+        <a href="#splitting-routing">We will look at this in more detail later</a>.
+        <p/>
+        The "04_Reptiles_notify_webservice_proxy" Service is also interesting.  It acts as a Webservice proxy service to the "ReptilesNotifyWS" Webservice (<a href="#illustration">see illustration</a>),
+        using the <code>HttpRouter</code> to route SOAP payloads received from "SplitterService".
+        <p/>
+        The "SplitterService" Service also routes split Order Item messages to a number of other Services based on content (Content Based Routing).  The "02_Low_Price" and "03_High_Price"
+        Services are very simple and effectively the same.  The only difference is that the "02_Low_Price" Service receives low priced Order Items as XML, while the
+        "03_High_Price" Service receives high priced Order Items as Java Objects.  The configuration of the "02_Low_Price" Service is as follows:
+
+        <p/>
+        <pre>
+&lt;service category="HugeQS" name="02_Low_Price" description="02_Low_Price Service"&gt;
+    &lt;listeners&gt;
+        &lt;jms-listener name="XMLjms" busidref="02XMLBus" /&gt;
+    &lt;/listeners&gt;
+    &lt;actions mep="OneWay"&gt;
+        &lt;action name="print" class="org.jboss.soa.esb.example.PrintMessage" /&gt;
+    &lt;/actions&gt;
+&lt;/service&gt;</pre>
+        <p/>
+
+        As can be seen, this Service (and the "03_High_Price" Service) is very simple.  It just prints the ESB Message payload to the console.
+        <p/>
+        The "SplitterService" Service also routes split Order Item messages to the Database.  <a href="#splitting-routing">We will look at this in more detail later</a>.
+        <p/>
+        In all cases where the "SplitterService" Service routes split Order Item messages, the messages are enriched with additional Customer and Product data, which
+        it gets from the Database.
+
+        <h4 id="splitting-routing">Splitting &amp; Routing Details</h4>
+        The incomming EDI messages are in the following format:
+<pre>
+HDR*1213529618453*0*Wed Nov 15 13:45:28 EST 2006
+CUS*ACID
+ORD*0*4*AV-CB-01
+ORD*1*5*FL-DLH-02
+ORD*2*5*AV-CB-01
+... <i>(more ORD segments, 1 per Order Item)</i>...</pre>
+        The top level Smooks configuration for Splitting &amp; Routing this message is:
+<pre>
+&lt;?xml version="1.0"?&gt;
+&lt;smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd"&gt;
+
+    &lt;!--
+    Filter the message using the SAX Filter (i.e. not DOM, so no
+    intermediate DOM, so we can process huge messages...
+    --&gt;
+    &lt;resource-config selector="global-parameters"&gt;
+        &lt;param name="stream.filter.type"&gt;SAX&lt;/param&gt;
+    &lt;/resource-config&gt;
+
+    &lt;!-- Import config for parsing this EDI message... --&gt;
+    &lt;import file="<a href="#edi-parsing">parse/edi-orders-parser.xml</a>" /&gt;
+
+    &lt;!-- Import datasource configs... --&gt;
+    &lt;import file="<a href="#datasources">database/datasources.xml</a>" /&gt;
+
+    &lt;!-- Import reference/enrichment data configs - products, accounts etc... --&gt;
+    &lt;import file="<a href="#refdata">database/ref-data.xml</a>" /&gt;
+
+    &lt;!-- Import config for binding order and order-item data into memory... --&gt;
+    &lt;import file="<a href="#bindings">bindings.xml</a>" /&gt;
+
+    &lt;!-- Import config for routing order item XML to the "02_Low_Price" Service... --&gt;
+    &lt;import file="<a href="#routing-02_Low_Price">routing/route-to-02_Low_Price_Service.xml</a>" /&gt;
+
+    &lt;!-- Import config for routing order item Java Objects to the "03_High_Price" Service... --&gt;
+    &lt;import file="<a href="#routing-03_High_Price">routing/route-to-03_High_Price_Service.xml</a>" /&gt;
+
+    &lt;!-- Import config for routing order item Java Objects to the "04_Reptiles_notify_webservice_proxy" Service... --&gt;
+    &lt;import file="<a href="#routing-04_Reptiles_notify_webservice_proxy">routing/route-to-04_Reptiles_notify_webservice_proxy.xml</a>" /&gt;
+
+    &lt;!-- Import config for routing order items to the database... --&gt;
+    &lt;import file="<a href="#routing-05_Database">routing/route-to-05_Database.xml</a>" /&gt;
+
+&lt;/smooks-resource-list&gt;</pre>
+
+        Detailed explanations for each of the imported resource configuration files are hyperlinked.
+
+        <h5 id="edi-parsing">parse/edi-orders-parser.xml</h5>
+        This Smooks resource configuration file defines just a single resource; the EDI Parser.
+        
+<pre>
+&lt;resource-config selector="org.xml.sax.driver"&gt;
+    &lt;resource&gt;org.milyn.smooks.edi.SmooksEDIParser&lt;/resource&gt;
+    &lt;param name="mapping-model"&gt;<a href="01_split_enrich_transform_route/smooks_configs/parse/edi-to-xml-order-mapping.xml">/smooks_configs/parse/edi-to-xml-order-mapping.xml</a>&lt;/param&gt;
+&lt;/resource-config&gt;</pre>
+
+        The "mapping-model" parameter defines the EDI to SAX Event mapping model configuration for the parser.  After
+        configuring this resource and turning on the Smooks Execution Report we can see the message event stream as produced
+        by the EDI Parser:
+        <p/>
+        <img src="docs/source-model.gif" />
+        <p/>
+
+        <h5 id="datasources">database/datasources.xml</h5>
+        This Quickstart interfaces to the database for a number of reasons:
+        <ol>
+            <li>Reading Customer and Product information not presented in the source EDI message.  This information is used to enrich
+            the split order item messages before routing.</li>
+            <li>Persisting Order Item details (Routing to the Database).</li>
+        </ol>
+        The "database/datasources.xml" Smooks resource configuration file defines the Datasource details for accessing the Database:
+<pre>
+&lt;resource-config selector="$document"&gt;
+    &lt;resource&gt;org.milyn.db.DirectDataSource&lt;/resource&gt;
+    &lt;param name="datasource"&gt;OrderManagement&lt;/param&gt;
+    &lt;param name="driver"&gt;org.hsqldb.jdbcDriver&lt;/param&gt;
+    &lt;param name="url"&gt;jdbc:hsqldb:hsql://localhost:9002&lt;/param&gt;
+    &lt;param name="username"&gt;sa&lt;/param&gt;
+    &lt;param name="password"&gt;&lt;/param&gt;
+    &lt;param name="autoCommit"&gt;false&lt;/param&gt;
+&lt;/resource-config&gt;</pre>
+
+        This Datasource is bound to the Smooks ExecutionContext at the start of message processing (selector="$document" - selects the message root/document event as the lifecycle event).
+        Any JDBC Connection created for the ExecutionContext is committed/rolledback and cleaned up at the end of the message processin (selector="$document").  The <b>HtmlReportGenerator</b>
+        (Smooks Execution Report Generator) is very useful for visualising this e.g. The "visitBefore" event shows the binding of the Datasource to the ExecutionContext:
+        <p/>
+        <img src="docs/datasource-vbefore.gif" />
+        <p/>
+        And the "visitAfter" event shows the cleanup:
+        <p/>
+        <img src="docs/datasource-vafter.gif" />
+        <p/>
+
+        <h5 id="refdata">database/ref-data.xml</h5>
+        The "database/ref-data.xml" resource file configures resource for reading reference/enhancement data from the
+        Database.  Each resource is commented inline:
+<pre>
+&lt;?xml version="1.0"?&gt;
+&lt;smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd"&gt;
+
+    &lt;!--
+        At the start of the message, select the list of products and bind it into the bean context
+        under the beanId of "products".  We only want to do this lookup once Smooks instance i.e. not for
+        every message, otherwise we'd kill memory performance.  To control this, we set the "resultSetScope"
+        param to "APPLICATION".  The actual order item product row will be selected from the resultset by
+        the ResultsetRowSelector config (below)...
+    --&gt;
+    &lt;resource-config selector="$document"&gt;
+        &lt;resource&gt;org.milyn.routing.db.SQLExecutor&lt;/resource&gt;
+        &lt;param name="datasource"&gt;OrderManagement&lt;/param&gt;
+        &lt;param name="executeBefore"&gt;true&lt;/param&gt;
+        &lt;param name="statement"&gt;select productid, name, attr1, listprice, category from product p, item i where p.productid = i.productid&lt;/param&gt;
+        &lt;param name="resultSetName"&gt;products&lt;/param&gt;
+        &lt;param name="resultSetScope"&gt;APPLICATION&lt;/param&gt;
+    &lt;/resource-config&gt;
+
+    &lt;!--
+        For every order-item, select the appropriate product row from the in-mem "products" reference data
+        resultset (see previous resource), using the ResultsetRowSelector. Bind the selected product row back into the
+        bean context under a beanId of "product"...
+    --&gt;
+    &lt;resource-config selector="order-item/product-id"&gt;
+        &lt;resource&gt;org.milyn.routing.db.ResultsetRowSelector&lt;/resource&gt;
+        &lt;param name="executeBefore"&gt;false&lt;/param&gt;
+        &lt;param name="resultSetName"&gt;products&lt;/param&gt;
+        &lt;param name="beanId"&gt;product&lt;/param&gt;
+        &lt;param name="where"&gt;row.PRODUCTID == orderItem.productId&lt;/param&gt;
+        &lt;param name="failedSelectError"&gt;Unknown Order Item product ID '${orderItem.productId}' on order '${orderDetail.orderNum?c}'.&lt;/param&gt;
+    &lt;/resource-config&gt;
+
+    &lt;!--
+        At the end of the customer-details/username, select the user account and bind it into the bean context
+        under the beanId of "accounts".  The users account should be the only entry in this list....
+    --&gt;
+    &lt;resource-config selector="customer-details"&gt;
+        &lt;resource&gt;org.milyn.routing.db.SQLExecutor&lt;/resource&gt;
+        &lt;param name="datasource"&gt;OrderManagement&lt;/param&gt;
+        &lt;param name="statement"&gt;select * from ACCOUNT where userid = ${orderDetail.uname}&lt;/param&gt;
+        &lt;param name="resultSetName"&gt;accounts&lt;/param&gt;
+    &lt;/resource-config&gt;
+
+&lt;/smooks-resource-list&gt;</pre>
+        The data read from the Database by the above resources is bound into the bean context and so is available
+        to other resources executing under the same ExecutionContext e.g. templating resources, BeanPopulator
+        resources etc.  The full Products list Resultset is available under the beanId "<b>products</b>", with the
+        product for the current Order Item being processed being available under the beanId "<b>product</b>" (see the
+        ResultsetRowSelector resource above).  The customer account info for the message being processed under the
+        ExecutionContext is captured and made available under the beanId of "<b>accounts</b>".  We don't select the
+        customer account row from the Resultset (using the ResultsetRowSelector - as done with the products Resultset).
+        It woult be a good idea to add this ResultsetRowSelector because we could then configure a "failedSelectError".
+        It would also mean that the expressions used in other resources to reference the account info (e.g. in templates) wouldn't
+        contain the Resultset row indexing characters i.e. "accounts[0]".  Instead, we would reference the account
+        info using "account" based expressions, which is possibly a little clearer.
+
+        <h5 id="bindings">bindings.xml</h5>
+        At the heart of nearly all Smooks based message processing is the concept of "binding" data from the Source
+        message event stream into memory (into the bean context).  Once the data is bound into memory in a Physical or
+        Virtual Object Model, it can be used by other Smooks resources such as:
+        <ul>
+            <li>Templating resources (FreeMarker, XSLT, StringTemplate),</li>
+            <li>BeanPopulator resources (Expression Based Bindings),</li>
+            <li>Routing resources (Database, File, JMS),</li>
+            <li>Resource &lt;condition&gt; expressions,</li>
+            <li>Custom Smooks Visitor implementations</li>
+            <li>etc, etc, etc...</li>
+        </ul>
+
+        The populated Object Model may itself be the Result output by the Smooks.filter operation.  Basically, the
+        data binding functionality provided by the Javabean Cartridge is a very fundamental part of practically
+        all Smooks based filtering operations.  Without it, you are quite limited in what you can do.
+        <p/>
+        The "bindings.xml" resource defines the core bindings used in this quickstart.  It extracts the Order header
+        and Order Item data from the message event stream and binds it into a Virtual Object Model (i.e. a HashMap):
+<pre>
+&lt;!--
+    Bind the main order details....
+--&gt;
+&lt;resource-config selector="order"&gt;
+    &lt;resource&gt;org.milyn.javabean.BeanPopulator&lt;/resource&gt;
+    &lt;param name="beanId"&gt;orderDetail&lt;/param&gt;
+    &lt;param name="beanClass"&gt;java.util.HashMap&lt;/param&gt;
+    &lt;param name="bindings"&gt;
+        &lt;binding property="orderNum" selector="header/order-id"     type="Long" /&gt;
+        &lt;binding property="uname"    selector="customer-details/username" /&gt;
+        &lt;binding property="date"     selector="header/date"         type="OrderDateDecoder" /&gt; &lt;!-- Type defined below --&gt;
+    &lt;/param&gt;
+&lt;/resource-config&gt;
+
+&lt;!--
+    Bind each order-item.  Not building a list of order items because we only want to have
+    one order-item in memory at any one time.  This way, we can handle a huge orders with many
+    many order items..
+--&gt;
+&lt;resource-config selector="order-item"&gt;
+    &lt;resource&gt;org.milyn.javabean.BeanPopulator&lt;/resource&gt;
+    &lt;param name="beanId"&gt;orderItem&lt;/param&gt;
+    &lt;param name="beanClass"&gt;java.util.HashMap&lt;/param&gt;
+    &lt;param name="bindings"&gt;
+        &lt;binding property="position"  selector="order-item/position" type="Integer" /&gt;
+        &lt;binding property="quantity"  selector="order-item/quantity" type="Integer" /&gt;
+        &lt;binding property="productId" selector="order-item/product-id" /&gt;
+    &lt;/param&gt;
+&lt;/resource-config&gt;
+
+&lt;resource-config selector="decoder:OrderDateDecoder"&gt;
+    &lt;resource&gt;org.milyn.javabean.decoders.DateDecoder&lt;/resource&gt;
+    &lt;param name="format"&gt;EEE MMM dd HH:mm:ss z yyyy&lt;/param&gt;
+&lt;/resource-config&gt;</pre>
+
+        Once this data is bound into the bean context (under the beanIds of "orderDetail" and "orderItem"),
+        it is available to all other resources executing under the same Smooks ExecutionContext.  The key to
+        processing huge messages is the fact that we can keep the memory footprint associated with the
+        ExecutionContext to a minimum.  We do this by only maintaining the current Order Item in memory at
+        at any one time i.e. we don't accumulate a list of the Order Items.  This also means that
+        we need to be able to use the Order Item data (for splitting, routing etc) while we have it in
+        memory and before we throw it away in place of the next Order Item in the message event stream.
+        In other words, we can't wait for the whole message to be processed before processing the Order Item data;
+        everything is done while we are processing the message event stream i.e. binding, templating/transforming,
+        routing etc.  We do this by targeting these other resources at the same events in the message event stream
+        i.e. the &lt;order-item&gt; events.
+        <p/>
+        This is the most difficult part of Smooks to get your head around i.e. the idea that multiple things are
+        conceptually happening in parallel.  On the other side, this is where the power of Smooks lies.  For this
+        reason, Smooks provides a HtmlReportGenerator class to help you visualise Smooks processes.  It generates
+        a Smooks Execution Report and is the nearest thing to a debugging tool that Smooks currently has.  See
+        the Smooks User Guide for details.
+
+        <h5 id="routing-02_Low_Price">routing/route-to-02_Low_Price_Service.xml</h5>
+        This resource configuration file defines the routing resources for the "02_Low_Price"
+        Service:
+<pre>
+&lt;!--
+    At the end of every order-item, route the order item XML ("02_XML_OrderItem") to the
+    "02_Low_Price" Service, if the total is 20 or less...
+--&gt;
+&lt;resource-config selector="order-item"&gt;
+    &lt;resource&gt;org.jboss.soa.esb.smooks.FragmentRouter&lt;/resource&gt;
+    &lt;condition&gt;
+        &lt;!--<i class="commentedcode">
+        product.LISTPRICE * orderItem.quantity &lt;= 17.00
+        </i>--&gt;
+    &lt;/condition&gt;
+    &lt;param name="beanId"&gt;<span style="color: crimson;">02_XML_OrderItem</span>&lt;/param&gt;  &lt;!-- Populated and bound below... --&gt;
+    &lt;param name="serviceCategory"&gt;HugeQS&lt;/param&gt;
+    &lt;param name="serviceName"&gt;02_Low_Price&lt;/param&gt;
+&lt;/resource-config&gt;
+
+&lt;!--
+    At the end of every order-item, generate an &lt;ord&gt; split message for the "02_XML" Service
+    and bind it back into the bean context under a bean ID of "02_XML_OrderItem"...
+ --&gt;
+&lt;resource-config selector="order-item"&gt;
+    &lt;resource type="ftl"&gt;&lt;!--<i class="commentedcode">&lt;ord id="${orderDetail.orderNum?c}" date="${orderDetail.date?string("yyyy-MM-dd")}"&gt;
+    &lt;customer&gt;
+        &lt;name&gt;${accounts[0].LASTNAME}, ${accounts[0].FIRSTNAME}&lt;/name&gt;
+        &lt;addr1&gt;${accounts[0].ADDR1}&lt;/addr1&gt;
+        &lt;addr2&gt;${accounts[0].ADDR2}&lt;/addr2&gt;
+        &lt;city&gt;${accounts[0].CITY}&lt;/city&gt;
+        &lt;state&gt;${accounts[0].STATE}&lt;/state&gt;
+        &lt;zip&gt;${accounts[0].ZIP}&lt;/zip&gt;
+    &lt;/customer&gt;
+    &lt;productid&gt;${orderItem.productId}&lt;/productid&gt;
+    &lt;quantity&gt;${orderItem.quantity?c}&lt;/quantity&gt;
+    &lt;price&gt;${product.LISTPRICE?c}&lt;/price&gt;
+    &lt;title&gt;${product.NAME} (${product.ATTR1})&lt;/title&gt;
+&lt;/ord&gt;</i>--&gt;&lt;/resource&gt;
+    &lt;param name="action"&gt;bindto&lt;/param&gt;
+    &lt;param name="bindId"&gt;<span style="color: crimson;">02_XML_OrderItem</span>&lt;/param&gt;
+&lt;/resource-config&gt;    
+</pre>
+    So the first resource listed in this configuration simply routes the XML data (generated by the second resource)
+    to the "02_Low_Price" Service.  The resource is only applied if the specified condition is met. The second resource
+    generates the XML message to be routed by applying a FreeMarker template to the data in the bean context.  As can be
+    seen above, the template sucks in Customer and Product data bound to the bean context <a href="#refdata">from the
+    database ("accounts[0]" and "product")</a>, as well as data bound into the bean context <a href="#bindings">from the
+    source message itself ("orderDetail" and "orderItem")</a>.
+    <p/>
+    Both of these resource fire on the visitAfter event of the &lt;order-item&gt;
+    element.  The order in which they fire depends on the order in which they appear in the resource configs, with the
+    visitBefore events firing "first-to-last" and the visitAfter events firing "last-to-first".  This is why the templating
+    resource is positioned after the routing resource i.e. because we want it's visitAfter to be applied before the
+    FragmentRouter visitAfter (uses the ServiceInvoker to route the messages).  This all seems a bit complex, but is
+    actually intuitive enough if you use the Smooks Execution Report during development because you can see the resources
+    and the order in which they are being applied.
+    <p/>
+    The following illustration shows the resources applied on the visitAfter event for the &lt;order-item&gt; element.
+    It shows the FreeMarker template resource being applied before the <code>FragmentRouter</code> resource.
+    <p/>
+    <img src="docs/02_Low_Price.gif" />
+    <p/>
+
+    <h5 id="routing-03_High_Price">routing/route-to-03_High_Price_Service.xml</h5>
+    This resource configuration file defines the routing resources for the "03_High_Price"
+    Service:
+<pre>
+&lt;!--
+    At the end of every order-item, route the order item Java Objects ("03_order") to the
+    "03_High_Price" Service, if the price per item is 190 or more...
+--&gt;
+&lt;resource-config selector="order-item"&gt;
+    &lt;resource&gt;org.jboss.soa.esb.smooks.FragmentRouter&lt;/resource&gt;
+    &lt;condition&gt;
+        &lt;!--<i class="commentedcode">
+        product.LISTPRICE &gt; 190.00
+        </i>--&gt;
+    &lt;/condition&gt;
+    &lt;param name="beanId"&gt;<span style="color: crimson;">03_order</span>&lt;/param&gt;
+    &lt;param name="serviceCategory"&gt;HugeQS&lt;/param&gt;
+    &lt;param name="serviceName"&gt;03_High_Price&lt;/param&gt;
+&lt;/resource-config&gt;
+
+&lt;!--
+    At the end of every order-item, bind together the orderDetail with the current
+    order item in a new HashMap and asign it under the beanId "03_order" in the bean
+    context.  03_order gets routed by the above config..
+--&gt;
+&lt;resource-config selector="order-item"&gt;
+    &lt;resource&gt;org.milyn.javabean.BeanPopulator&lt;/resource&gt;
+    &lt;param name="beanId"&gt;<span style="color: crimson;">03_order</span>&lt;/param&gt;
+    &lt;param name="beanClass"&gt;org.jboss.soa.esb.example.highprice.Order&lt;/param&gt;
+    &lt;param name="bindings"&gt;
+        &lt;binding property="firstName"&gt;accounts[0].FIRSTNAME&lt;/binding&gt;
+        &lt;binding property="lastName"&gt;accounts[0].LASTNAME&lt;/binding&gt;
+        &lt;binding property="address" selector="${03_address}" /&gt;
+        &lt;binding property="date"&gt;orderDetail.date&lt;/binding&gt;
+        &lt;binding property="product" selector="${03_product}" /&gt;
+        &lt;binding property="quantity"&gt;orderItem.quantity&lt;/binding&gt;
+    &lt;/param&gt;
+&lt;/resource-config&gt;
+
+&lt;resource-config selector="order-item"&gt;
+    &lt;resource&gt;org.milyn.javabean.BeanPopulator&lt;/resource&gt;
+    &lt;param name="beanId"&gt;03_address&lt;/param&gt;
+    &lt;param name="beanClass"&gt;org.jboss.soa.esb.example.highprice.Address&lt;/param&gt;
+    &lt;param name="bindings"&gt;
+        &lt;binding property="email"&gt;accounts[0].EMAIL&lt;/binding&gt;
+        &lt;binding property="address1"&gt;accounts[0].ADDR1&lt;/binding&gt;
+        &lt;binding property="address2"&gt;accounts[0].ADDR2&lt;/binding&gt;
+        &lt;binding property="city"&gt;accounts[0].CITY&lt;/binding&gt;
+        &lt;binding property="state"&gt;accounts[0].STATE&lt;/binding&gt;
+    &lt;/param&gt;
+&lt;/resource-config&gt;
+
+&lt;resource-config selector="order-item"&gt;
+    &lt;resource&gt;org.milyn.javabean.BeanPopulator&lt;/resource&gt;
+    &lt;param name="beanId"&gt;03_product&lt;/param&gt;
+    &lt;param name="beanClass"&gt;org.jboss.soa.esb.example.highprice.Product&lt;/param&gt;
+    &lt;param name="bindings"&gt;
+        &lt;binding property="id"&gt;product.PRODUCTID&lt;/binding&gt;
+        &lt;binding property="title"&gt;product.NAME&lt;/binding&gt;
+        &lt;binding property="category"&gt;product.CATEGORY&lt;/binding&gt;
+        &lt;binding property="price"&gt;product.LISTPRICE&lt;/binding&gt;
+    &lt;/param&gt;
+&lt;/resource-config&gt;</pre>
+
+    The first resource specifies the <code>FragmentRouter</code> resource for routing the contents of the "03_order" bean to
+    the "03_High_Price" Service, where the product price is greater than 190.00.  The other resources specify the <code>BeanPopulator</code>
+    resources required for creating and populating the the "03_order" bean Object Model.
+    <p/>
+    This configuration differs from the <a href="#routing-02_Low_Price">routing/route-to-02_Low_Price_Service.xml</a> configuration
+    in that this configuration is routing a Java Object Model as opposed to an XML blob.  Also, the binding configurations defined
+    in this configuration are different to those defined in the <a href="#bindings">bindings.xml</a> configuration because:
+    <ol>
+        <li>The data is being bound to a "Physical Object Model" Vs a "Virtual Object Model" i.e.
+            <a href="03_High_Price/src/org/jboss/soa/esb/example/highprice/Order.java">the Order class</a> Vs a simple HashMap.</li>
+        <li>They are "Expression Based Bindings" i.e. the values being bound into the Object Model are coming from expression evaluations defined
+            as the child text of the &lt;binding&gt; elements.  The bindings defined in <a href="#bindings">bindings.xml</a> are pulling
+            their values from the source message.  In the case of the expressions defined in this configuration, they are selecting  values from
+            the bean context.  The values being selected were bound to the context by the <a href="#refdata">database/ref-data.xml</a>
+            resources.</li>
+    </ol>
+
+    <h5 id="routing-04_Reptiles_notify_webservice_proxy">routing/route-to-04_Reptiles_notify_webservice_proxy.xml</h5>
+    This resource configuration file defines the routing resources for the "04_Reptiles_notify_webservice_proxy"
+    Service where the product category is "REPTILES":
+<pre>
+&lt;!--
+    At the end of every order-item, route the "Reptiles Notification" SOAP message ("04_SOAP_OrderItem") to the
+    "04_Reptiles_notify_webservice_proxy" Service, if the order item product.CATEGORY is "REPTILES"...
+--&gt;
+&lt;resource-config selector="order-item"&gt;
+    &lt;resource&gt;org.jboss.soa.esb.smooks.FragmentRouter&lt;/resource&gt;
+    &lt;condition&gt;
+        &lt;!--<i class="commentedcode">
+        product.CATEGORY == "REPTILES"
+        </i>--&gt;
+    &lt;/condition&gt;
+    &lt;param name="beanId"&gt;<span style="color: crimson;">04_SOAP_OrderItem</span>&lt;/param&gt;
+    &lt;param name="serviceCategory"&gt;HugeQS&lt;/param&gt;
+    &lt;param name="serviceName"&gt;04_Reptiles_notify_webservice_proxy&lt;/param&gt;
+&lt;/resource-config&gt;
+
+&lt;!--
+    At the end of every order-item, generate an &lt;ord&gt; split message for the "02_XML" Service
+    and bind it back into the bean context under a bean ID of "02_XML_OrderItem"...
+ --&gt;
+&lt;resource-config selector="order-item"&gt;
+    &lt;resource type="ftl"&gt;&lt;!--<i class="commentedcode">&lt;soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ord="http://ordermanagement/ReptilesNotifyWS"&gt;
+   &lt;soapenv:Header/&gt;
+   &lt;soapenv:Body&gt;
+      &lt;ord:notify&gt;
+         &lt;notification&gt;
+            &lt;date&gt;${orderDetail.date?string("yyyy-MM-dd'T'HH:mm:ss")}&lt;/date&gt;
+            &lt;email&gt;${accounts[0].EMAIL}&lt;/email&gt;
+            &lt;firstName&gt;${accounts[0].FIRSTNAME}&lt;/firstName&gt;
+            &lt;lastName&gt;${accounts[0].LASTNAME}&lt;/lastName&gt;
+            &lt;product&gt;${product.NAME} (${product.ATTR1})&lt;/product&gt;
+            &lt;quantity&gt;${orderItem.quantity}&lt;/quantity&gt;
+            &lt;totalPrice&gt;${product.LISTPRICE?c}&lt;/totalPrice&gt;
+         &lt;/notification&gt;
+      &lt;/ord:notify&gt;
+   &lt;/soapenv:Body&gt;
+&lt;/soapenv:Envelope&gt;</i>--&gt;&lt;/resource&gt;
+    &lt;param name="action"&gt;bindto&lt;/param&gt;
+    &lt;param name="bindId"&gt;<span style="color: crimson;">04_SOAP_OrderItem</span>&lt;/param&gt;
+&lt;/resource-config&gt;</pre>
+
+    This routing configuration is nearly identical to that defined in <a href="#routing-02_Low_Price">routing/route-to-02_Low_Price_Service.xml</a>.
+    The only difference is the format of the XML, the destination Service and the condition under which the message is to be routed.
+    <p/>
+    As can be seen in the <a href="#high-level">04_Reptiles_notify_webservice_proxy Service configuration</a>, these SOAP messages are routed to the
+    ReptilesNotifyWS Webservice using the <code>HttpRouter</code>.
+
+    <h5 id="routing-05_Database">routing/route-to-05_Database.xml</h5>
+    This resource configuration file defines the routing resources for routing Order Item data to the Database:
+<pre>
+&lt;!--
+    This resource is needed because we only want to limit the number or orders inserted into the database,
+    so we need to count them...
+--&gt;
+&lt;resource-config selector="order-item"&gt;
+    &lt;resource&gt;org.milyn.routing.db.SQLExecutor&lt;/resource&gt;
+    &lt;param name="executeBefore"&gt;true&lt;/param&gt;
+    &lt;param name="datasource"&gt;OrderManagement&lt;/param&gt;
+    &lt;param name="statement"&gt;<i class="commentedcode">select count(*) as "numOrders" from orders</i>&lt;/param&gt;
+    &lt;param name="resultSetName"&gt;<span style="color: crimson;">orderCountRS</span>&lt;/param&gt;
+&lt;/resource-config&gt;
+
+&lt;!--
+    At the end of every order-item, insert the order details for that order item...
+ --&gt;
+&lt;resource-config selector="order-item"&gt;
+    &lt;resource&gt;org.milyn.routing.db.SQLExecutor&lt;/resource&gt;
+    &lt;condition&gt;
+        &lt;!--
+        <span style="color: crimson;">orderCountRS</span>[0].numOrders &lt; 10
+        --&gt;
+    &lt;/condition&gt;
+    &lt;param name="executeBefore"&gt;false&lt;/param&gt;
+    &lt;param name="datasource"&gt;OrderManagement&lt;/param&gt;
+    &lt;param name="statement"&gt;<i class="commentedcode">INSERT INTO ORDERS VALUES(${orderDetail.orderNum + "-" + product.PRODUCTID}, ${accounts[0].USERID}, ${orderDetail.date}, ${accounts[0].ADDR1}, ${accounts[0].ADDR2}, ${accounts[0].CITY}, ${accounts[0].STATE},'30253','USA', ${accounts[0].ADDR1}, ${accounts[0].ADDR2}, ${accounts[0].CITY}, ${accounts[0].STATE},'30253','USA','UPS',22.23, ${accounts[0].FIRSTNAME}, ${accounts[0].LASTNAME}, ${accounts[0].FIRSTNAME}, ${accounts[0].LASTNAME},'999 9999 9999 9999','12/03','Visa','CA')</i>&lt;/param&gt;
+&lt;/resource-config&gt;</pre>    
+
+    The first resource simply queries the Orders table in the database to get a row count.  It binds the result to the bean context
+    under the resultSetName (beanId) of "orderCountRS".  This row count is then used as the condition on the second <code>SQLExecutor</code> resource,
+    which performs the inserts on the orders table. 
+
+    </div>
+</div>
+
+</body>
+</html>
\ No newline at end of file

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/build.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/build.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/build.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,134 @@
+<project name="Quickstart_Huge_Enrich_Split_Transform_Route" default="run" basedir=".">
+
+    <description>
+        ${ant.project.name}
+        ${line.separator}
+    </description>
+
+    <!-- Import the base Ant build script... -->
+    <import file="../conf/base-build.xml"/>
+
+    <target name="01_split_enrich_transform_route" depends="compile,compile_high_price_model" description="run split_transform_route Service">
+        <echo>Split Enrich Transform Route Service:</echo>
+        <java fork="yes" classname="org.jboss.soa.esb.listeners.StandAloneBootStrapper" failonerror="true">
+            <!-- jvmarg value="-Xdebug"/>
+            <jvmarg value="-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=y"/ -->
+            <arg value="${basedir}/01_split_enrich_transform_route/jbossesb.xml"/>
+            <classpath>
+                <fileset dir="05_Database" includes="hsqldb.jar"/>
+                <pathelement location="01_split_enrich_transform_route" />
+                <pathelement location="03_High_Price/classes" />
+                <path refid="exec-classpath" />
+            </classpath>
+        </java>
+    </target>
+
+    <target name="02_Low_Price" depends="compile" description="run 02_XML Service">
+        <echo>02_Low_Price Service:</echo>
+        <java fork="yes" classname="org.jboss.soa.esb.listeners.StandAloneBootStrapper" failonerror="true">
+            <arg value="${basedir}/02_Low_Price/jbossesb.xml"/>
+            <classpath>
+                <path refid="exec-classpath" />
+            </classpath>
+        </java>
+    </target>
+
+    <target name="03_High_Price" depends="compile_high_price_model" description="run 03_JavaObjects Service">
+        <echo>03_High_Price Service:</echo>
+        <java fork="yes" classname="org.jboss.soa.esb.listeners.StandAloneBootStrapper" failonerror="true">
+            <arg value="${basedir}/03_High_Price/jbossesb.xml"/>
+            <classpath>
+                <path refid="exec-classpath" />
+                <pathelement location="03_High_Price/classes" />
+            </classpath>
+        </java>
+    </target>
+
+    <target name="04_Reptiles_notify_webservice" depends="compile">
+        <antcall target="quickstart-specific-assemblies" />
+        <copy todir="${org.jboss.esb.server.deploy.dir}" file="build/${ant.project.name}.war"/>
+
+        <echo message="*" />
+        <echo message="****************************************************************************************************" />
+        <echo message="The Reptile Notification Webservice has been deployed to '${org.jboss.esb.server.deploy.dir}'." />
+        <echo message="****************************************************************************************************" />
+        <echo message="*" />
+    </target>
+
+    <target name="createMessage" depends="compile" description="Create the input message.">
+        <echo>Creating input message...</echo>
+        <input message="How many Order Items should the message contain? (Simply press return for 20 Order Items)" defaultvalue="20" addproperty="numOrderItems" />
+        <java fork="yes" classname="org.jboss.soa.esb.example.MessageGenerator" failonerror="true">
+            <arg value="${numOrderItems}"/>
+            <classpath refid="exec-classpath"/>
+        </java>
+    </target>
+
+    <target name="compile_high_price_model" depends="compile" >
+        <!-- Compile the 03_High_Price object model... -->
+        <delete dir="03_High_Price/classes" />
+        <mkdir dir="03_High_Price/classes" />
+        <javac srcdir="03_High_Price/src" destdir="03_High_Price/classes" debug="true" deprecation="true">
+            <classpath refid="compile-classpath" />
+        </javac>
+    </target>
+
+    <target name="generate_order_binding_template" depends="compile_high_price_model" description="Generate 03_High_Price Order Binding Template">
+        <java fork="yes" classname="org.milyn.javabean.gen.ConfigGenerator" failonerror="true">
+            <arg value="-c"/>
+            <arg value="org.jboss.soa.esb.example.highprice.Order"/>
+            <arg value="-o"/>
+            <arg value="01_split_enrich_transform_route/smooks_configs/routing/order-binding-template.xml"/>                      
+            <classpath>
+                <path refid="exec-classpath" />
+                <pathelement location="03_High_Price/classes" />
+            </classpath>
+        </java>
+    </target>
+
+    <target name="select" description="Select the orders from the database">
+        <sql print="true" driver="org.hsqldb.jdbcDriver" url="jdbc:hsqldb:hsql://localhost:9002" userid="sa" autocommit="true" password="" classpath="05_Database/hsqldb.jar">
+            <transaction>select * from orders</transaction>
+        </sql>
+    </target>
+
+    <target name="delete" description="Delete the orders in the database">
+        <sql print="true" driver="org.hsqldb.jdbcDriver" url="jdbc:hsqldb:hsql://localhost:9002" userid="sa" autocommit="true" password="" classpath="05_Database/hsqldb.jar">
+            <transaction>delete from orders</transaction>
+        </sql>
+    </target>
+
+    <target name="quickstart-specific-checks" depends="assert-ws-available"/>
+
+    <target name="quickstart-specific-dependencies">
+        <path id="quickstart-dependencies-classpath">
+            <fileset dir="${org.jboss.esb.server.home}/client" includes="jbossws-client.jar,jboss-remoting.jar" />
+        </path>
+    </target>
+
+    <target name="quickstart-specific-assemblies">
+
+        <!-- Compile the 03_High_Price object model... -->
+        <delete dir="03_High_Price/classes" />
+        <mkdir dir="03_High_Price/classes" />
+        <javac srcdir="03_High_Price/src" destdir="03_High_Price/classes" debug="true" deprecation="true">
+            <classpath refid="compile-classpath" />
+        </javac>
+
+        <!-- Compile the webservice... -->
+        <delete dir="04_Reptiles_notify_webservice/WEB-INF/classes" />
+        <mkdir dir="04_Reptiles_notify_webservice/WEB-INF/classes" />
+        <javac srcdir="04_Reptiles_notify_webservice/WEB-INF/src" destdir="04_Reptiles_notify_webservice/WEB-INF/classes" debug="true" deprecation="true">
+            <classpath refid="compile-classpath" />
+        </javac>
+
+        <!-- Assemble the webservice... -->
+        <war warfile="build/${ant.project.name}.war" webxml="04_Reptiles_notify_webservice/WEB-INF/web.xml" basedir="04_Reptiles_notify_webservice" />
+    </target>    
+
+    <target name="quickstart-specific-clean">
+        <delete dir="03_High_Price/classes" />
+        <delete dir="04_Reptiles_notify_webservice/WEB-INF/classes" />
+    </target>
+
+</project>


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/build.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/docs/02_Low_Price.gif
===================================================================
(Binary files differ)


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/docs/02_Low_Price.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/docs/Overview.odp
===================================================================
(Binary files differ)


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/docs/Overview.odp
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/docs/Overview.png
===================================================================
(Binary files differ)


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/docs/Overview.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/docs/datasource-vafter.gif
===================================================================
(Binary files differ)


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/docs/datasource-vafter.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/docs/datasource-vbefore.gif
===================================================================
(Binary files differ)


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/docs/datasource-vbefore.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/docs/source-model.gif
===================================================================
(Binary files differ)


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/docs/source-model.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jbm-queue-service.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jbm-queue-service.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jbm-queue-service.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<server>
+    <mbean code="org.jboss.jms.server.destination.QueueService"
+           name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_HugeSplitTransRoute_02_XML"
+           xmbean-dd="xmdesc/Queue-xmbean.xml">
+        <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends>
+        <depends>jboss.messaging:service=PostOffice</depends>
+    </mbean>
+    <mbean code="org.jboss.jms.server.destination.QueueService"
+           name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_HugeSplitTransRoute_JavaObjects"
+           xmbean-dd="xmdesc/Queue-xmbean.xml">
+        <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends>
+        <depends>jboss.messaging:service=PostOffice</depends>
+    </mbean>
+</server>
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jbm-queue-service.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jbmq-queue-service.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jbmq-queue-service.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jbmq-queue-service.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<server>
+    <mbean code="org.jboss.mq.server.jmx.Queue"
+           name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_HugeSplitTransRoute_02_XML">
+        <depends optional-attribute-name="DestinationManager">
+            jboss.mq:service=DestinationManager
+        </depends>
+    </mbean>
+    <mbean code="org.jboss.mq.server.jmx.Queue"
+           name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_HugeSplitTransRoute_JavaObjects">
+        <depends optional-attribute-name="DestinationManager">
+            jboss.mq:service=DestinationManager
+        </depends>
+    </mbean>
+</server>
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jbmq-queue-service.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jbossesb-properties.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jbossesb-properties.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+  JBoss, Home of Professional Open Source
+  Copyright 2006, JBoss Inc., and others contributors as indicated 
+  by the @authors tag. All rights reserved. 
+  See the copyright.txt in the distribution for a
+  full listing of individual contributors. 
+  This copyrighted material is made available to anyone wishing to use,
+  modify, copy, or redistribute it subject to the terms and conditions
+  of the GNU Lesser General Public License, v. 2.1.
+  This program is distributed in the hope that it will be useful, but WITHOUT A 
+  WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A 
+  PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+  You should have received a copy of the GNU Lesser General Public License,
+  v.2.1 along with this distribution; if not, write to the Free Software
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 
+  MA  02110-1301, USA.
+  
+  (C) 2005-2006,
+  @author JBoss Inc.
+-->
+<!-- $Id: jbossesb-unittest-properties.xml $ -->
+<!--
+  These options are described in the JBossESB manual.
+  Defaults are provided here for convenience only.
+ 
+  Please read through this file prior to using the system, and consider
+  updating the specified entries.
+-->
+<esb
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:noNamespaceSchemaLocation="jbossesb-1_0.xsd">
+    <properties name="core">
+		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
+		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
+		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+    </properties>
+    <properties name="registry">      
+    	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		
+    		value="jnp://localhost:1099/InquiryService?org.apache.juddi.registry.rmi.Inquiry#inquire"/>    		
+    	<property name="org.jboss.soa.esb.registry.lifeCycleManagerURI"     		
+    		value="jnp://localhost:1099/PublishService?org.apache.juddi.registry.rmi.Publish#publish" />
+    	<property name="org.jboss.soa.esb.registry.implementationClass" 
+    		value="org.jboss.internal.soa.esb.services.registry.JAXRRegistryImpl"/>
+    	<property name="org.jboss.soa.esb.registry.factoryClass" 
+    		value="org.apache.ws.scout.registry.ConnectionFactoryImpl"/>
+    	<property name="org.jboss.soa.esb.registry.user" 
+    		value="jbossesb"/>
+    	<property name="org.jboss.soa.esb.registry.password" 
+    	  value="password"/>
+    	<!-- the following parameter is scout specific to set the type of communication between scout and the UDDI (embedded, rmi, soap) -->
+    	<property name="org.jboss.soa.esb.scout.proxy.transportClass" 
+    		value="org.apache.ws.scout.transport.RMITransport"/>
+    </properties>
+    <properties name="transports" depends="core">
+    	<property name="org.jboss.soa.esb.mail.smtp.host" value="localhost"/>
+    	<property name="org.jboss.soa.esb.mail.smtp.user" value="jbossesb"/>
+    	<property name="org.jboss.soa.esb.mail.smtp.password" value=""/>
+    	<property name="org.jboss.soa.esb.mail.smtp.port" value="25"/>
+    </properties>
+    <properties name="connection">
+    	<property name="min-pool-size" value="5"/>
+    	<property name="max-pool=size" value="10"/>
+    	<property name="blocking-timeout-millis" value="5000"/>
+    	<property name="abandoned-connection-timeout" value="10000"/>
+    	<property name="abandoned-connection-time-interval" value="30000"/>
+    </properties>
+    <properties name="dbstore">
+		<property name="org.jboss.soa.esb.persistence.db.connection.url" 	value="jdbc:hsqldb:hsql://localhost:9001/"/>
+		<property name="org.jboss.soa.esb.persistence.db.jdbc.driver" 		value="org.hsqldb.jdbcDriver"/>
+		<property name="org.jboss.soa.esb.persistence.db.user" 			value="sa"/>
+		<property name="org.jboss.soa.esb.persistence.db.pwd" 			value=""/>		
+		<property name="org.jboss.soa.esb.persistence.db.pool.initial.size"	value="2"/>
+		<property name="org.jboss.soa.esb.persistence.db.pool.min.size"	value="2"/>
+		<property name="org.jboss.soa.esb.persistence.db.pool.max.size"	value="5"/>
+		<!--table managed by pool to test for valid connections - created by pool automatically -->
+		<property name="org.jboss.soa.esb.persistence.db.pool.test.table"	value="pooltest"/>
+		<!-- # of milliseconds to timeout waiting for a connection from pool -->
+		<property name="org.jboss.soa.esb.persistence.db.pool.timeout.millis"	value="5000"/> 
+                <property name="org.jboss.soa.esb.persistence.db.conn.manager" value="org.jboss.internal.soa.esb.persistence.manager.StandaloneConnectionManager"/>
+    </properties>
+    <properties name="messagerouting">
+    	<property name="org.jboss.soa.esb.routing.cbrClass" value="org.jboss.internal.soa.esb.services.routing.cbr.JBossRulesRouter"/>
+    </properties>
+</esb>


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jbossesb-properties.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jndi.properties
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jndi.properties	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jndi.properties	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,5 @@
+java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
+java.naming.provider.url=jnp://localhost:1099
+java.naming.factory.url.pkgs=org.jboss.naming
+java.naming.factory.url.pkgs=org.jnp.interfaces
+


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/jndi.properties
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/juddi.properties
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/juddi.properties	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/juddi.properties	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,69 @@
+# jUDDI Registry Properties (used by RegistryServer)
+# see http://www.juddi.org for more information
+
+# The UDDI Operator Name
+juddi.operatorName = jUDDI.org
+
+# The i18n locale default codes
+juddi.i18n.languageCode = en
+juddi.i18n.countryCode = US
+
+# The UDDI DiscoveryURL Prefix
+juddi.discoveryURL = http://localhost:8080/juddi/uddiget.jsp?
+
+# The UDDI Operator Contact Email Address
+juddi.operatorEmailAddress = admin at juddi.org
+
+# The maximum name size and maximum number
+# of name elements allows in several of the
+# FindXxxx and SaveXxxx UDDI functions.
+juddi.maxNameLength=255
+juddi.maxNameElementsAllowed=5
+
+# The maximum number of UDDI artifacts allowed
+# per publisher. A value of '-1' indicates any 
+# number of artifacts is valid (These values can be
+# overridden at the individual publisher level).
+juddi.maxBusinessesPerPublisher=25
+juddi.maxServicesPerBusiness=20
+juddi.maxBindingsPerService=10
+juddi.maxTModelsPerPublisher=100
+
+# jUDDI Authentication module to use
+juddi.auth = org.apache.juddi.auth.DefaultAuthenticator
+
+# jUDDI DataStore module currently to use
+juddi.dataStore = org.apache.juddi.datastore.jdbc.JDBCDataStore
+
+# use a dataSource (if set to false a direct 
+# jdbc connection will be used.
+juddi.isUseDataSource=false
+juddi.jdbcDriver=com.mysql.jdbc.Driver
+juddi.jdbcUrl=jdbc:mysql://localhost:3306/juddi
+juddi.jdbcUsername=root
+juddi.jdbcPassword=admin
+# jUDDI DataSource to use
+# juddi.dataSource=java:comp/env/jdbc/MySqlDS
+
+# jUDDI UUIDGen implementation to use
+juddi.uuidgen = org.apache.juddi.uuidgen.DefaultUUIDGen
+
+# jUDDI Cryptor implementation to use
+juddi.cryptor = org.apache.juddi.cryptor.DefaultCryptor
+ 
+# jUDDI Validator to use
+juddi.validator=org.apache.juddi.validator.DefaultValidator
+
+# jUDDI Proxy Properties (used by RegistryProxy)
+juddi.proxy.adminURL = http://localhost:8080/juddi/admin
+juddi.proxy.inquiryURL = http://localhost:8080/juddi/inquiry
+juddi.proxy.publishURL = http://localhost:8080/juddi/publish
+juddi.proxy.transportClass = org.apache.juddi.proxy.AxisTransport
+juddi.proxy.securityProvider = com.sun.net.ssl.internal.ssl.Provider
+juddi.proxy.protocolHandler = com.sun.net.ssl.internal.www.protocol
+
+# JNDI settings (used by RMITransport)
+java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
+java.naming.provider.url=jnp://localhost:1099
+java.naming.factory.url.pkgs=org.jboss.naming
+  


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/juddi.properties
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/log4j.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/log4j.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/log4j.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
+
+<!-- ===================================================================== -->
+<!--                                                                       -->
+<!--  Log4j Configuration                                                  -->
+<!--                                                                       -->
+<!-- ===================================================================== -->
+
+<!-- $Id: log4j.xml,v 1.26.2.5 2005/09/15 09:31:02 dimitris Exp $ -->
+
+<!--
+   | For more configuration infromation and examples see the Jakarta Log4j
+   | owebsite: http://jakarta.apache.org/log4j
+ -->
+
+<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
+
+   <!-- ============================== -->
+   <!-- Append messages to the console -->
+   <!-- ============================== -->
+
+   <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
+      <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+      <param name="Target" value="System.out"/>
+
+      <layout class="org.apache.log4j.PatternLayout">
+         <!-- The default pattern: Date Priority [Category] Message\n -->
+         <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%t][%c{1}] %m%n"/>
+      </layout>
+   </appender>
+
+   <!-- ================================= -->
+   <!-- Preserve messages in a local file -->
+   <!-- ================================= -->
+
+   <!-- A size based file rolling appender -->
+   <appender name="FILE" class="org.jboss.logging.appender.RollingFileAppender">
+     <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+     <param name="File" value="./listener.log"/>
+     <param name="Append" value="false"/>
+     <param name="MaxFileSize" value="500KB"/>
+     <param name="MaxBackupIndex" value="1"/>
+
+     <layout class="org.apache.log4j.PatternLayout">
+       <param name="ConversionPattern" value="%d %-5p [%t][%c] %m%n"/>
+     </layout>	    
+   </appender>
+
+   <!-- ================ -->
+   <!-- Limit categories -->
+   <!-- ================ -->
+
+    <category name="org">
+       <priority value="INFO"/>
+    </category>
+   <category name="org.jboss">
+      <priority value="WARN"/>
+   </category>
+   <category name="org.jboss.soa.esb">
+      <priority value="INFO"/>
+   </category>
+   <category name="org.jboss.internal.soa.esb">
+      <priority value="ERROR"/>
+   </category>
+   <category name="org.apache">
+      <priority value="ERROR"/>
+   </category>
+   <category name="quickstart">
+      <priority value="INFO"/>
+   </category>
+   <!-- ======================= -->
+   <!-- Setup the Root category -->
+   <!-- ======================= -->
+
+   <root>
+      <appender-ref ref="CONSOLE"/>
+      <appender-ref ref="FILE"/>
+   </root>
+
+</log4j:configuration>


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/log4j.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/jboss/soa/esb/example/MessageGenerator.java
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/jboss/soa/esb/example/MessageGenerator.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/jboss/soa/esb/example/MessageGenerator.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,72 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.example;
+
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Random;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class MessageGenerator {
+
+    public static void main(String[] args) throws IOException {
+        long start = System.currentTimeMillis();
+
+        if(args.length != 1) {
+            throw new RuntimeException("Must be a single 'numOrderItems' arg.");
+        }
+
+        int numOrderItems = Integer.parseInt(args[0].trim());
+
+        File outFileFile = new File("build/xxx." + start + ".xxx");
+        FileWriter messageFile = new FileWriter(outFileFile);
+        try {
+            messageFile.write("HDR*" + start + "*0*Wed Nov 15 13:45:28 EST 2006\n");
+            messageFile.write("CUS*ACID\n");
+
+            Random random = new Random();
+            for (int i = 0; i < numOrderItems; i++) {
+                String productId = products.get(random.nextInt(products.size()));
+
+                messageFile.write("ORD*" + i + "*" + (random.nextInt(5) + 1) + "*" + productId + "\n");
+                messageFile.flush();
+            }
+        } finally {            
+            messageFile.flush();
+            messageFile.close();
+
+            outFileFile.renameTo(new File("build/" + start + ".edi"));
+            System.out.println("Finished.  Took " + ((System.currentTimeMillis() - start) / 1000) + " seconds");
+        }
+    }
+
+    private static List<String> products;
+
+    static {
+        products = Arrays.asList(
+                new String[] {"FI-SW-01", "FI-SW-02", "FI-FW-01", "FI-FW-02", "K9-BD-01", "K9-PO-02", "K9-DL-01", "K9-RT-01", "K9-RT-02", "K9-CW-01", "RP-SN-01", "RP-LI-02", "FL-DSH-01", "FL-DLH-02", "AV-CB-01", "AV-SB-02"}
+        );
+    }
+}
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/jboss/soa/esb/example/MessageGenerator.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/jboss/soa/esb/example/PrintMessage.java
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/jboss/soa/esb/example/PrintMessage.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/jboss/soa/esb/example/PrintMessage.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,54 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.example;
+
+import org.apache.log4j.Logger;
+import org.jboss.soa.esb.actions.AbstractActionPipelineProcessor;
+import org.jboss.soa.esb.actions.ActionProcessingException;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.message.Message;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class PrintMessage extends AbstractActionPipelineProcessor {
+    private int delay;
+
+    public PrintMessage(ConfigTree config) {
+        delay = Integer.parseInt(config.getAttribute("delay", "100"));
+    }
+
+    public Message process(Message message) throws ActionProcessingException {
+
+        System.out.println("--------Message Received-----------");
+        Object payload = message.getBody().get();
+        System.out.println(payload.getClass().getName() + ":");
+        System.out.println(payload);
+        System.out.println("-----------------------------------");
+
+        try {
+            Thread.sleep(delay);
+        } catch (InterruptedException e) {
+            // ignore it
+        }
+
+        return message;
+    }
+}


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/jboss/soa/esb/example/PrintMessage.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/jboss/soa/esb/example/PrintVisitor.java
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/jboss/soa/esb/example/PrintVisitor.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/jboss/soa/esb/example/PrintVisitor.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,41 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.example;
+
+import org.milyn.SmooksException;
+import org.milyn.cdr.annotation.ConfigParam;
+import org.milyn.container.ExecutionContext;
+import org.milyn.delivery.sax.SAXElement;
+import org.milyn.delivery.sax.SAXVisitBefore;
+
+import java.io.IOException;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class PrintVisitor implements SAXVisitBefore {
+
+    @ConfigParam
+    private String message;
+
+    public void visitBefore(SAXElement element, ExecutionContext executionContext) throws SmooksException, IOException {
+        System.out.println(element + ": " + message);
+    }
+}


Property changes on: labs/jbossesb/trunk/product/samples/quickstarts/huge-split-enrich-transform-route/src/org/jboss/soa/esb/example/PrintVisitor.java
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: labs/jbossesb/trunk/product/samples/quickstarts/smooks_file_splitter_router/jboss-esb-unfiltered.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/smooks_file_splitter_router/jboss-esb-unfiltered.xml	2008-06-18 10:07:55 UTC (rev 20576)
+++ labs/jbossesb/trunk/product/samples/quickstarts/smooks_file_splitter_router/jboss-esb-unfiltered.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -68,7 +68,7 @@
                    		<property name="logLevel"	value="info"/>
 					</action>
 
-					<action name="transform" class="org.jboss.soa.esb.actions.smooks.SmooksAction">
+					<action name="transform" class="org.jboss.soa.esb.smooks.SmooksAction">
 						<property name="smooksConfig" value="smooks-config.xml" />
 					</action>
 

Modified: labs/jbossesb/trunk/product/samples/quickstarts/smooks_file_splitter_router/jboss-esb.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/smooks_file_splitter_router/jboss-esb.xml	2008-06-18 10:07:55 UTC (rev 20576)
+++ labs/jbossesb/trunk/product/samples/quickstarts/smooks_file_splitter_router/jboss-esb.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -68,7 +68,7 @@
                    		<property name="logLevel"	value="info"/>
 					</action>
 
-					<action name="transform" class="org.jboss.soa.esb.actions.smooks.SmooksAction">
+					<action name="transform" class="org.jboss.soa.esb.smooks.SmooksAction">
 						<property name="smooksConfig" value="smooks-config.xml" />
 					</action>
 

Modified: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-commons-1.0.jar
===================================================================
(Binary files differ)

Modified: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-edisax-0.3.jar
===================================================================
(Binary files differ)

Modified: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-edisax-model-0.3.jar
===================================================================
(Binary files differ)

Modified: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-magger-0.1.3.jar
===================================================================
(Binary files differ)

Added: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-core-1.0.1.jar
===================================================================
(Binary files differ)


Property changes on: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-core-1.0.1.jar
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Deleted: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-core-1.0.jar
===================================================================
(Binary files differ)

Added: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-css-1.0.1.jar
===================================================================
(Binary files differ)


Property changes on: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-css-1.0.1.jar
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Deleted: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-css-1.0.jar
===================================================================
(Binary files differ)

Added: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-csv-1.0.1.jar
===================================================================
(Binary files differ)


Property changes on: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-csv-1.0.1.jar
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Deleted: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-csv-1.0.jar
===================================================================
(Binary files differ)

Added: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-edi-1.0.1.jar
===================================================================
(Binary files differ)


Property changes on: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-edi-1.0.1.jar
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Deleted: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-edi-1.0.jar
===================================================================
(Binary files differ)

Added: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-javabean-1.0.1.jar
===================================================================
(Binary files differ)


Property changes on: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-javabean-1.0.1.jar
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Deleted: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-javabean-1.0.jar
===================================================================
(Binary files differ)

Added: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-misc-1.0.1.jar
===================================================================
(Binary files differ)


Property changes on: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-misc-1.0.1.jar
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Deleted: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-misc-1.0.jar
===================================================================
(Binary files differ)

Added: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-routing-1.0.1.jar
===================================================================
(Binary files differ)


Property changes on: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-routing-1.0.1.jar
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Deleted: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-routing-1.0.jar
===================================================================
(Binary files differ)

Added: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-scripting-1.0.1.jar
===================================================================
(Binary files differ)


Property changes on: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-scripting-1.0.1.jar
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Deleted: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-scripting-1.0.jar
===================================================================
(Binary files differ)

Added: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-servlet-1.0.1.jar
===================================================================
(Binary files differ)


Property changes on: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-servlet-1.0.1.jar
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Deleted: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-servlet-1.0.jar
===================================================================
(Binary files differ)

Added: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-templating-1.0.1.jar
===================================================================
(Binary files differ)


Property changes on: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-templating-1.0.1.jar
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Deleted: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-smooks-templating-1.0.jar
===================================================================
(Binary files differ)

Modified: labs/jbossesb/trunk/product/services/smooks/lib/ext/milyn-tinak-0.8.1.jar
===================================================================
(Binary files differ)

Deleted: labs/jbossesb/trunk/product/services/smooks/lib/ext/mvel-1.2.24-java1.5.jar
===================================================================
(Binary files differ)

Added: labs/jbossesb/trunk/product/services/smooks/lib/ext/mvel-1.3.3-java1.5.jar
===================================================================
(Binary files differ)


Property changes on: labs/jbossesb/trunk/product/services/smooks/lib/ext/mvel-1.3.3-java1.5.jar
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Modified: labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/converters/SmooksInstanceManager.java
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/converters/SmooksInstanceManager.java	2008-06-18 10:07:55 UTC (rev 20576)
+++ labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/converters/SmooksInstanceManager.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -84,6 +84,12 @@
         try {
             Smooks instance = new Smooks(configurationSourceURI);
             addBaseConfigs(instance);
+
+            // We need to disable the resource config store's shutdown hook
+            // because the ESB container lifecycle handles this through
+            // calling the destroy method...
+            instance.getApplicationContext().getStore().removeShutdownHook();
+
             return instance;
         } catch (SAXException e) {
             throw new SmooksException("Invalid Smooks resource config '" + configurationSourceURI + "'.", e);

Modified: labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/converters/SmooksTransformer.java
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/converters/SmooksTransformer.java	2008-06-18 10:07:55 UTC (rev 20576)
+++ labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/converters/SmooksTransformer.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -19,14 +19,6 @@
  */
 package org.jboss.soa.esb.actions.converters;
 
-import java.io.ByteArrayInputStream;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
 import org.apache.log4j.Logger;
 import org.jboss.soa.esb.ConfigurationException;
 import org.jboss.soa.esb.actions.ActionLifecycleException;
@@ -50,6 +42,9 @@
 import org.milyn.profile.ProfileStore;
 import org.milyn.profile.UnknownProfileMemberException;
 
+import java.io.ByteArrayInputStream;
+import java.util.*;
+
 /**
  * Smooks Transformer.
  * <p/>
@@ -122,6 +117,7 @@
  *
  * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
  * @since Version 4.0
+ * @deprecated Use {@link org.jboss.soa.esb.smooks.SmooksAction}.
  */
 
 public class SmooksTransformer implements TransformationService, ActionPipelineProcessor {

Modified: labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/smooks/SmooksAction.java
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/smooks/SmooksAction.java	2008-06-18 10:07:55 UTC (rev 20576)
+++ labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/smooks/SmooksAction.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -43,211 +43,15 @@
 /**
  * Smooks pipeline processor action.
  * <p/>
- * Usage:
- * <pre>
- * &lt;action name="transform" class="org.jboss.soa.esb.actions.smooks.SmooksAction"&gt;
- * 	&lt;property name="smooksConfig" value="smooks-config.xml" /&gt;
- * &lt;/action&gt;
+ * <b>MOVED to {@link org.jboss.soa.esb.smooks}</b>
  *
- * Optional properties:
- * &lt;property name="get-payload-location" value="input" /&gt;
- * &lt;property name="set-payload-location" value="ouput" /&gt;
- * &lt;property name="excludeNonSerializables" value="false" /&gt;
- * &lt;property name="resultType" value="STRING" /&gt;
- * &lt;property name="reportPath" value="/tmp/smooks-report.html" /&gt;
- * </pre>
- * 
- * Description of configuration properties:
- * <ul>
- * <li><i>smooksConfig</i> - the Smooks configuration file. Can be a path on the file system or on the classpath.
- * <li><i>get-payload-location</i> - the body location which contains the object to be transformed.
- * <li><i>set-payload-location</i> - the body location where the transformed object will be placed.
- * <li><i>excludeNonSerializables</i> - if true, non serializable attributes from the Smooks ExecutionContext will no be included. Default is true.
- * <li><i>resultType</i> - type of result expected from Smooks ("STRING", "BYTES", "JAVA", "NORESULT"). Default is "STRING".
- * <li><i>javaResultBeanId</i> - specifies the Smooks bean context beanId to be mapped as the result when the resultType is "JAVA".  If not specified,
- *                               the whole bean context bean Map is mapped as the result. 
- * <li><i>reportPath</i> - specifies the path and file name for generating a Smooks Execution Report.  This is a development tool.
- * </ul>
- * After Smooks has performed the filtering the process method will make the attributes that have been set in the
- * the ExecutionContext available for other actions in the ESB.
- * <p/>
- * The attributes (Map) can be accessed by using the {@link #EXECUTION_CONTEXT_ATTR_MAP_KEY} key like this:
- * <pre>
- * message.getBody().get( EXECUTION_CONTEXT_ATTR_MAP_KEY );
- * </pre>
- *
- * <h3>Specifying the Source and Result Types</h3>
- * From the ESB Message data type, this action is able to automatically determine the type of
- * {@link javax.xml.transform.Source} to use (via the Smooks {@link PayloadProcessor}).  The
- * {@link javax.xml.transform.Result} type to be used can be specified via the "resultType"
- * property, as outlined above.
- * <p/>
- * It is expected that the above mechanism will be satisfactory for most usecase, but not all.
- * For the other usecases, this action supports {@link org.milyn.container.plugin.SourceResult}
- * payloads on the ESB Message.  This allows you to manually specify other Source and Result
- * types, which is of particular interest with respect to the Result type e.g. for streaming
- * the Result to a file etc.
- * 
  * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
  * @author <a href="mailto:daniel.bevenius at gmail.com">daniel.bevenius at gmail.com</a>
+ * @deprecated This class has been moved to {@link org.jboss.soa.esb.smooks}.
  */
-public class SmooksAction extends AbstractActionPipelineProcessor 
+public class SmooksAction extends org.jboss.soa.esb.smooks.SmooksAction 
 {
-    public static final String EXECUTION_CONTEXT_ATTR_MAP_KEY = "SmooksExecutionContext";
-    
-    private Smooks smooks;
-    
-	private PayloadProcessor payloadProcessor;
-
-	private MessagePayloadProxy payloadProxy;
-
-	private boolean excludeNonSerializables;
-
-    private String reportPath;
-
-    // public 
-    
-    public SmooksAction( final ConfigTree configTree ) throws ConfigurationException 
-    {
-        final String smooksConfig = configTree.getRequiredAttribute("smooksConfig");
-        try 
-        {
-            smooks = new Smooks(smooksConfig);
-        }
-        catch (Exception e) 
-        {
-            throw new ConfigurationException("Failed to create Smooks instance for config '" + smooksConfig + "'.", e);
-        }
-
-        // Create the Smooks PayloadProcessor...
-        String resultTypeConfig = configTree.getAttribute("resultType", "STRING");
-        ResultType resultType;
-        try {
-            resultType = ResultType.valueOf(resultTypeConfig);
-        } catch(IllegalArgumentException e) {
-            throw new ConfigurationException("Invalid 'resultType' config value '" + resultTypeConfig + "'.  Valid values are: " + Arrays.asList(ResultType.values()));
-        }
-        payloadProcessor = new PayloadProcessor( smooks, resultType );
-        if(resultType == ResultType.JAVA) {
-            String javaResultBeanId = configTree.getAttribute("javaResultBeanId");
-            if(javaResultBeanId != null) {
-                payloadProcessor.setJavaResultBeanId(javaResultBeanId);
-            }
-        }
-
-        payloadProxy = new MessagePayloadProxy( configTree );
-        excludeNonSerializables = Boolean.valueOf( configTree.getAttribute( "excludeNonSerializables", "true" ) );
-
-        reportPath = configTree.getAttribute("reportPath");
+    public SmooksAction( final ConfigTree configTree ) throws ConfigurationException {
+        super(configTree);
     }
-    
-    /**
-     * Executes the actual Smooks tranformation.
-     * 
-     * @param message	The ESB Message object
-     * 
-     * @return			The ESB Message object with the output of the transformation.
-     * 					
-     */
-	public Message process( final Message message) throws ActionProcessingException 
-	{
-		//	Create Smooks ExecutionContext.
-        final ExecutionContext executionContext = createExecutionContext( smooks );
-
-        if(reportPath != null) {
-            try {
-                executionContext.setEventListener(new HtmlReportGenerator(reportPath));
-            } catch (IOException e) {
-                throw new ActionProcessingException("Failed to create HtmlReportGenerator instance.", e);
-            }
-        }
-        
-        //	Use the Smooks PayloadProcessor to execute the transformation....
-        final Object newPayload = payloadProcessor.process( extractPayload( message), executionContext );
-        
-        //	Set the ExecutionContext's attributes on the message instance so other actions can access them.
-        message.getBody().add( EXECUTION_CONTEXT_ATTR_MAP_KEY, getSerializableObjectsMap( executionContext.getAttributes() ) );
-        
-        return packagePayload( newPayload, message );
-    }
-
-    @Override
-    public void destroy() throws ActionLifecycleException 
-    {
-        smooks.close();
-        super.destroy();
-    }
-    
-    // protected
-    
-    /*
-     * 	Hook for subclasses to control how the execution context is created. 
-     * 	Might be useful for Actions that use profiles for example. 
-     */
-	protected ExecutionContext createExecutionContext( final Smooks smooks )
-	{
-		return smooks.createExecutionContext();
-	}
-    
-    /*
-     * 	Hook for subclasses to extract the message payload in
-     * 	any way they see fit.
-     */
-    protected Object extractPayload(final Message message ) throws ActionProcessingException 
-    {
-    	try
-		{
-			return payloadProxy.getPayload( message );
-		} 
-    	catch (MessageDeliverException e)
-		{
-    		throw new ActionProcessingException("MessgeDeliveryException while trying to retrieve the message payload:", e);
-		}
-    }
-    
-    /*
-     * 	Hook for subclasses so they can control what and where the payload
-     * 	is added to the ESB Message object.
-     */
-    protected Message packagePayload( final Object payload, Message message ) throws ActionProcessingException
-    {
-    	try
-		{
-			payloadProxy.setPayload( message, payload );
-            return message;
-		} 
-    	catch (MessageDeliverException e)
-		{
-    		throw new ActionProcessingException("MessgeDeliveryException while trying to retrieve the message payload:", e);
-			
-		}
-    }
-
-    /**
-     * Will return a Map containing only the Serializable objects 
-     * that exist in the passed-in Map if {@link #excludeNonSerializables} is true.
-     * 
-     * @param smooksAttribuesMap 	- Map containing attributes from the Smooks ExecutionContext
-     * @return Map	- Map containing only the Serializable objects from the passed-in map.
-     */
-    @SuppressWarnings( "unchecked" )
-	protected Map getSerializableObjectsMap( final Map smooksAttribuesMap )
-	{
-    	if ( !excludeNonSerializables )
-    		return smooksAttribuesMap;
-    	
-		Map smooksExecutionContextMap = new HashMap();
-		
-		Set<Map.Entry> s = smooksAttribuesMap.entrySet();
-		for (Map.Entry me : s) 
-		{
-			Object value = me.getValue();
-			if( value instanceof Serializable )
-			{
-				smooksExecutionContextMap.put( me.getKey(), value );
-			}
-		}
-		return smooksExecutionContextMap;
-	}
-    
 }

Added: labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/FragmentRouter.java
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/FragmentRouter.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/FragmentRouter.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,124 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.smooks;
+
+import org.apache.log4j.Logger;
+import org.jboss.soa.esb.client.ServiceInvoker;
+import org.jboss.soa.esb.listeners.message.MessageDeliverException;
+import org.jboss.soa.esb.message.Body;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.message.MessagePayloadProxy;
+import org.jboss.soa.esb.message.format.MessageFactory;
+import org.milyn.SmooksException;
+import org.milyn.event.report.annotation.VisitBeforeReport;
+import org.milyn.event.report.annotation.VisitAfterReport;
+import org.milyn.cdr.annotation.ConfigParam;
+import org.milyn.container.ExecutionContext;
+import org.milyn.delivery.annotation.Initialize;
+import org.milyn.delivery.annotation.VisitAfterIf;
+import org.milyn.delivery.annotation.VisitBeforeIf;
+import org.milyn.delivery.dom.DOMElementVisitor;
+import org.milyn.delivery.sax.SAXElement;
+import org.milyn.delivery.sax.SAXVisitAfter;
+import org.milyn.delivery.sax.SAXVisitBefore;
+import org.milyn.javabean.BeanAccessor;
+import org.w3c.dom.Element;
+
+import java.io.IOException;
+import java.io.Serializable;
+
+/**
+ * ESB Message Fragment Router.
+ *
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+ at VisitBeforeIf(	condition = "parameters.containsKey('routeBefore') && parameters.routeBefore.value == 'true'")
+ at VisitAfterIf(	condition = "!parameters.containsKey('routeBefore') || parameters.routeBefore.value != 'true'")
+ at VisitBeforeReport(summary = "Routing contents of beanId '${resource.parameters.beanId}' to Service '${resource.parameters.serviceCategory}:${resource.parameters.serviceName}'")
+ at VisitAfterReport(summary = "Routing contents of beanId '${resource.parameters.beanId}' to Service '${resource.parameters.serviceCategory}:${resource.parameters.serviceName}'")
+public class FragmentRouter implements DOMElementVisitor, SAXVisitBefore, SAXVisitAfter {
+
+    private static Logger logger = Logger.getLogger(FragmentRouter.class);
+
+    @ConfigParam
+    private String beanId;
+
+    @ConfigParam
+    private String serviceCategory;
+
+    @ConfigParam
+    private String serviceName;
+
+    private ServiceInvoker serviceInvoker;
+
+    @ConfigParam(name = MessagePayloadProxy.SET_PAYLOAD_LOCATION, defaultVal = Body.DEFAULT_LOCATION)
+    private String setPayloadLocation;
+
+    @Initialize
+    public void intitialize() throws MessageDeliverException {
+        serviceInvoker = new ServiceInvoker(serviceCategory, serviceName);
+    }
+
+    public void visitBefore(SAXElement element, ExecutionContext executionContext) throws SmooksException, IOException {
+        route(executionContext);
+    }
+
+    public void visitAfter(SAXElement element, ExecutionContext executionContext) throws SmooksException, IOException {
+        route(executionContext);
+    }
+
+    public void visitBefore(Element element, ExecutionContext executionContext) throws SmooksException {
+        route(executionContext);
+    }
+
+    public void visitAfter(Element element, ExecutionContext executionContext) throws SmooksException {
+        route(executionContext);
+    }
+
+    private void route(ExecutionContext executionContext) {
+        Object object = BeanAccessor.getBean(executionContext, beanId);
+
+        if(object == null) {
+            // Try the exec context...
+            object = executionContext.getAttribute(beanId);
+        }
+
+        if(object != null) {
+            Message message = MessageFactory.getInstance().getMessage();
+
+            if(!(object instanceof Serializable)) {
+                logger.warn("Request to route non Serializable Object.  beanId: '" + beanId + "'.  Type: " + object.getClass().getName());
+            }
+
+            message.getBody().add(setPayloadLocation, object);
+
+            // TODO: Add aggregation stuff...
+            // Might be better to add something generic ala setting properties based on templates
+
+            try {
+                serviceInvoker.deliverAsync(message);
+            } catch (MessageDeliverException e) {
+                logger.error("Failed to route Object.  beanId: '" + beanId + "'.  Type: " + object.getClass().getName(), e);
+            }
+        } else {
+            logger.info("Request to route unknown Object.  beanId: '" + beanId + "'.");
+        }
+    }
+}
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/FragmentRouter.java
___________________________________________________________________
Name: svn:eol-style
   + native

Copied: labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/SmooksAction.java (from rev 20340, labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/smooks/SmooksAction.java)
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/SmooksAction.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/SmooksAction.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,261 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.smooks;
+
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.actions.AbstractActionPipelineProcessor;
+import org.jboss.soa.esb.actions.ActionLifecycleException;
+import org.jboss.soa.esb.actions.ActionProcessingException;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.listeners.message.MessageDeliverException;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.message.MessagePayloadProxy;
+import org.milyn.Smooks;
+import org.milyn.event.report.HtmlReportGenerator;
+import org.milyn.container.ExecutionContext;
+import org.milyn.container.plugin.PayloadProcessor;
+import org.milyn.container.plugin.ResultType;
+
+import java.io.Serializable;
+import java.io.IOException;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * <a href="http://milyn.codehaus.org/Smooks">Smooks</a> action pipeline processor.
+ * <p/>
+ * Usage:
+ * <pre>
+ * &lt;action name="transform" class="org.jboss.soa.esb.smooks.SmooksAction"&gt;
+ * 	&lt;property name="smooksConfig" value="smooks-config.xml" /&gt;
+ * &lt;/action&gt;
+ * </pre>
+ *
+ * <u>Optional properties:</u>
+ * <pre>
+ * &lt;property name="get-payload-location" value="input" /&gt;
+ * &lt;property name="set-payload-location" value="ouput" /&gt;
+ * &lt;property name="excludeNonSerializables" value="false" /&gt;
+ * &lt;property name="resultType" value="STRING" /&gt;
+ * &lt;property name="reportPath" value="/tmp/smooks-report.html" /&gt;
+ * </pre>
+ *
+ * Description of configuration properties:
+ * <ul>
+ * <li><i>smooksConfig</i> - the Smooks configuration file. Can be a path on the file system or on the classpath.
+ * <li><i>get-payload-location</i> - the body location which contains the object to be transformed.
+ * <li><i>set-payload-location</i> - the body location where the transformed object will be placed.
+ * <li><i>excludeNonSerializables</i> - if true, non serializable attributes from the Smooks ExecutionContext will no be included. Default is true.
+ * <li><i>resultType</i> - type of result expected from Smooks ("STRING", "BYTES", "JAVA", "NORESULT"). Default is "STRING".  For more
+ *                         on specifying and controlling the Smooks filtering result, see <a href="#specify-result">Specifying the Source and Result Types</a>.
+ * <li><i>javaResultBeanId</i> - specifies the Smooks bean context beanId to be mapped as the result when the resultType is "JAVA".  If not specified,
+ *                               the whole bean context bean Map is mapped as the result.
+ * <li><i>reportPath</i> - specifies the path and file name for generating a Smooks Execution Report.  This is a development tool.
+ * </ul>
+ *
+ * <h3>Exposing the Smooks {@link ExecutionContext} to other ESB Actions</h3>
+ * After Smooks has performed the filtering operation on the message payload, it maps the contents of the
+ * {@link ExecutionContext} onto a Map on the the ESB message, making it available to other actions in the ESB.
+ * This Map can be accessed by using the {@link #EXECUTION_CONTEXT_ATTR_MAP_KEY} key as follows:
+ * <pre>
+ * message.getBody().get( SmooksAction.EXECUTION_CONTEXT_ATTR_MAP_KEY );
+ * </pre>
+ *
+ * <h3 id="specify-result">Specifying the Source and Result Types</h3>
+ * From the ESB Message data type, this action is able to automatically determine the type of
+ * {@link javax.xml.transform.Source} to use (via the Smooks {@link org.milyn.container.plugin.PayloadProcessor}).  The
+ * {@link javax.xml.transform.Result} type to be used can be specified via the "resultType"
+ * property, as outlined above.
+ * <p/>
+ * It is expected that the above mechanism will be satisfactory for most usecase, but not all.
+ * For the other usecases, this action supports {@link org.milyn.container.plugin.SourceResult}
+ * payloads on the ESB Message.  This allows you to manually specify other Source and Result
+ * types, which is of particular interest with respect to the Result type e.g. for streaming
+ * the Result to a file etc.
+ *
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ * @author <a href="mailto:daniel.bevenius at gmail.com">daniel.bevenius at gmail.com</a>
+ */
+public class SmooksAction extends AbstractActionPipelineProcessor
+{
+    public static final String EXECUTION_CONTEXT_ATTR_MAP_KEY = "SmooksExecutionContext";
+
+    private Smooks smooks;
+
+	private PayloadProcessor payloadProcessor;
+
+	private MessagePayloadProxy payloadProxy;
+
+	private boolean excludeNonSerializables;
+
+    private String reportPath;
+
+    // public
+
+    public SmooksAction( final ConfigTree configTree ) throws ConfigurationException
+    {
+        final String smooksConfig = configTree.getRequiredAttribute("smooksConfig");
+        try
+        {
+            smooks = new Smooks(smooksConfig);
+            // We need to disable the resource config store's shutdown hook
+            // because the ESB container lifecycle handles this through
+            // calling the destroy method...
+            smooks.getApplicationContext().getStore().removeShutdownHook();
+        }
+        catch (Exception e)
+        {
+            throw new ConfigurationException("Failed to create Smooks instance for config '" + smooksConfig + "'.", e);
+        }
+
+        // Create the Smooks PayloadProcessor...
+        String resultTypeConfig = configTree.getAttribute("resultType", "STRING");
+        ResultType resultType;
+        try {
+            resultType = ResultType.valueOf(resultTypeConfig);
+        } catch(IllegalArgumentException e) {
+            throw new ConfigurationException("Invalid 'resultType' config value '" + resultTypeConfig + "'.  Valid values are: " + Arrays.asList(ResultType.values()));
+        }
+        payloadProcessor = new PayloadProcessor( smooks, resultType );
+        if(resultType == ResultType.JAVA) {
+            String javaResultBeanId = configTree.getAttribute("javaResultBeanId");
+            if(javaResultBeanId != null) {
+                payloadProcessor.setJavaResultBeanId(javaResultBeanId);
+            }
+        }
+
+        payloadProxy = new MessagePayloadProxy( configTree );
+        excludeNonSerializables = Boolean.valueOf( configTree.getAttribute( "excludeNonSerializables", "true" ) );
+
+        reportPath = configTree.getAttribute("reportPath");
+    }
+
+    /**
+     * Executes the actual Smooks tranformation.
+     *
+     * @param message	The ESB Message object
+     *
+     * @return			The ESB Message object with the output of the transformation.
+     *
+     */
+	public Message process( final Message message) throws ActionProcessingException
+	{
+		//	Create Smooks ExecutionContext.
+        final ExecutionContext executionContext = createExecutionContext( smooks );
+
+        if(reportPath != null) {
+            try {
+                executionContext.setEventListener(new HtmlReportGenerator(reportPath));
+            } catch (IOException e) {
+                throw new ActionProcessingException("Failed to create HtmlReportGenerator instance.", e);
+            }
+        }
+
+        //	Use the Smooks PayloadProcessor to execute the transformation....
+        final Object newPayload = payloadProcessor.process( extractPayload( message), executionContext );
+
+        //	Set the ExecutionContext's attributes on the message instance so other actions can access them.
+        message.getBody().add( EXECUTION_CONTEXT_ATTR_MAP_KEY, getSerializableObjectsMap( executionContext.getAttributes() ) );
+
+        return packagePayload( newPayload, message );
+    }
+
+    @Override
+    public void destroy() throws ActionLifecycleException
+    {
+        smooks.close();
+        super.destroy();
+    }
+
+    // protected
+
+    /*
+     * 	Hook for subclasses to control how the execution context is created.
+     * 	Might be useful for Actions that use profiles for example.
+     */
+	protected ExecutionContext createExecutionContext( final Smooks smooks )
+	{
+		return smooks.createExecutionContext();
+	}
+
+    /*
+     * 	Hook for subclasses to extract the message payload in
+     * 	any way they see fit.
+     */
+    protected Object extractPayload(final Message message ) throws ActionProcessingException
+    {
+    	try
+		{
+			return payloadProxy.getPayload( message );
+		}
+    	catch (MessageDeliverException e)
+		{
+    		throw new ActionProcessingException("MessgeDeliveryException while trying to retrieve the message payload:", e);
+		}
+    }
+
+    /*
+     * 	Hook for subclasses so they can control what and where the payload
+     * 	is added to the ESB Message object.
+     */
+    protected Message packagePayload( final Object payload, Message message ) throws ActionProcessingException
+    {
+    	try
+		{
+			payloadProxy.setPayload( message, payload );
+            return message;
+		}
+    	catch (MessageDeliverException e)
+		{
+    		throw new ActionProcessingException("MessgeDeliveryException while trying to retrieve the message payload:", e);
+
+		}
+    }
+
+    /**
+     * Will return a Map containing only the Serializable objects
+     * that exist in the passed-in Map if {@link #excludeNonSerializables} is true.
+     *
+     * @param smooksAttribuesMap 	- Map containing attributes from the Smooks ExecutionContext
+     * @return Map	- Map containing only the Serializable objects from the passed-in map.
+     */
+    @SuppressWarnings( "unchecked" )
+	protected Map getSerializableObjectsMap( final Map smooksAttribuesMap )
+	{
+    	if ( !excludeNonSerializables )
+    		return smooksAttribuesMap;
+
+		Map smooksExecutionContextMap = new HashMap();
+
+		Set<Map.Entry> s = smooksAttribuesMap.entrySet();
+		for (Map.Entry me : s)
+		{
+			Object value = me.getValue();
+			if( value instanceof Serializable )
+			{
+				smooksExecutionContextMap.put( me.getKey(), value );
+			}
+		}
+		return smooksExecutionContextMap;
+	}
+
+}
\ No newline at end of file

Added: labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/splitting/AbstractStreamSplitter.java
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/splitting/AbstractStreamSplitter.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/splitting/AbstractStreamSplitter.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,72 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.smooks.splitting;
+
+import org.jboss.soa.esb.Configurable;
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.milyn.Smooks;
+import org.milyn.event.report.HtmlReportGenerator;
+import org.milyn.container.ExecutionContext;
+
+import javax.xml.transform.Source;
+import javax.xml.transform.stream.StreamSource;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+
+/**
+ * Abstract stream splitter.
+ * <p/>
+ * Uses Smooks to perform the message splitting.
+ *
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public abstract class AbstractStreamSplitter implements Configurable {
+
+    private Smooks smooks;
+    private String encoding;
+    private String reportPath;
+
+    public void setConfiguration(ConfigTree config) throws ConfigurationException {
+        String splitterConfig = config.getRequiredAttribute("splitterConfig");
+
+        encoding = config.getAttribute("encoding", "UTF-8");
+        reportPath = config.getAttribute("reportPath");
+        try {
+            smooks = new Smooks(splitterConfig);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
+
+    public void split(InputStream dataStream) throws IOException {
+        Source streamSource = new StreamSource(new InputStreamReader(dataStream, encoding));
+
+        if(reportPath != null) {
+            ExecutionContext execContext = smooks.createExecutionContext();
+
+            execContext.setEventListener(new HtmlReportGenerator(reportPath));
+            smooks.filter(streamSource, null, execContext);
+        } else {
+            smooks.filter(streamSource, null);            
+        }
+    }
+}
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/splitting/AbstractStreamSplitter.java
___________________________________________________________________
Name: svn:eol-style
   + native

Added: labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/splitting/FileStreamSplitter.java
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/splitting/FileStreamSplitter.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/splitting/FileStreamSplitter.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,66 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.smooks.splitting;
+
+import org.jboss.soa.esb.listeners.message.MessageComposer;
+import org.jboss.soa.esb.listeners.message.MessageDeliverException;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.message.format.MessageFactory;
+import org.jboss.internal.soa.esb.assertion.AssertArgument;
+
+import java.io.File;
+import java.io.IOException;
+import java.io.FileInputStream;
+
+/**
+ * File stream splitting message composer.
+ * <p/>
+ * This composer only sets the file name as the message payload.  It splits the message out,
+ * so the source message is transformed into n+ messages that are consumed by other service
+ * pipelines (i.e. not this service)...
+ *
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class FileStreamSplitter<T extends File> extends AbstractStreamSplitter implements MessageComposer<T> {
+
+    public Message compose(T inputFile) throws MessageDeliverException {
+        AssertArgument.isNotNull(inputFile, "inputFile");
+
+        if(!inputFile.exists()) {
+            throw new MessageDeliverException("Invalid File payload.  File '" + inputFile.getAbsolutePath() + "' doesn't exist.");
+        }
+
+        // Split the file input stream...
+        try {
+            split(new FileInputStream(inputFile));
+        } catch (IOException e) {
+            throw new MessageDeliverException("Exception while splitting file input stream for file '" + inputFile.getAbsolutePath() + "'.", e);
+        }
+
+        Message message = MessageFactory.getInstance().getMessage();
+        message.getBody().add(inputFile.getAbsolutePath());
+        
+        return message;
+    }
+
+    public Object decompose(Message message, T inputFile) throws MessageDeliverException {
+        return null;
+    }
+}
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/smooks/splitting/FileStreamSplitter.java
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/visitors/DOMServiceDelegateVisitor.java
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/visitors/DOMServiceDelegateVisitor.java	2008-06-18 10:07:55 UTC (rev 20576)
+++ labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/visitors/DOMServiceDelegateVisitor.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -46,7 +46,7 @@
  * </pre>
  * 
  * @author <a href="mailto:daniel.bevenius at gmail.com">Daniel Bevenius</a>				
- *
+ * @deprecated Use {@link org.jboss.soa.esb.smooks.FragmentRouter}
  */
 public class DOMServiceDelegateVisitor implements DOMElementVisitor
 {

Modified: labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/visitors/ServiceDelegator.java
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/visitors/ServiceDelegator.java	2008-06-18 10:07:55 UTC (rev 20576)
+++ labs/jbossesb/trunk/product/services/smooks/src/main/java/org/jboss/soa/esb/visitors/ServiceDelegator.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -44,7 +44,7 @@
  * like a DOMVisitor or a SAXVisitor.
  * 
  * @author <a href="mailto:daniel.bevenius at gmail.com">Daniel Bevenius</a>				
- *
+ * @deprecated Use {@link org.jboss.soa.esb.smooks.FragmentRouter}
  */
 public class ServiceDelegator 
 {

Copied: labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/SmooksActionUnitTest.java (from rev 20561, labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SmooksActionUnitTest.java)
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/SmooksActionUnitTest.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/SmooksActionUnitTest.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,181 @@
+/*
+ * JBoss, Home of Professional Open Source Copyright 2006, JBoss Inc., and
+ * individual contributors as indicated by the @authors tag. See the
+ * copyright.txt in the distribution for a full listing of individual
+ * contributors.
+ * 
+ * This is free software; you can redistribute it and/or modify it under the
+ * terms of the GNU Lesser General Public License as published by the Free
+ * Software Foundation; either version 2.1 of the License, or (at your option)
+ * any later version.
+ * 
+ * This software is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+ * details.
+ * 
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this software; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA, or see the FSF
+ * site: http://www.fsf.org.
+ */
+package org.jboss.soa.esb.smooks;
+
+import static org.junit.Assert.*;
+
+import java.util.Hashtable;
+import java.util.Map;
+
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.actions.ActionProcessingException;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.message.MessagePayloadProxy;
+import org.jboss.soa.esb.message.format.MessageFactory;
+import org.junit.Before;
+import org.junit.Test;
+
+import junit.framework.JUnit4TestAdapter;
+
+/**
+ * Unit test for {@link org.jboss.soa.esb.smooks.SmooksAction}
+ * 
+ * @author <a href="mailto:daniel.bevenius at gmail.com">Daniel Bevenius</a>			
+ *
+ */
+public class SmooksActionUnitTest
+{
+	private String expectedString = "<test></test>";
+	private ConfigTree config;
+	
+	@Test
+	public void process() throws ConfigurationException, ActionProcessingException
+	{
+		SmooksAction action = new SmooksAction( config );
+		Message message = MessageFactory.getInstance().getMessage();
+		message.getBody().add( expectedString );
+		
+		Message process = action.process( message );
+		
+		String actualString = (String)process.getBody().get();
+		assertEquals( expectedString, actualString );
+	}
+	
+	@Test
+	public void processWithPayloadLocation() throws ConfigurationException, ActionProcessingException
+	{
+		config.setAttribute( MessagePayloadProxy.GET_PAYLOAD_LOCATION, "input" );
+		SmooksAction action = new SmooksAction( config );
+		Message message = MessageFactory.getInstance().getMessage();
+		message.getBody().add( "input", expectedString );
+		
+		Message process = action.process( message );
+		
+		String actualString = (String)process.getBody().get();
+		assertEquals( expectedString, actualString );
+	}
+	
+	@Test
+	public void processWithOutLocation() throws ConfigurationException, ActionProcessingException
+	{
+		config.setAttribute( MessagePayloadProxy.SET_PAYLOAD_LOCATION, "output" );
+		SmooksAction action = new SmooksAction( config );
+		Message message = MessageFactory.getInstance().getMessage();
+		message.getBody().add( expectedString );
+		
+		Message process = action.process( message );
+		
+		String actualString = (String)process.getBody().get( "output" );
+		assertEquals( expectedString, actualString );
+	}
+	
+	@Test
+	public void getExecutionContextAttributes() throws ConfigurationException, ActionProcessingException
+	{
+		SmooksAction action = new SmooksAction( config );
+		Message message = MessageFactory.getInstance().getMessage();
+		message.getBody().add( expectedString );
+		
+		Message process = action.process( message );
+		
+		Object object = process.getBody().get( SmooksAction.EXECUTION_CONTEXT_ATTR_MAP_KEY );
+		assertTrue( object instanceof Map );
+	}
+	
+	@Test
+	@SuppressWarnings("unchecked")
+	public void getExecutionContextAttributesNonSerializable() throws ConfigurationException, ActionProcessingException
+	{
+		Map map = new Hashtable();
+		map.put( "test1", "testing" );
+		map.put( "test2", new NonSerializableClass() );
+		SmooksAction action = new SmooksAction( config );
+		
+		Map serializableObjects = action.getSerializableObjectsMap( map );
+		
+		assertTrue( serializableObjects.containsKey( "test1" ));
+		assertTrue( !serializableObjects.containsKey( "test2" ));
+	}
+	
+	@Test
+	@SuppressWarnings("unchecked")
+	public void getExecutionContextAttributesWithSerializable() throws ConfigurationException, ActionProcessingException
+	{
+		Map map = new Hashtable();
+		map.put( "test1", "testing" );
+		map.put( "test2", new NonSerializableClass() );
+		config.setAttribute( "excludeNonSerializables", "false" );
+		SmooksAction action = new SmooksAction( config );
+		
+		Map serializableObjects = action.getSerializableObjectsMap( map );
+		
+		assertTrue( serializableObjects.containsKey( "test1" ));
+		assertTrue( serializableObjects.containsKey( "test2" ));
+	}
+
+    @Test
+    public void ConstructorResultType() throws ConfigurationException, ActionProcessingException
+    {
+        config.setAttribute( "resultType", "STRING" );
+        new SmooksAction( config );
+        config.setAttribute( "resultType", "BYTES" );
+        new SmooksAction( config );
+        config.setAttribute( "resultType", "JAVA" );
+        new SmooksAction( config );
+        config.setAttribute( "resultType", "NORESULT" );
+        new SmooksAction( config );
+
+        config.setAttribute( "resultType", "BLAHHH" );
+        try {
+            new SmooksAction( config );
+            fail("Expected ConfigurationException");
+        } catch (ConfigurationException e) {
+            assertEquals("Invalid 'resultType' config value 'BLAHHH'.  Valid values are: [STRING, BYTES, JAVA, NORESULT]", e.getMessage());
+        }
+    }
+
+	@Before
+	public void setup()
+	{
+		config = createConfigTree();
+		
+	}
+	
+	public static junit.framework.Test suite()
+	{
+		return new JUnit4TestAdapter( SmooksActionUnitTest.class );
+	}
+	
+	private ConfigTree createConfigTree()
+	{
+		ConfigTree config = new ConfigTree( "SmooksActionTest" );
+		config.setAttribute( "smooksConfig", "/org/jboss/soa/esb/smooks/smooks-config.xml");
+		return config;
+	}
+	
+	private static class NonSerializableClass 
+	{
+		
+	}
+
+}

Copied: labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/SourceResultUnitTest.java (from rev 20561, labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SourceResultUnitTest.java)
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/SourceResultUnitTest.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/SourceResultUnitTest.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,149 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.smooks;
+
+import junit.framework.TestCase;
+import org.jboss.internal.soa.esb.util.StreamUtils;
+import org.jboss.soa.esb.smooks.message.Person1;
+import org.jboss.soa.esb.smooks.message.Person2;
+import org.jboss.soa.esb.client.ServiceInvoker;
+import org.jboss.soa.esb.couriers.FaultMessageException;
+import org.jboss.soa.esb.listeners.message.MessageDeliverException;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.message.format.MessageFactory;
+import org.jboss.soa.esb.services.registry.RegistryException;
+import org.jboss.soa.esb.testutils.ESBConfigUtil;
+import org.milyn.container.plugin.SourceResult;
+import org.milyn.payload.ByteSource;
+import org.milyn.payload.StringResult;
+
+import java.io.ByteArrayInputStream;
+import java.io.StringReader;
+
+/**
+ * More SmooksAction unit tests.
+ * 
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class SourceResultUnitTest extends TestCase {
+    
+    private ESBConfigUtil esbConfig;
+    private byte[] personXmlBytes = StreamUtils.readStream(SourceResultUnitTest.class.getResourceAsStream("message/person.xml"));
+
+    protected void setUp() throws Exception {
+        esbConfig = new ESBConfigUtil(getClass().getResourceAsStream("source-result-esb.xml"));
+        esbConfig.setESBProperties(getClass().getResourceAsStream("jbossesb-properties.xml"));
+        esbConfig.installRegistry();
+        esbConfig.startController();
+    }
+
+    protected void tearDown() throws Exception {
+        esbConfig.stopController();
+        esbConfig.uninstallRegistry();
+        esbConfig.resetESBProperties();
+    }
+
+    public void test_String2String() throws MessageDeliverException, RegistryException, FaultMessageException {
+        ServiceInvoker invoker = new ServiceInvoker("Transform", "String");
+        Message message = MessageFactory.getInstance().getMessage();
+
+        message.getBody().add(new String(personXmlBytes));
+        message = invoker.deliverSync(message, 30000);
+
+        assertEquals("<someone called=\"Tom Fennelly\" is=\"21\">", message.getBody().get());
+    }
+
+    public void test_bytes2String() throws MessageDeliverException, RegistryException, FaultMessageException {
+        ServiceInvoker invoker = new ServiceInvoker("Transform", "String");
+        Message message = MessageFactory.getInstance().getMessage();
+
+        message.getBody().add(personXmlBytes);
+        message = invoker.deliverSync(message, 30000);
+
+        assertEquals("<someone called=\"Tom Fennelly\" is=\"21\">", message.getBody().get());
+    }
+
+    public void test_InputStream2String() throws MessageDeliverException, RegistryException, FaultMessageException {
+        ServiceInvoker invoker = new ServiceInvoker("Transform", "String");
+        Message message = MessageFactory.getInstance().getMessage();
+
+        message.getBody().add(new ByteArrayInputStream(personXmlBytes));
+        message = invoker.deliverSync(message, 30000);
+
+        assertEquals("<someone called=\"Tom Fennelly\" is=\"21\">", message.getBody().get());
+    }
+
+    public void test_Reader2String() throws MessageDeliverException, RegistryException, FaultMessageException {
+        ServiceInvoker invoker = new ServiceInvoker("Transform", "String");
+        Message message = MessageFactory.getInstance().getMessage();
+
+        message.getBody().add(new StringReader(new String(personXmlBytes)));
+        message = invoker.deliverSync(message, 30000);
+
+        assertEquals("<someone called=\"Tom Fennelly\" is=\"21\">", message.getBody().get());
+    }
+
+    public void test_String2Bytes() throws MessageDeliverException, RegistryException, FaultMessageException {
+        ServiceInvoker invoker = new ServiceInvoker("Transform", "Bytes");
+        Message message = MessageFactory.getInstance().getMessage();
+
+        message.getBody().add(new String(personXmlBytes));
+        message = invoker.deliverSync(message, 30000);
+
+        assertEquals("<someone called=\"Tom Fennelly\" is=\"21\">", new String((byte[]) message.getBody().get()));
+    }
+
+    public void test_Object2String() throws MessageDeliverException, RegistryException, FaultMessageException {
+        ServiceInvoker invoker = new ServiceInvoker("Transform", "Person");
+        Message message = MessageFactory.getInstance().getMessage();
+
+        message.getBody().add(new Person1("Tom", 300));
+        message = invoker.deliverSync(message, 30000);
+
+        assertEquals("<someone called=\"Tom\" is=\"300\">", message.getBody().get());
+    }
+
+    public void test_Object2Object() throws MessageDeliverException, RegistryException, FaultMessageException {
+        ServiceInvoker invoker = new ServiceInvoker("Transform", "Person2Person");
+        Message message = MessageFactory.getInstance().getMessage();
+
+        message.getBody().add(new Person1("Tom", 300));
+        message = invoker.deliverSync(message, 30000);
+
+        Person2 person2 = (Person2) message.getBody().get();
+        assertEquals("Tom", person2.getName());
+        assertEquals(300, person2.getAge());
+    }
+
+    public void test_SourceResult() throws MessageDeliverException, RegistryException, FaultMessageException {
+        ServiceInvoker invoker = new ServiceInvoker("Transform", "String");
+        Message message = MessageFactory.getInstance().getMessage();
+        SourceResult sourceResult = new SourceResult();
+        StringResult result = new StringResult();
+
+        sourceResult.setSource(new ByteSource(personXmlBytes));
+        sourceResult.setResult(result);
+
+        message.getBody().add(sourceResult);
+        message = invoker.deliverSync(message, 30000);
+
+        assertEquals("<someone called=\"Tom Fennelly\" is=\"21\">", result.getResult());
+    }
+}


Property changes on: labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/SourceResultUnitTest.java
___________________________________________________________________
Name: svn:eol-style
   + native

Copied: labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/jbossesb-properties.xml (from rev 20561, labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/jbossesb-properties.xml)
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/jbossesb-properties.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/jbossesb-properties.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+  JBoss, Home of Professional Open Source
+  Copyright 2006, JBoss Inc., and others contributors as indicated 
+  by the @authors tag. All rights reserved. 
+  See the copyright.txt in the distribution for a
+  full listing of individual contributors. 
+  This copyrighted material is made available to anyone wishing to use,
+  modify, copy, or redistribute it subject to the terms and conditions
+  of the GNU Lesser General Public License, v. 2.1.
+  This program is distributed in the hope that it will be useful, but WITHOUT A 
+  WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A 
+  PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+  You should have received a copy of the GNU Lesser General Public License,
+  v.2.1 along with this distribution; if not, write to the Free Software
+  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 
+  MA  02110-1301, USA.
+  
+  (C) 2005-2006,
+  @author JBoss Inc.
+-->
+<!-- $Id: jbossesb-unittest-properties.xml $ -->
+<!--
+  These options are described in the JBossESB manual.
+  Defaults are provided here for convenience only.
+ 
+  Please read through this file prior to using the system, and consider
+  updating the specified entries.
+-->
+<esb
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:noNamespaceSchemaLocation="jbossesb-1_0.xsd">
+    <properties name="core">
+		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
+		<property name="org.jboss.soa.esb.jndi.server.context.factory" value="org.jnp.interfaces.NamingContextFactory"/>
+		<property name="org.jboss.soa.esb.jndi.server.pkg.prefix" value=""/>
+		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
+    </properties>
+    <properties name="registry">
+    	<property name="org.jboss.soa.esb.registry.queryManagerURI" value="org.apache.juddi.registry.local.InquiryService#inquire"/>
+    	<property name="org.jboss.soa.esb.registry.lifeCycleManagerURI" value="org.apache.juddi.registry.local.PublishService#publish"/>
+    	<property name="org.jboss.soa.esb.registry.implementationClass" value="org.jboss.internal.soa.esb.services.registry.JAXRRegistryImpl"/>
+    	<property name="org.jboss.soa.esb.registry.factoryClass" value="org.apache.ws.scout.registry.ConnectionFactoryImpl"/>
+    	<property name="org.jboss.soa.esb.registry.user" value="jbossesb"/>
+    	<property name="org.jboss.soa.esb.registry.password" value="password"/>
+    	<!-- the following parameter is scout specific to set the type of communication between scout and the UDDI (embedded, rmi, soap) -->
+    	<property name="org.jboss.soa.esb.scout.proxy.transportClass" value="org.apache.ws.scout.transport.LocalTransport"/>
+    </properties>
+    <properties name="transports" depends="core">
+    	<property name="org.jboss.soa.esb.mail.smtp.host" value="localhost"/>
+    	<property name="org.jboss.soa.esb.mail.smtp.user" value="jbossesb"/>
+    	<property name="org.jboss.soa.esb.mail.smtp.password" value=""/>
+    	<property name="org.jboss.soa.esb.mail.smtp.port" value="25"/>
+    </properties>
+    <properties name="connection">
+    	<property name="min-pool-size" value="5"/>
+    	<property name="max-pool=size" value="10"/>
+    	<property name="blocking-timeout-millis" value="5000"/>
+    	<property name="abandoned-connection-timeout" value="10000"/>
+    	<property name="abandoned-connection-time-interval" value="30000"/>
+    </properties>
+    <properties name="dbstore">
+	    <!--  connection manager type -->
+	    <property name="org.jboss.soa.esb.persistence.db.conn.manager" 		value="org.jboss.internal.soa.esb.persistence.manager.StandaloneConnectionManager"/>	    
+	    <!--  property name="org.jboss.soa.esb.persistence.db.conn.manager" value="org.jboss.internal.soa.esb.persistence.manager.J2eeConnectionManager"/ -->
+	    
+	    <!-- this property is only used if using the j2ee connection manager -->
+	    <property name="org.jboss.soa.esb.persistence.db.datasource.name" 	value="java:/JBossesbDS"/>
+		
+		<!-- standalone connection pooling settings -->
+		<property name="org.jboss.soa.esb.persistence.db.connection.url" 	value="jdbc:hsqldb:hsql://localhost:9001/juddi"/>
+		<property name="org.jboss.soa.esb.persistence.db.jdbc.driver" 		value="org.hsqldb.jdbcDriver"/>
+		<property name="org.jboss.soa.esb.persistence.db.user" 				value="sa"/>
+		<property name="org.jboss.soa.esb.persistence.db.pwd" 				value=""/>		
+		<property name="org.jboss.soa.esb.persistence.db.pool.initial.size"	value="2"/>
+		<property name="org.jboss.soa.esb.persistence.db.pool.min.size"		value="2"/>
+		<property name="org.jboss.soa.esb.persistence.db.pool.max.size"		value="5"/>
+		<!--table managed by pool to test for valid connections - created by pool automatically -->
+		<property name="org.jboss.soa.esb.persistence.db.pool.test.table"	value="pooltest"/>		
+		<property name="org.jboss.soa.esb.persistence.db.pool.timeout.millis"	value="5000"/>
+    </properties>
+    <properties name="messagerouting">
+    	<property name="org.jboss.soa.esb.routing.cbrClass" value="org.jboss.internal.soa.esb.services.routing.cbr.JBossRulesRouter"/>
+    </properties>
+</esb>


Property changes on: labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/jbossesb-properties.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Copied: labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message (from rev 20562, labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message)

Deleted: labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/Person1.java
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person1.java	2008-06-17 14:43:10 UTC (rev 20562)
+++ labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/Person1.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -1,53 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.actions.smooks.message;
-
-/**
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public class Person1 {
-
-    private String name;
-    private int age;
-
-    public Person1() {
-    }
-
-    public Person1(String name, int age) {
-        this.name = name;
-        this.age = age;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-    public void setName(String name) {
-        this.name = name;
-    }
-
-    public int getAge() {
-        return age;
-    }
-
-    public void setAge(int age) {
-        this.age = age;
-    }
-}

Copied: labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/Person1.java (from rev 20575, labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person1.java)
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/Person1.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/Person1.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,53 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.smooks.message;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class Person1 {
+
+    private String name;
+    private int age;
+
+    public Person1() {
+    }
+
+    public Person1(String name, int age) {
+        this.name = name;
+        this.age = age;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public int getAge() {
+        return age;
+    }
+
+    public void setAge(int age) {
+        this.age = age;
+    }
+}

Deleted: labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/Person2.java
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person2.java	2008-06-17 14:43:10 UTC (rev 20562)
+++ labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/Person2.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -1,53 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.actions.smooks.message;
-
-/**
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public class Person2 {
-
-    private String name;
-    private int age;
-
-    public Person2() {
-    }
-
-    public Person2(String name, int age) {
-        this.name = name;
-        this.age = age;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-    public void setName(String name) {
-        this.name = name;
-    }
-
-    public int getAge() {
-        return age;
-    }
-
-    public void setAge(int age) {
-        this.age = age;
-    }
-}
\ No newline at end of file

Copied: labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/Person2.java (from rev 20575, labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person2.java)
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/Person2.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/Person2.java	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,53 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.smooks.message;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class Person2 {
+
+    private String name;
+    private int age;
+
+    public Person2() {
+    }
+
+    public Person2(String name, int age) {
+        this.name = name;
+        this.age = age;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public int getAge() {
+        return age;
+    }
+
+    public void setAge(int age) {
+        this.age = age;
+    }
+}
\ No newline at end of file

Deleted: labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/person.xml
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/person.xml	2008-06-17 14:43:10 UTC (rev 20562)
+++ labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/person.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -1,4 +0,0 @@
-<person>
-    <name>Tom Fennelly</name>
-    <age>21</age>
-</person>
\ No newline at end of file

Copied: labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/person.xml (from rev 20575, labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/person.xml)
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/person.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/message/person.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,4 @@
+<person>
+    <name>Tom Fennelly</name>
+    <age>21</age>
+</person>
\ No newline at end of file

Copied: labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/smooks-config.xml (from rev 20561, labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/smooks-config.xml)
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/smooks-config.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/smooks-config.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd">
+
+    <resource-config selector="global-parameters">
+        <param name="stream.filter.type">DOM</param>
+    </resource-config>
+	
+</smooks-resource-list>

Copied: labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/source-result-esb.xml (from rev 20561, labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-esb.xml)
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/source-result-esb.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/source-result-esb.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,42 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd">
+
+    <services>
+        <service category="Transform" name="String" description="StringTest" invmScope="GLOBAL">
+            <actions mep="RequestResponse">
+                <action name="action" class="org.jboss.soa.esb.smooks.SmooksAction">
+                    <property name="smooksConfig" value="/org/jboss/soa/esb/smooks/source-result-smooks-01.xml" />
+                </action>
+            </actions>			
+        </service>
+
+        <service category="Transform" name="Bytes" description="ObjectTest" invmScope="GLOBAL">
+            <actions mep="RequestResponse">
+                <action name="action" class="org.jboss.soa.esb.smooks.SmooksAction">
+                    <property name="smooksConfig" value="/org/jboss/soa/esb/smooks/source-result-smooks-01.xml" />
+                    <property name="resultType" value="BYTES" />
+                </action>
+            </actions>
+        </service>
+
+        <service category="Transform" name="Person" description="ObjectTest" invmScope="GLOBAL">
+            <actions mep="RequestResponse">
+                <action name="action" class="org.jboss.soa.esb.smooks.SmooksAction">
+                    <property name="smooksConfig" value="/org/jboss/soa/esb/smooks/source-result-smooks-02.xml" />
+                </action>
+            </actions>
+        </service>
+
+        <service category="Transform" name="Person2Person" description="ObjectTest" invmScope="GLOBAL">
+            <actions mep="RequestResponse">
+                <action name="action" class="org.jboss.soa.esb.smooks.SmooksAction">
+                    <property name="smooksConfig" value="/org/jboss/soa/esb/smooks/source-result-smooks-02.xml" />
+                    <property name="resultType" value="JAVA" />
+                    <property name="javaResultBeanId" value="person" />
+                </action>
+            </actions>
+        </service>
+
+    </services>
+
+</jbossesb>
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/source-result-esb.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Copied: labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/source-result-smooks-01.xml (from rev 20561, labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-01.xml)
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/source-result-smooks-01.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/source-result-smooks-01.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,18 @@
+<?xml version="1.0"?>
+<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd">
+
+    <resource-config selector="person">
+        <resource>org.milyn.javabean.BeanPopulator</resource>
+        <param name="beanId">person</param>
+        <param name="beanClass">org.jboss.soa.esb.smooks.message.Person1</param>
+        <param name="bindings">
+            <binding property="name" selector="person/name" />
+            <binding property="age" type="Integer" selector="person/age" />
+        </param>
+    </resource-config>
+
+    <resource-config selector="person">
+        <resource type="ftl"><!--<someone called="${person.name}" is="${person.age}">--></resource>
+    </resource-config>
+
+</smooks-resource-list>
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/source-result-smooks-01.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Copied: labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/source-result-smooks-02.xml (from rev 20561, labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-02.xml)
===================================================================
--- labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/source-result-smooks-02.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/source-result-smooks-02.xml	2008-06-18 10:11:56 UTC (rev 20577)
@@ -0,0 +1,18 @@
+<?xml version="1.0"?>
+<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd">
+
+    <resource-config selector="org.jboss.soa.esb.smooks.message.Person1">
+        <resource>org.milyn.javabean.BeanPopulator</resource>
+        <param name="beanId">person</param>
+        <param name="beanClass">org.jboss.soa.esb.smooks.message.Person2</param>
+        <param name="bindings">
+            <binding property="name" selector="org.jboss.soa.esb.smooks.message.Person1/name" />
+            <binding property="age" type="Integer" selector="org.jboss.soa.esb.smooks.message.Person1/age" />
+        </param>
+    </resource-config>
+
+    <resource-config selector="org.jboss.soa.esb.smooks.message.Person1">
+        <resource type="ftl"><!--<someone called="${person.name}" is="${person.age}">--></resource>
+    </resource-config>
+
+</smooks-resource-list>
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/services/smooks/src/test/java/org/jboss/soa/esb/smooks/source-result-smooks-02.xml
___________________________________________________________________
Name: svn:mime-type
   + text/xml
Name: svn:eol-style
   + native

Modified: labs/jbossesb/trunk/product/services/soap/src/test/java/org/jboss/soa/esb/actions/soap/test-in.wsdl
===================================================================
--- labs/jbossesb/trunk/product/services/soap/src/test/java/org/jboss/soa/esb/actions/soap/test-in.wsdl	2008-06-18 10:07:55 UTC (rev 20576)
+++ labs/jbossesb/trunk/product/services/soap/src/test/java/org/jboss/soa/esb/actions/soap/test-in.wsdl	2008-06-18 10:11:56 UTC (rev 20577)
@@ -13,7 +13,7 @@
     <message name="GoodbyeWorldWS_sayGoodbyeResponse">
         <part name="result" type="xsd:string"/>
     </message>
-    <portType name="GoodbyeWorldWS">
+    <portType name="ReptilesNotifyWS">
 
         <operation name="sayGoodbye" parameterOrder="String_1">
             <input message="tns:GoodbyeWorldWS_sayGoodbye"/>
@@ -25,7 +25,7 @@
         </operation>
     </portType>
 
-    <binding name="GoodbyeWorldWSBinding" type="tns:GoodbyeWorldWS">
+    <binding name="GoodbyeWorldWSBinding" type="tns:ReptilesNotifyWS">
         <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
         <operation name="sayGoodbye">
             <soap:operation soapAction=""/>

Modified: labs/jbossesb/trunk/product/services/soap/src/test/java/org/jboss/soa/esb/actions/soap/test-out-expected-http-rewrite.wsdl
===================================================================
--- labs/jbossesb/trunk/product/services/soap/src/test/java/org/jboss/soa/esb/actions/soap/test-out-expected-http-rewrite.wsdl	2008-06-18 10:07:55 UTC (rev 20576)
+++ labs/jbossesb/trunk/product/services/soap/src/test/java/org/jboss/soa/esb/actions/soap/test-out-expected-http-rewrite.wsdl	2008-06-18 10:11:56 UTC (rev 20577)
@@ -12,7 +12,7 @@
     <message name="GoodbyeWorldWS_sayGoodbyeResponse">
         <part name="result" type="xsd:string"/>
     </message>
-    <portType name="GoodbyeWorldWS">
+    <portType name="ReptilesNotifyWS">
 
         <operation name="sayGoodbye" parameterOrder="String_1">
             <input message="tns:GoodbyeWorldWS_sayGoodbye"/>
@@ -24,7 +24,7 @@
         </operation>
     </portType>
 
-    <binding name="GoodbyeWorldWSBinding" type="tns:GoodbyeWorldWS">
+    <binding name="GoodbyeWorldWSBinding" type="tns:ReptilesNotifyWS">
         <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
         <operation name="sayGoodbye">
             <soap:operation soapAction=""/>

Modified: labs/jbossesb/trunk/product/services/soap/src/test/java/org/jboss/soa/esb/actions/soap/test-out-expected.wsdl
===================================================================
--- labs/jbossesb/trunk/product/services/soap/src/test/java/org/jboss/soa/esb/actions/soap/test-out-expected.wsdl	2008-06-18 10:07:55 UTC (rev 20576)
+++ labs/jbossesb/trunk/product/services/soap/src/test/java/org/jboss/soa/esb/actions/soap/test-out-expected.wsdl	2008-06-18 10:11:56 UTC (rev 20577)
@@ -12,7 +12,7 @@
     <message name="GoodbyeWorldWS_sayGoodbyeResponse">
         <part name="result" type="xsd:string"/>
     </message>
-    <portType name="GoodbyeWorldWS">
+    <portType name="ReptilesNotifyWS">
 
         <operation name="sayGoodbye" parameterOrder="String_1">
             <input message="tns:GoodbyeWorldWS_sayGoodbye"/>
@@ -24,7 +24,7 @@
         </operation>
     </portType>
 
-    <binding name="GoodbyeWorldWSBinding" type="tns:GoodbyeWorldWS">
+    <binding name="GoodbyeWorldWSBinding" type="tns:ReptilesNotifyWS">
         <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/socket"/>
         <operation name="sayGoodbye">
             <soap:operation soapAction=""/>




More information about the jboss-svn-commits mailing list