incubator-agila-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mr...@apache.org
Subject svn commit: r165042 [29/30] - in /incubator/agila/trunk: ./ config/ modules/ modules/bpel/ modules/bpel/client/ modules/bpel/client/api/ modules/bpel/client/api/src/ modules/bpel/client/api/src/conf/ modules/bpel/client/api/src/java/ modules/bpel/client/api/src/java/org/ modules/bpel/client/api/src/java/org/apache/ modules/bpel/client/api/src/java/org/apache/agila/ modules/bpel/client/api/src/java/org/apache/agila/bpel/ modules/bpel/client/api/src/java/org/apache/agila/bpel/client/ modules/bpel/client/api/src/test/ modules/bpel/client/api/src/test/junit/ modules/bpel/client/api/src/test/junit/org/ modules/bpel/client/api/src/test/junit/org/apache/ modules/bpel/client/api/src/test/junit/org/apache/agila/ modules/bpel/client/api/src/test/junit/org/apache/agila/bpel/ modules/bpel/client/api/src/test/junit/org/apache/agila/bpel/client/ modules/bpel/client/web/ modules/bpel/client/web/src/ modules/bpel/client/web/src/conf/ modules/bpel/client/web/src/java/ modules/bpel/client/web/src/java/org/ modules/bpel/client/web/src/java/org/apache/ modules/bpel/client/web/src/java/org/apache/agila/ modules/bpel/client/web/src/java/org/apache/agila/bpel/ modules/bpel/client/web/src/java/org/apache/agila/bpel/web/ modules/bpel/client/web/src/java/org/apache/agila/bpel/web/common/ modules/bpel/client/web/src/java/org/apache/agila/bpel/web/deployer/ modules/bpel/client/web/src/java/org/apache/agila/bpel/web/deployer/action/ modules/bpel/client/web/src/java/org/apache/agila/bpel/web/deployer/form/ modules/bpel/client/web/src/java/org/apache/agila/bpel/web/engine/ modules/bpel/client/web/src/java/org/apache/agila/bpel/web/engine/action/ modules/bpel/client/web/src/java/org/apache/agila/bpel/web/engine/form/ modules/bpel/client/web/src/java/org/apache/agila/bpel/web/global/ modules/bpel/client/web/src/java/org/apache/agila/bpel/web/global/action/ modules/bpel/client/web/src/java/org/apache/agila/bpel/web/security/ modules/bpel/client/web/src/java/org/apache/agila/bpel/web/security/action/ modules/bpel/client/web/src/java/org/apache/agila/bpel/web/security/form/ modules/bpel/client/web/src/java/org/apache/agila/bpel/web/user/ modules/bpel/client/web/src/java/org/apache/agila/bpel/web/user/action/ modules/bpel/client/web/src/java/org/apache/agila/bpel/web/user/form/ modules/bpel/client/web/src/java/org/apache/agila/bpel/web/util/ modules/bpel/client/web/src/java/org/apache/agila/bpel/web/worklist/ modules/bpel/client/web/src/java/org/apache/agila/bpel/web/worklist/action/ modules/bpel/client/web/src/webapp/ modules/bpel/client/web/src/webapp/META-INF/ modules/bpel/client/web/src/webapp/WEB-INF/ modules/bpel/client/web/src/webapp/WEB-INF/classes/ modules/bpel/client/web/src/webapp/images/ modules/bpel/client/web/src/webapp/images/audit/ modules/bpel/client/web/src/webapp/style/ modules/bpel/common/ modules/bpel/common/src/ modules/bpel/common/src/aspect/ modules/bpel/common/src/conf/ modules/bpel/common/src/java/ modules/bpel/common/src/java/org/ modules/bpel/common/src/java/org/apache/ modules/bpel/common/src/java/org/apache/agila/ modules/bpel/common/src/java/org/apache/agila/bpel/ modules/bpel/common/src/java/org/apache/agila/bpel/common/ modules/bpel/common/src/java/org/apache/agila/bpel/common/aspect/ modules/bpel/common/src/java/org/apache/agila/bpel/common/configuration/ modules/bpel/common/src/java/org/apache/agila/bpel/common/util/ modules/bpel/common/src/java/org/apache/agila/bpel/common/util/logger/ modules/bpel/common/src/test/ modules/bpel/common/src/test/junit/ modules/bpel/common/src/test/junit/org/ modules/bpel/common/src/test/junit/org/apache/ modules/bpel/common/src/test/junit/org/apache/agila/ modules/bpel/common/src/test/junit/org/apache/agila/bpel/ modules/bpel/common/src/test/junit/org/apache/agila/bpel/common/ modules/bpel/common/src/test/junit/org/apache/agila/bpel/common/util/ modules/bpel/dist/ modules/bpel/dist/src/ modules/bpel/dist/src/java/ modules/bpel/dist/src/java/org/ modules/bpel/dist/src/java/org/apache/ modules/bpel/dist/src/java/org/apache/agila/ modules/bpel/dist/src/java/org/apache/agila/bpel/ modules/bpel/dist/src/java/org/apache/agila/bpel/util/ modules/bpel/dist/src/script/ modules/bpel/engine/ modules/bpel/engine/common/ modules/bpel/engine/common/src/ modules/bpel/engine/common/src/aspect/ modules/bpel/engine/common/src/hibernate/ modules/bpel/engine/common/src/hibernate/org/ modules/bpel/engine/common/src/hibernate/org/apache/ modules/bpel/engine/common/src/hibernate/org/apache/agila/ modules/bpel/engine/common/src/hibernate/org/apache/agila/bpel/ modules/bpel/engine/common/src/hibernate/org/apache/agila/bpel/engine/ modules/bpel/engine/common/src/hibernate/org/apache/agila/bpel/engine/common/ modules/bpel/engine/common/src/java/ modules/bpel/engine/common/src/java/org/ modules/bpel/engine/common/src/java/org/apache/ modules/bpel/engine/common/src/java/org/apache/agila/ modules/bpel/engine/common/src/java/org/apache/agila/bpel/ modules/bpel/engine/common/src/java/org/apache/agila/bpel/engine/ modules/bpel/engine/common/src/java/org/apache/agila/bpel/engine/common/ modules/bpel/engine/common/src/java/org/apache/agila/bpel/engine/common/aspect/ modules/bpel/engine/common/src/java/org/apache/agila/bpel/engine/common/event/ modules/bpel/engine/common/src/java/org/apache/agila/bpel/engine/common/event/execution/ modules/bpel/engine/common/src/java/org/apache/agila/bpel/engine/common/event/execution/impl/ modules/bpel/engine/common/src/java/org/apache/agila/bpel/engine/common/event/lifecycle/ modules/bpel/engine/common/src/java/org/apache/agila/bpel/engine/common/event/lifecycle/dao/ modules/bpel/engine/common/src/java/org/apache/agila/bpel/engine/common/lifecycle/ modules/bpel/engine/common/src/java/org/apache/agila/bpel/engine/common/monitoring/ modules/bpel/engine/common/src/java/org/apache/agila/bpel/engine/common/persistence/ modules/bpel/engine/common/src/java/org/apache/agila/bpel/engine/common/transaction/ modules/bpel/engine/common/src/test/ modules/bpel/engine/common/src/test/junit/ modules/bpel/engine/common/src/test/junit/org/ modules/bpel/engine/common/src/test/junit/org/apache/ modules/bpel/engine/common/src/test/junit/org/apache/agila/ modules/bpel/engine/common/src/test/junit/org/apache/agila/bpel/ modules/bpel/engine/common/src/test/junit/org/apache/agila/bpel/engine/ modules/bpel/engine/common/src/test/junit/org/apache/agila/bpel/engine/common/ modules/bpel/engine/common/src/test/junit/org/apache/agila/bpel/engine/common/event/ modules/bpel/engine/common/src/test/resources/ modules/bpel/engine/core/ modules/bpel/engine/core/src/ modules/bpel/engine/core/src/aspect/ modules/bpel/engine/core/src/hibernate/ modules/bpel/engine/core/src/hibernate/org/ modules/bpel/engine/core/src/hibernate/org/apache/ modules/bpel/engine/core/src/hibernate/org/apache/agila/ modules/bpel/engine/core/src/hibernate/org/apache/agila/bpel/ modules/bpel/engine/core/src/hibernate/org/apache/agila/bpel/engine/ modules/bpel/engine/core/src/java/ modules/bpel/engine/core/src/java/org/ modules/bpel/engine/core/src/java/org/apache/ modules/bpel/engine/core/src/java/org/apache/agila/ modules/bpel/engine/core/src/java/org/apache/agila/bpel/ modules/bpel/engine/core/src/java/org/apache/agila/bpel/engine/ modules/bpel/engine/core/src/java/org/apache/agila/bpel/engine/exception/ modules/bpel/engine/core/src/java/org/apache/agila/bpel/engine/priv/ modules/bpel/engine/core/src/java/org/apache/agila/bpel/engine/priv/core/ modules/bpel/engine/core/src/java/org/apache/agila/bpel/engine/priv/core/definition/ modules/bpel/engine/core/src/java/org/apache/agila/bpel/engine/priv/core/definition/impl/ modules/bpel/engine/core/src/java/org/apache/agila/bpel/engine/priv/core/definition/impl/dao/ modules/bpel/engine/core/src/java/org/apache/agila/bpel/engine/priv/core/dynamic/ modules/bpel/engine/core/src/java/org/apache/agila/bpel/engine/priv/core/dynamic/impl/ modules/bpel/engine/core/src/java/org/apache/agila/bpel/engine/priv/core/dynamic/impl/dao/ modules/bpel/engine/core/src/java/org/apache/agila/bpel/engine/priv/core/dynamic/impl/xao/ modules/bpel/engine/core/src/java/org/apache/agila/bpel/engine/priv/expression/ modules/bpel/engine/core/s
Date Wed, 27 Apr 2005 20:28:07 GMT
Added: incubator/agila/trunk/modules/bpel/engine/wsa/src/test/junit/org/apache/agila/bpel/worklist/TestEngineWorkItemCreation.java
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/engine/wsa/src/test/junit/org/apache/agila/bpel/worklist/TestEngineWorkItemCreation.java?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/engine/wsa/src/test/junit/org/apache/agila/bpel/worklist/TestEngineWorkItemCreation.java (added)
+++ incubator/agila/trunk/modules/bpel/engine/wsa/src/test/junit/org/apache/agila/bpel/worklist/TestEngineWorkItemCreation.java Wed Apr 27 13:27:43 2005
@@ -0,0 +1,155 @@
+/*
+ * Copyright 2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License")
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.agila.bpel.worklist;
+
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
+import junit.framework.TestCase;
+import net.sf.hibernate.cfg.Configuration;
+import net.sf.hibernate.tool.hbm2ddl.SchemaExport;
+
+import org.dom4j.Document;
+import org.dom4j.DocumentHelper;
+import org.dom4j.Element;
+import org.apache.agila.bpel.engine.AgilaEngineFactory;
+import org.apache.agila.bpel.engine.common.lifecycle.LifecycleManager;
+import org.apache.agila.bpel.engine.common.transaction.TransactionManager;
+import org.apache.agila.bpel.engine.priv.core.definition.ActivityFactory;
+import org.apache.agila.bpel.engine.priv.core.definition.CorrelationRef;
+import org.apache.agila.bpel.engine.priv.core.definition.Invoke;
+import org.apache.agila.bpel.engine.priv.core.definition.ProcessFactory;
+import org.apache.agila.bpel.engine.priv.core.definition.Property;
+import org.apache.agila.bpel.engine.priv.core.definition.Receive;
+import org.apache.agila.bpel.engine.priv.core.definition.Sequence;
+import org.apache.agila.bpel.engine.priv.core.definition.AgilaProcess;
+import org.apache.agila.bpel.engine.priv.core.dynamic.ProcessInstance;
+import org.apache.agila.bpel.engine.priv.core.dynamic.ProcessInstanceFactory;
+import org.apache.agila.bpel.user.priv.RoleImpl;
+import org.apache.agila.bpel.user.priv.UserImpl;
+import org.apache.agila.bpel.user.priv.GroupImpl;
+import org.apache.agila.bpel.user.Group;
+import org.apache.agila.bpel.user.AgilaUserFactory;
+
+public class TestEngineWorkItemCreation extends TestCase {
+
+    private AgilaProcess process;
+    private Sequence sequence;
+    private Receive receive1;
+    private Invoke invoke;
+    private Receive receive2;
+
+    protected void setUp() throws Exception {
+        LifecycleManager.getLifecycleManager().createResources();
+        LifecycleManager.getLifecycleManager().startResources();
+
+        SchemaExport schemaExport = new SchemaExport(new Configuration().configure());
+        schemaExport.create(true, true);
+    }
+
+    protected void tearDown() throws Exception {
+        LifecycleManager.getLifecycleManager().stopResources();
+        LifecycleManager.getLifecycleManager().destroyResources();
+    }
+
+    public void testCreateWorkItemThroughEngine() throws Exception {
+        TransactionManager.beginTransaction();
+        createProcess();
+        TransactionManager.commitTransaction();
+        TransactionManager.beginTransaction();
+        RoleImpl jdrole = new RoleImpl();
+        jdrole.setName("actor");
+        Set jdRoles = new HashSet();
+        jdRoles.add(jdrole);
+        UserImpl johndoe = new UserImpl();
+        GroupImpl grp = new GroupImpl();
+        jdrole = (RoleImpl)AgilaUserFactory.getAgilaUser().createRole(jdrole);
+        grp.setName("mygroup");
+        grp.addRole(jdrole);
+        TransactionManager.commitTransaction();
+        TransactionManager.beginTransaction();
+        grp = (GroupImpl)AgilaUserFactory.getAgilaUser().createGroup(grp);
+        johndoe.setName("johndoe");
+        johndoe.setPassword("john");
+        johndoe.addGroup(grp);
+        //johndoe.setRoles(jdRoles);
+        TransactionManager.commitTransaction();
+        TransactionManager.beginTransaction();
+        AgilaUserFactory.getAgilaUser().createUser(johndoe);
+        TransactionManager.commitTransaction();
+        Document message = DocumentHelper.createDocument();
+        Element mainPart = message.addElement("message").addElement("wipart");
+        mainPart.addElement("user").setText("johndoe");
+        mainPart.addElement("description").setText("Go find a better name");
+        AgilaEngineFactory.getEngine().acknowledge("WorkItemCreator","http://www.apache.org/agila/worklist", "WorkItemCreatorPT", "InitWork", message);
+        
+        // Waiting a little bit to make sure everything's done.
+        Thread.sleep(10000);
+        TransactionManager.beginTransaction();
+        Collection johnWorkList = AgilaWorkListFactory.getWorkList().getWorkList("johndoe");
+        TransactionManager.commitTransaction();
+        assertEquals("The worklist should contain exactly one work item", 1, johnWorkList.size());
+
+        TransactionManager.beginTransaction();
+        AgilaWorkListFactory.getWorkList().completeWorkItem(((WorkItem)johnWorkList.iterator().next()).getId(),"<message/>");
+        TransactionManager.commitTransaction();
+        // Waiting a little bit to make sure everything's done.
+        Thread.sleep(5000);
+
+        TransactionManager.beginTransaction();
+        Map corrProp = new HashMap();
+        corrProp.put("workitemid", ((WorkItem)johnWorkList.iterator().next()).getId().toString());
+        ProcessInstance createdInstance = ProcessInstanceFactory.findInstanceByCorrelation("workItemCorr", corrProp);
+        assertEquals("The prcess instance is not completed", ProcessInstance.COMPLETED, createdInstance.getStatus());
+        TransactionManager.commitTransaction();
+    }
+
+    private void createProcess() throws Exception {
+        process = ProcessFactory.createProcess("TestProcess", "");
+        Property prop = ProcessFactory.addProperty(process, "workitemid", "xs:long");
+        ProcessFactory.addPropertyAlias(prop, "tns:wimsg", "wipart", "/workitemid");
+        ProcessFactory.addCorrelation(process, "workItemCorr", "workitemid");
+
+        sequence = (Sequence) ActivityFactory.createActivity(Sequence.class, process);
+
+        receive1 = (Receive) ActivityFactory.createActivity(Receive.class, sequence);
+        receive1.setCreateInstance(true);
+        receive1.setPartner("WorkItemCreator");
+        receive1.setPortType("WorkItemCreatorPT");
+        receive1.setNamespace("http://www.apache.org/agila/worklist");
+        receive1.setOperation("InitWork");
+        receive1.setVariable("WIParams");
+
+        invoke = (Invoke) ActivityFactory.createActivity(Invoke.class, sequence);
+        invoke.setPartner("WorkListPartner");
+        invoke.setPortType("WorkListPT");
+        invoke.setNamespace("http://www.apache.org/agila/worklist");
+        invoke.setOperation("CreateWork");
+        invoke.setInputVariable("WIParams");
+        invoke.setOutputVariable("WLMgrAnswer");
+        ActivityFactory.addCorrelationRef(invoke, "workItemCorr", true, CorrelationRef.IN);
+
+        receive2 = (Receive) ActivityFactory.createActivity(Receive.class, sequence);
+        receive2.setPartner("WorkListMgr");
+        receive2.setPortType("WorkListAnswerPT");
+        receive2.setNamespace("http://www.apache.org/agila/worklist");
+        receive2.setOperation("receiveAnswer");
+        ActivityFactory.addCorrelationRef(receive2, "workItemCorr", false, CorrelationRef.IN);
+    }
+}

Added: incubator/agila/trunk/modules/bpel/engine/wsa/src/test/junit/org/apache/agila/bpel/worklist/TestWorkList.java
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/engine/wsa/src/test/junit/org/apache/agila/bpel/worklist/TestWorkList.java?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/engine/wsa/src/test/junit/org/apache/agila/bpel/worklist/TestWorkList.java (added)
+++ incubator/agila/trunk/modules/bpel/engine/wsa/src/test/junit/org/apache/agila/bpel/worklist/TestWorkList.java Wed Apr 27 13:27:43 2005
@@ -0,0 +1,86 @@
+/*
+ * Copyright 2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License")
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.agila.bpel.worklist;
+
+import java.util.Calendar;
+
+import junit.framework.TestCase;
+
+import org.dom4j.Document;
+import org.dom4j.DocumentHelper;
+import org.dom4j.Element;
+import org.apache.agila.bpel.engine.common.lifecycle.LifecycleManager;
+
+import com.sun.msv.datatype.xsd.DatatypeFactory;
+
+/**
+ * Tests the WorkList interface
+ */
+public class TestWorkList extends TestCase {
+
+	private AgilaWorkList workList = AgilaWorkListFactory.getWorkList();
+
+	protected void setUp() throws Exception {
+//        SchemaCreator.createSchema();
+        LifecycleManager.getLifecycleManager().createResources();
+        LifecycleManager.getLifecycleManager().startResources();
+	}
+
+	protected void tearDown() throws Exception {
+        LifecycleManager.getLifecycleManager().stopResources();
+        LifecycleManager.getLifecycleManager().destroyResources();
+	}
+
+	public void testCreate() throws Exception {
+		Document doc = DocumentHelper.createDocument();
+        Element msgElmt = doc.addElement("message");
+        Element testElmt = msgElmt.addElement("wipart");
+		Element userElmt = testElmt.addElement("user");
+		userElmt.addText("admin");
+		Element descElmt = testElmt.addElement("description");
+		descElmt.addText("nod smartly");
+		Element deadlineElmt = testElmt.addElement("deadline");
+		deadlineElmt.setText(DatatypeFactory.getTypeByName("dateTime")
+				.serializeJavaObject(Calendar.getInstance(), null));
+
+        msgElmt.addElement("info").addElement("color").addText("blue");
+
+		Long wid = workList.createWorkItem(doc);
+
+        WorkItem wi = workList.getWorkItem(wid);
+        assertEquals("Work item is not active or there's no admin in db", WorkItem.ACTIVE, wi.getStatus());
+	}
+
+    public void testCreateDummyUser() throws Exception {
+        Document doc = DocumentHelper.createDocument();
+        Element msgElmt = doc.addElement("message");
+        Element testElmt = msgElmt.addElement("wipart");
+        Element userElmt = testElmt.addElement("user");
+        userElmt.addText("dummynonexistinguser");
+        Element descElmt = testElmt.addElement("description");
+        descElmt.addText("nod smartly");
+        Element deadlineElmt = testElmt.addElement("deadline");
+        deadlineElmt.setText(DatatypeFactory.getTypeByName("dateTime")
+                .serializeJavaObject(Calendar.getInstance(), null));
+
+        msgElmt.addElement("info").addElement("color").addText("blue");
+
+        Long wid = workList.createWorkItem(doc);
+
+        WorkItem wi = workList.getWorkItem(wid);
+        assertEquals("Work item is not active", WorkItem.WRONGLY_ASSIGNED, wi.getStatus());
+    }
+}

Added: incubator/agila/trunk/modules/bpel/engine/wsa/src/test/resources/agila-configuration.xml
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/engine/wsa/src/test/resources/agila-configuration.xml?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/engine/wsa/src/test/resources/agila-configuration.xml (added)
+++ incubator/agila/trunk/modules/bpel/engine/wsa/src/test/resources/agila-configuration.xml Wed Apr 27 13:27:43 2005
@@ -0,0 +1,138 @@
+<agila>
+    <lifecycle>
+        <resource>org.apache.agila.bpel.engine.common.transaction.TransactionManager</resource>
+        <resource>org.apache.agila.bpel.engine.common.event.EventManager</resource>
+        <resource>org.apache.agila.bpel.engine.priv.timer.EngineTimer</resource>
+    </lifecycle>
+    <transaction>
+        <resource>org.apache.agila.bpel.engine.common.persistence.DBSessionManager</resource>
+        <resource>org.apache.agila.bpel.engine.common.persistence.XMLSessionManager</resource>
+    </transaction>
+    <event-listeners>
+        <listener>org.apache.agila.bpel.engine.common.event.EventPersistentListener</listener>
+    </event-listeners>
+    <tools>
+    	<axis>
+    		<url>http://localhost:8080/agila-ws</url>
+    	</axis>
+        <xindice>
+            <url>xmldb:xindice://localhost:8080/db</url>
+        </xindice>
+    </tools>
+    <deployer>
+    	<path>
+            <target>./deploy/</target>
+	        <schemas>./schema/</schemas>
+    	</path>
+        <namespaces>
+            <map remote-url="http://www.apache.org/agila/examples/loop/service/"
+                 local-url="loop-defs.xml"/>
+            <map remote-url="http://www.apache.org/agila/examples/process-defs.xml"
+                 local-url="process-defs.xml"/>
+            <map remote-url="http://www.apache.org/agila/test/flow/service/"
+                 local-url="test-flow-defs.xml"/>
+            <map remote-url="http://www.apache.org/agila/test/pick/service/"
+                 local-url="test-pick-defs.xml"/>
+            <map remote-url="http://www.apache.org/agila/test/reply/service/"
+                 local-url="test-reply-defs.xml"/>
+            <ignore>http://schemas.xmlsoap.org/ws/2003/03/business-process/</ignore>
+        </namespaces>
+        <validation>
+            <validator>org.apache.agila.bpel.deployer.priv.validate.bpel.reference.CorrelationRefValidator</validator>
+            <validator>org.apache.agila.bpel.deployer.priv.validate.bpel.reference.VariableRefValidator</validator>
+            <validator>org.apache.agila.bpel.deployer.priv.validate.bpel.reference.PartnerLinkRefValidator</validator>
+            <validator>org.apache.agila.bpel.deployer.priv.validate.bpel.unicity.VariableNameUnicityValidator</validator>
+            <validator>org.apache.agila.bpel.deployer.priv.validate.bpel.unicity.WorkItemVariableUnicity</validator>
+            <validator>org.apache.agila.bpel.deployer.priv.validate.bpel.reference.FromVariableRefValidator</validator>
+            <validator>org.apache.agila.bpel.deployer.priv.validate.bpel.exclusivity.VariableTypeExclValidator</validator>
+            <validator>org.apache.agila.bpel.deployer.priv.validate.bpel.complex.CreateInstanceCorrelationValidator</validator>
+        </validation>
+    </deployer>
+    <engine>
+        <history>
+            <sent-messages>true</sent-messages>
+        </history>
+        <implementations>
+            <message-broker impl="org.apache.agila.bpel.engine.priv.messaging.impl.DefaultMessageBrokerImpl"/>
+
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Assign"
+                impl="org.apache.agila.bpel.engine.priv.core.definition.impl.AssignImpl"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Empty"
+                impl="org.apache.agila.bpel.engine.priv.core.definition.impl.EmptyImpl"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Flow"
+                impl="org.apache.agila.bpel.engine.priv.core.definition.impl.FlowImpl"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Invoke"
+                impl="org.apache.agila.bpel.engine.priv.core.definition.impl.InvokeImpl"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Pick"
+                impl="org.apache.agila.bpel.engine.priv.core.definition.impl.PickImpl"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Receive"
+                impl="org.apache.agila.bpel.engine.priv.core.definition.impl.ReceiveImpl"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Reply"
+                impl="org.apache.agila.bpel.engine.priv.core.definition.impl.ReplyImpl"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Sequence"
+                impl="org.apache.agila.bpel.engine.priv.core.definition.impl.SequenceImpl"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Scope"
+                impl="org.apache.agila.bpel.engine.priv.core.definition.impl.ScopeImpl"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Switch"
+                impl="org.apache.agila.bpel.engine.priv.core.definition.impl.SwitchImpl"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Terminate"
+                impl="org.apache.agila.bpel.engine.priv.core.definition.impl.TerminateImpl"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Wait"
+                impl="org.apache.agila.bpel.engine.priv.core.definition.impl.WaitImpl"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.While"
+                impl="org.apache.agila.bpel.engine.priv.core.definition.impl.WhileImpl"/>
+
+            <execution-context interface="org.apache.agila.bpel.engine.priv.core.dynamic.AssignEC"
+                impl="org.apache.agila.bpel.engine.priv.core.dynamic.impl.AssignECImpl"/>
+            <execution-context interface="org.apache.agila.bpel.engine.priv.core.dynamic.EmptyEC"
+                impl="org.apache.agila.bpel.engine.priv.core.dynamic.impl.EmptyECImpl"/>
+            <execution-context interface="org.apache.agila.bpel.engine.priv.core.dynamic.FlowEC"
+                impl="org.apache.agila.bpel.engine.priv.core.dynamic.impl.FlowECImpl"/>
+            <execution-context interface="org.apache.agila.bpel.engine.priv.core.dynamic.InvokeEC"
+                impl="org.apache.agila.bpel.engine.priv.core.dynamic.impl.InvokeECImpl"/>
+            <execution-context interface="org.apache.agila.bpel.engine.priv.core.dynamic.PickEC"
+                impl="org.apache.agila.bpel.engine.priv.core.dynamic.impl.PickECImpl"/>
+            <execution-context interface="org.apache.agila.bpel.engine.priv.core.dynamic.ReceiveEC"
+                impl="org.apache.agila.bpel.engine.priv.core.dynamic.impl.ReceiveECImpl"/>
+            <execution-context interface="org.apache.agila.bpel.engine.priv.core.dynamic.ReplyEC"
+                impl="org.apache.agila.bpel.engine.priv.core.dynamic.impl.ReplyECImpl"/>
+            <execution-context interface="org.apache.agila.bpel.engine.priv.core.dynamic.SequenceEC"
+                impl="org.apache.agila.bpel.engine.priv.core.dynamic.impl.SequenceECImpl"/>
+            <execution-context interface="org.apache.agila.bpel.engine.priv.core.dynamic.SwitchEC"
+                impl="org.apache.agila.bpel.engine.priv.core.dynamic.impl.SwitchECImpl"/>
+            <execution-context interface="org.apache.agila.bpel.engine.priv.core.dynamic.TerminateEC"
+                impl="org.apache.agila.bpel.engine.priv.core.dynamic.impl.TerminateECImpl"/>
+            <execution-context interface="org.apache.agila.bpel.engine.priv.core.dynamic.WaitEC"
+                impl="org.apache.agila.bpel.engine.priv.core.dynamic.impl.WaitECImpl"/>
+            <execution-context interface="org.apache.agila.bpel.engine.priv.core.dynamic.WhileEC"
+                impl="org.apache.agila.bpel.engine.priv.core.dynamic.impl.WhileECImpl"/>
+        </implementations>
+
+        <executions>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Assign"
+                execution="org.apache.agila.bpel.engine.priv.core.dynamic.AssignEC"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Empty"
+                execution="org.apache.agila.bpel.engine.priv.core.dynamic.EmptyEC"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Flow"
+                execution="org.apache.agila.bpel.engine.priv.core.dynamic.FlowEC"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Invoke"
+                execution="org.apache.agila.bpel.engine.priv.core.dynamic.InvokeEC"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Pick"
+                execution="org.apache.agila.bpel.engine.priv.core.dynamic.PickEC"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Receive"
+                execution="org.apache.agila.bpel.engine.priv.core.dynamic.ReceiveEC"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Reply"
+                execution="org.apache.agila.bpel.engine.priv.core.dynamic.ReplyEC"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Sequence"
+                execution="org.apache.agila.bpel.engine.priv.core.dynamic.SequenceEC"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Switch"
+                execution="org.apache.agila.bpel.engine.priv.core.dynamic.SwitchEC"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Terminate"
+                execution="org.apache.agila.bpel.engine.priv.core.dynamic.TerminateEC"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.Wait"
+                execution="org.apache.agila.bpel.engine.priv.core.dynamic.WaitEC"/>
+            <activity interface="org.apache.agila.bpel.engine.priv.core.definition.While"
+                execution="org.apache.agila.bpel.engine.priv.core.dynamic.WhileEC"/>
+        </executions>
+    </engine>
+</agila>
\ No newline at end of file

Added: incubator/agila/trunk/modules/bpel/engine/wsa/src/test/resources/hibernate.cfg.xml
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/engine/wsa/src/test/resources/hibernate.cfg.xml?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/engine/wsa/src/test/resources/hibernate.cfg.xml (added)
+++ incubator/agila/trunk/modules/bpel/engine/wsa/src/test/resources/hibernate.cfg.xml Wed Apr 27 13:27:43 2005
@@ -0,0 +1,63 @@
+<?xml version='1.0' encoding='utf-8'?>
+<!DOCTYPE hibernate-configuration PUBLIC
+    "-//Hibernate/Hibernate Configuration DTD//EN"
+    "http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd">
+
+<hibernate-configuration>
+
+    <session-factory>
+
+        <!-- HSQLDB configuration -->
+
+        <property name="connection.driver_class">org.hsqldb.jdbcDriver</property>
+        <property name="connection.url">jdbc:hsqldb:hsql://localhost</property>
+        <property name="connection.username">sa</property>
+        <property name="connection.password"></property>
+        <property name="dialect">net.sf.hibernate.dialect.HSQLDialect</property>
+	
+	  <!-- MySQL configuration -->
+<!--        <property name="connection.driver_class">org.gjt.mm.mysql.Driver</property> -->
+<!--        <property name="connection.url">jdbc:mysql://localhost/agila</property>   -->
+<!--        <property name="connection.username">root</property>                        -->
+<!--        <property name="connection.password">root</property>                        -->
+<!--        <property name="dialect">net.sf.hibernate.dialect.MySQLDialect</property>   -->
+
+        <property name="connection.pool_size">10</property>
+        <property name="statement_cache.size">50</property>
+
+        <property name="c3p0.max_size">10</property>
+        <property name="c3p0.min_size">1</property>
+        <property name="c3p0.timeout">60</property>
+        <property name="c3p0.max_statements">50</property>
+
+        <property name="transaction.factory_class">net.sf.hibernate.transaction.JDBCTransactionFactory</property>
+
+        <property name="show_sql">true</property>
+        <property name="use_outer_join">true</property>
+
+        <mapping resource="org/apache/agila/bpel/engine/alarmevent.hbm.xml"/>
+        <mapping resource="org/apache/agila/bpel/engine/common/objectlifecycleevent.hbm.xml"/>
+
+        <mapping resource="org/apache/agila/bpel/engine/activity.hbm.xml"/>
+        <mapping resource="org/apache/agila/bpel/engine/assignment.hbm.xml"/>
+        <mapping resource="org/apache/agila/bpel/engine/correlationref.hbm.xml"/>
+        <mapping resource="org/apache/agila/bpel/engine/correlationsset.hbm.xml"/>
+        <mapping resource="org/apache/agila/bpel/engine/executioncontext.hbm.xml"/>
+        <mapping resource="org/apache/agila/bpel/engine/executionevent.hbm.xml"/>
+        <mapping resource="org/apache/agila/bpel/engine/link.hbm.xml"/>
+        <mapping resource="org/apache/agila/bpel/engine/messageevent.hbm.xml"/>
+        <mapping resource="org/apache/agila/bpel/engine/process.hbm.xml"/>
+        <mapping resource="org/apache/agila/bpel/engine/processinstance.hbm.xml"/>
+        <mapping resource="org/apache/agila/bpel/engine/property.hbm.xml"/>
+        <mapping resource="org/apache/agila/bpel/engine/propertyalias.hbm.xml"/>
+        <mapping resource="org/apache/agila/bpel/engine/valuedproperty.hbm.xml"/>
+        <mapping resource="org/apache/agila/bpel/engine/ectaskpersister.hbm.xml"/> 
+
+        <mapping resource="org/apache/agila/bpel/worklist/workitem.hbm.xml"/>
+
+        <mapping resource="org/apache/agila/bpel/user/priv/UserImpl.hbm.xml"/>
+        <mapping resource="org/apache/agila/bpel/user/priv/GroupImpl.hbm.xml"/>
+        <mapping resource="org/apache/agila/bpel/user/priv/RoleImpl.hbm.xml"/>
+    </session-factory>
+
+</hibernate-configuration>

Added: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/META-INF/context.xml
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/META-INF/context.xml?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/META-INF/context.xml (added)
+++ incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/META-INF/context.xml Wed Apr 27 13:27:43 2005
@@ -0,0 +1,4 @@
+<Context path="/agila-ws" debug="0" reloadable="true">
+    <Logger className="org.apache.catalina.logger.FileLogger" 
+        	prefix="agila_log." suffix=".txt" timestamp="true"/>
+</Context>

Added: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet$SOAPMonitorData.class
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet%24SOAPMonitorData.class?rev=165042&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet$SOAPMonitorData.class
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet$SOAPMonitorFilter.class
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet%24SOAPMonitorFilter.class?rev=165042&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet$SOAPMonitorFilter.class
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet$SOAPMonitorPage.class
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet%24SOAPMonitorPage.class?rev=165042&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet$SOAPMonitorPage.class
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet$SOAPMonitorTableModel.class
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet%24SOAPMonitorTableModel.class?rev=165042&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet$SOAPMonitorTableModel.class
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet$SOAPMonitorTextArea.class
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet%24SOAPMonitorTextArea.class?rev=165042&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet$SOAPMonitorTextArea.class
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet$ServiceFilterPanel.class
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet%24ServiceFilterPanel.class?rev=165042&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet$ServiceFilterPanel.class
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet.class
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet.class?rev=165042&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/SOAPMonitorApplet.class
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/WEB-INF/classes/log4j.properties
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/WEB-INF/classes/log4j.properties?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/WEB-INF/classes/log4j.properties (added)
+++ incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/WEB-INF/classes/log4j.properties Wed Apr 27 13:27:43 2005
@@ -0,0 +1,25 @@
+log4j.rootCategory=INFO, R, stdout
+
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
+log4j.appender.stdout.layout.ConversionPattern=[Agila] %p [%t] %C{1}.%M(%L) | %m%n
+
+log4j.appender.R=org.apache.log4j.RollingFileAppender
+log4j.appender.R.File=${catalina.home}/logs/agila-server.log
+log4j.appender.R.MaxFileSize=1000KB
+log4j.appender.R.MaxBackupIndex=0
+log4j.appender.R.layout=org.apache.log4j.PatternLayout
+log4j.appender.R.layout.ConversionPattern=%d %p %t %c - %m%n
+
+# If programmed properly the most messages would be at DEBUG 
+# and the least at FATAL.
+log4j.logger.org.apache.agila.bpel=DEBUG
+
+# Control logging for other packages
+log4j.logger.org.apache.commons=ERROR
+log4j.logger.org.apache.struts=WARN
+log4j.logger.net.sf.hibernate.ps.PreparedStatementCache=WARN
+log4j.logger.net.sf.hibernate=INFO
+log4j.logger.org.apache.xindice=WARN
+
+

Added: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/WEB-INF/server-config.wsdd
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/WEB-INF/server-config.wsdd?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/WEB-INF/server-config.wsdd (added)
+++ incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/WEB-INF/server-config.wsdd Wed Apr 27 13:27:43 2005
@@ -0,0 +1,131 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
+    <globalConfiguration>
+        <parameter name="adminPassword" value="admin"/>
+        <parameter name="attachments.Directory" value="C:\dev\tools\platform\jakarta-tomcat-4.1.27\bin\..\webapps\agila-ws\WEB-INF\attachments"/>
+        <parameter name="attachments.implementation" value="org.apache.axis.attachments.AttachmentsImpl"/>
+        <parameter name="sendXsiTypes" value="true"/>
+        <parameter name="sendMultiRefs" value="true"/>
+        <parameter name="sendXMLDeclaration" value="true"/>
+        <parameter name="axis.sendMinimizedElements" value="true"/>
+        <requestFlow>
+            <handler type="java:org.apache.axis.handlers.JWSHandler">
+                <parameter name="scope" value="session"/>
+            </handler>
+            <handler type="java:org.apache.axis.handlers.JWSHandler">
+                <parameter name="scope" value="request"/>
+                <parameter name="extension" value=".jwr"/>
+            </handler>
+        </requestFlow>
+    </globalConfiguration>
+
+    <handler name="LocalResponder" type="java:org.apache.axis.transport.local.LocalResponder"/>
+    <handler name="URLMapper" type="java:org.apache.axis.handlers.http.URLMapper"/>
+    <handler name="Authenticate" type="java:org.apache.axis.handlers.SimpleAuthenticationHandler"/>
+    <handler name="soapmonitor"
+        type="java:org.apache.axis.handlers.SOAPMonitorHandler">
+        <parameter name="wsdlURL"
+            value="/axis/SOAPMonitorService-impl.wsdl"/>
+        <parameter name="namespace"
+            value="http://tempuri.org/wsdl/2001/12/SOAPMonitorService-impl.wsdl"/>
+        <parameter name="serviceName" value="SOAPMonitorService"/>
+        <parameter name="portName" value="Demo"/>
+    </handler>
+
+    <service name="AgilaEngine" provider="java:MSG" style="message" use="literal">
+        <requestFlow>
+          <handler type="soapmonitor"/>
+        </requestFlow>
+        <responseFlow>
+          <handler type="soapmonitor"/>
+        </responseFlow>
+        <parameter name="allowedMethods" value="acknowledge"/>
+        <parameter name="className" value="org.apache.agila.bpel.wsa.EngineWSA"/>
+    </service>
+
+    <service name="AgilaEngineAdmin" provider="java:RPC">
+        <requestFlow>
+          <handler type="soapmonitor"/>
+        </requestFlow>
+        <responseFlow>
+          <handler type="soapmonitor"/>
+        </responseFlow>
+        <parameter name="allowedMethods" value="*"/>
+        <parameter name="className" value="org.apache.agila.bpel.wsa.EngineAdminWSA"/>
+        <beanMapping qname="ns:audit" xmlns:ns="http://www.apache.org/agila/types/monitoring/"
+          languageSpecificType="java:org.apache.agila.bpel.engine.common.monitoring.Audit"/>
+        <beanMapping qname="ns:auditEntry" xmlns:ns="http://www.apache.org/agila/types/monitoring/"
+          languageSpecificType="java:org.apache.agila.bpel.engine.common.monitoring.AuditEntry"/>
+        <beanMapping qname="ns:event" xmlns:ns="http://www.apache.org/agila/types/monitoring/"
+          languageSpecificType="java:org.apache.agila.bpel.engine.common.event.execution.impl.ExecutionEventImpl"/>
+    </service>
+
+    <service name="AgilaDeployer" provider="java:RPC">
+        <requestFlow>
+          <handler type="soapmonitor"/>
+        </requestFlow>
+        <responseFlow>
+          <handler type="soapmonitor"/>
+        </responseFlow>
+        <parameter name="allowedMethods" value="*"/>
+        <parameter name="className" value="org.apache.agila.bpel.wsa.DeployerWSA"/>
+    </service>
+
+    <service name="AgilaWorkList" provider="java:RPC">
+        <requestFlow>
+          <handler type="soapmonitor"/>
+        </requestFlow>
+        <responseFlow>
+          <handler type="soapmonitor"/>
+        </responseFlow>
+        <parameter name="allowedMethods" value="*"/>
+        <parameter name="className" value="org.apache.agila.bpel.wsa.WorkListWSA"/>
+        <beanMapping qname="ns:workitem" xmlns:ns="http://www.apache.org/agila/types/workitem/"
+            languageSpecificType="java:org.apache.agila.bpel.worklist.priv.po.WorkItemImpl"/>
+    </service>
+
+    <service name="AgilaUser" provider="java:RPC">
+        <requestFlow>
+          <handler type="soapmonitor"/>
+        </requestFlow>
+        <responseFlow>
+          <handler type="soapmonitor"/>
+        </responseFlow>
+        <parameter name="allowedMethods" value="*"/>
+        <parameter name="className" value="org.apache.agila.bpel.wsa.UserWSA"/>
+        <beanMapping qname="ns:user" xmlns:ns="http://www.apache.org/agila/types/user/"
+            languageSpecificType="java:org.apache.agila.bpel.user.priv.UserImpl"/>
+        <beanMapping qname="ns:group" xmlns:ns="http://www.apache.org/agila/types/user/"
+            languageSpecificType="java:org.apache.agila.bpel.user.priv.GroupImpl"/>
+        <beanMapping qname="ns:role" xmlns:ns="http://www.apache.org/agila/types/user/"
+            languageSpecificType="java:org.apache.agila.bpel.user.priv.RoleImpl"/>
+    </service>
+
+    <service name="AdminService" provider="java:MSG">
+        <parameter name="allowedMethods" value="AdminService"/>
+        <parameter name="enableRemoteAdmin" value="false"/>
+        <parameter name="className" value="org.apache.axis.utils.Admin"/>
+        <namespace>http://xml.apache.org/axis/wsdd/</namespace>
+    </service>
+    <service name="Version" provider="java:RPC">
+        <parameter name="allowedMethods" value="getVersion"/>
+        <parameter name="className" value="org.apache.axis.Version"/>
+    </service>
+    <service name="SOAPMonitorService" provider="java:RPC">
+        <parameter name="allowedMethods" value="publishMessage"/>
+        <parameter name="className"
+            value="org.apache.axis.monitor.SOAPMonitorService"/>
+        <parameter name="scope" value="Application"/>
+    </service>
+    <transport name="http">
+        <requestFlow>
+            <handler type="URLMapper"/>
+            <handler type="java:org.apache.axis.handlers.http.HTTPAuthHandler"/>
+        </requestFlow>
+    </transport>
+    <transport name="local">
+        <responseFlow>
+            <handler type="LocalResponder"/>
+        </responseFlow>
+    </transport>
+</deployment>
\ No newline at end of file

Added: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/WEB-INF/web.xml
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/WEB-INF/web.xml?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/WEB-INF/web.xml (added)
+++ incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/WEB-INF/web.xml Wed Apr 27 13:27:43 2005
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<!--
+<!DOCTYPE web-app
+  PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
+  "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
+-->
+<!DOCTYPE web-app
+    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
+    "http://java.sun.com/dtd/web-app_2_3.dtd">
+
+<web-app>
+    <display-name>Agila's Web Services</display-name>
+
+    <listener>
+        <listener-class>org.apache.agila.bpel.wsa.EngineInitializer</listener-class>
+    </listener>
+
+    <servlet>
+        <servlet-name>AxisServlet</servlet-name>
+        <display-name>Apache-Axis Servlet</display-name>
+        <servlet-class>
+        org.apache.axis.transport.http.AxisServlet
+        </servlet-class>
+    </servlet>
+
+    <servlet>
+        <servlet-name>AdminServlet</servlet-name>
+        <display-name>Axis Admin Servlet</display-name>
+        <servlet-class>
+        org.apache.axis.transport.http.AdminServlet
+        </servlet-class>
+        <load-on-startup>100</load-on-startup>
+    </servlet>
+
+    <servlet>
+        <servlet-name>SOAPMonitorService</servlet-name>
+        <display-name>SOAPMonitorService</display-name>
+        <servlet-class>
+        org.apache.axis.monitor.SOAPMonitorService
+        </servlet-class>
+        <init-param>
+            <param-name>SOAPMonitorPort</param-name>
+            <param-value>5001</param-value>
+        </init-param>
+        <load-on-startup>100</load-on-startup>
+    </servlet>
+
+  <servlet-mapping>
+    <servlet-name>AdminServlet</servlet-name>
+    <url-pattern>/servlet/AdminServlet</url-pattern>
+  </servlet-mapping>
+
+    <servlet-mapping>
+        <servlet-name>AxisServlet</servlet-name>
+        <url-pattern>/servlet/AxisServlet</url-pattern>
+    </servlet-mapping>
+
+    <servlet-mapping>
+        <servlet-name>AxisServlet</servlet-name>
+        <url-pattern>*.jws</url-pattern>
+    </servlet-mapping>
+
+    <servlet-mapping>
+        <servlet-name>AxisServlet</servlet-name>
+        <url-pattern>/services/*</url-pattern>
+    </servlet-mapping>
+
+    <servlet-mapping>
+        <servlet-name>SOAPMonitorService</servlet-name>
+        <url-pattern>/SOAPMonitor</url-pattern>
+    </servlet-mapping>
+
+    <!-- currently the W3C havent settled on a media type for WSDL;
+    http://www.w3.org/TR/2003/WD-wsdl12-20030303/#ietf-draft
+    for now we go with the basic 'it's XML' response -->
+    <mime-mapping>
+        <extension>wsdl</extension>
+        <mime-type>text/xml</mime-type>
+    </mime-mapping>
+        
+    <mime-mapping>
+        <extension>xsd</extension>
+        <mime-type>text/xml</mime-type>
+    </mime-mapping>
+
+    <welcome-file-list id="WelcomeFileList">
+        <welcome-file>index.html</welcome-file>
+        <welcome-file>index.jsp</welcome-file>
+        <welcome-file>index.jws</welcome-file>
+    </welcome-file-list>
+
+</web-app>

Added: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/happyaxis.jsp
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/happyaxis.jsp?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/happyaxis.jsp (added)
+++ incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/happyaxis.jsp Wed Apr 27 13:27:43 2005
@@ -0,0 +1,526 @@
+<html>
+<%@ page import="java.io.InputStream,
+                 java.io.IOException,
+                 javax.xml.parsers.SAXParser,
+                 javax.xml.parsers.SAXParserFactory"
+   session="false" %>
+ <%
+    /*
+     * The Apache Software License, Version 1.1
+     *
+     * Copyright (c) 2002 The Apache Software Foundation.  All rights
+     * reserved.
+     *
+     * Redistribution and use in source and binary forms, with or without
+     * modification, are permitted provided that the following conditions
+     * are met:
+     *
+     * 1. Redistributions of source code must retain the above copyright
+     *    notice, this list of conditions and the following disclaimer.
+     *
+     * 2. Redistributions in binary form must reproduce the above copyright
+     *    notice, this list of conditions and the following disclaimer in
+     *    the documentation and/or other materials provided with the
+     *    distribution.
+     *
+     * 3. The end-user documentation included with the redistribution, if
+     *    any, must include the following acknowlegement:
+     *       "This product includes software developed by the
+     *        Apache Software Foundation (http://www.apache.org/)."
+     *    Alternately, this acknowlegement may appear in the software itself,
+     *    if and wherever such third-party acknowlegements normally appear.
+     *
+     * 4. The names "The Jakarta Project", "Ant", and "Apache Software
+     *    Foundation" must not be used to endorse or promote products derived
+     *    from this software without prior written permission. For written
+     *    permission, please contact apache@apache.org.
+     *
+     * 5. Products derived from this software may not be called "Apache"
+     *    nor may "Apache" appear in their names without prior written
+     *    permission of the Apache Group.
+     *
+     * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+     * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+     * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+     * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
+     * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+     * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+     * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+     * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+     * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+     * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+     * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+     * SUCH DAMAGE.
+     * ====================================================================
+     *
+     * This software consists of voluntary contributions made by many
+     * individuals on behalf of the Apache Software Foundation.  For more
+     * information on the Apache Software Foundation, please see
+     * <http://www.apache.org/>.
+     */
+%>
+<head>
+<title>Axis Happiness Page</title>
+</head>
+<body bgcolor='#ffffff'>
+<%!
+
+    /*
+     * Happiness tests for axis. These look at the classpath and warn if things
+     * are missing. Normally addng this much code in a JSP page is mad
+     * but here we want to validate JSP compilation too, and have a drop-in
+     * page for easy re-use
+     * @author Steve 'configuration problems' Loughran
+     * @author dims
+     * @author Brian Ewins
+     */
+
+
+    /**
+     * Get a string providing install information.
+     * TODO: make this platform aware and give specific hints
+     */
+    public String getInstallHints(HttpServletRequest request) {
+
+        String hint=
+            "<B><I>Note:</I></B> On Tomcat 4.x and Java1.4, you may need to put libraries that contain "
+            +"java.* or javax.* packages into CATALINA_HOME/common/lib"
+            +"<br>jaxrpc.jar and saaj.jar are two such libraries.";
+        return hint;
+    }
+
+    /**
+     * test for a class existing
+     * @param classname
+     * @return class iff present
+     */
+    Class classExists(String classname) {
+        try {
+            return Class.forName(classname);
+        } catch (ClassNotFoundException e) {
+            return null;
+        }
+    }
+
+    /**
+     * test for resource on the classpath
+     * @param resource
+     * @return true iff present
+     */
+    boolean resourceExists(String resource) {
+        boolean found;
+        InputStream instream=this.getClass().getResourceAsStream(resource);
+        found=instream!=null;
+        if(instream!=null) {
+            try {
+                instream.close();
+            } catch (IOException e) {
+            }
+        }
+        return found;
+    }
+
+    /**
+     * probe for a class, print an error message is missing
+     * @param out stream to print stuff
+     * @param category text like "warning" or "error"
+     * @param classname class to look for
+     * @param jarFile where this class comes from
+     * @param errorText extra error text
+     * @param homePage where to d/l the library
+     * @return the number of missing classes
+     * @throws IOException
+     */
+    int probeClass(JspWriter out,
+                   String category,
+                   String classname,
+                   String jarFile,
+                   String description,
+                   String errorText,
+                   String homePage) throws IOException {
+        try {
+            Class clazz = classExists(classname);
+            if(clazz == null)  {
+               String url="";
+               if(homePage!=null) {
+                  url="<br>  See <a href="+homePage+">"+homePage+"</a>";
+               }
+               out.write("<p>"+category+": could not find class "+classname
+                   +" from file <b>"+jarFile
+                   +"</b><br>  "+errorText
+                   +url
+                   +"<p>");
+               return 1;
+            } else {
+               String location = getLocation(out, clazz);
+               if(location == null) {
+                  out.write("Found "+ description + " (" + classname + ")<br>");
+               }
+               else {
+                  out.write("Found "+ description + " (" + classname + ") at " + location + "<br>");
+               }
+               return 0;
+            }
+        } catch(NoClassDefFoundError ncdfe) { 
+            String url="";
+            if(homePage!=null) {
+                url="<br>  See <a href="+homePage+">"+homePage+"</a>";
+            }
+            out.write("<p>"+category+": could not find a dependency"
+                    +" of class "+classname
+                    +" from file <b>"+jarFile
+                    +"</b><br> "+errorText
+                    +url
+                    +"<br>The root cause was: "+ncdfe.getMessage()
+                    +"<br>This can happen e.g. if "+classname+" is in" 
+                    +" the 'common' classpath, but a dependency like "
+                    +" activation.jar is only in the webapp classpath."
+                    +"<p>");
+            return 1;
+        }
+    }
+
+    /**
+     * get the location of a class
+     * @param out
+     * @param clazz
+     * @return the jar file or path where a class was found
+     */
+
+    String getLocation(JspWriter out,
+                       Class clazz) {
+        try {
+            java.net.URL url = clazz.getProtectionDomain().getCodeSource().getLocation();
+            String location = url.toString();
+            if(location.startsWith("jar")) {
+                url = ((java.net.JarURLConnection)url.openConnection()).getJarFileURL();
+                location = url.toString();
+            } 
+            
+            if(location.startsWith("file")) {
+                java.io.File file = new java.io.File(url.getFile());
+                return file.getAbsolutePath();
+            } else {
+                return url.toString();
+            }
+        } catch (Throwable t){
+        }
+        return "an unknown location";
+    }
+
+    /**
+     * a class we need if a class is missing
+     * @param out stream to print stuff
+     * @param classname class to look for
+     * @param jarFile where this class comes from
+     * @param errorText extra error text
+     * @param homePage where to d/l the library
+     * @throws IOException when needed
+     * @return the number of missing libraries (0 or 1)
+     */
+    int needClass(JspWriter out,
+                   String classname,
+                   String jarFile,
+                   String description,
+                   String errorText,
+                   String homePage) throws IOException {
+        return probeClass(out,
+                "<b>Error</b>",
+                classname,
+                jarFile,
+                description,
+                errorText,
+                homePage);
+    }
+
+    /**
+     * print warning message if a class is missing
+     * @param out stream to print stuff
+     * @param classname class to look for
+     * @param jarFile where this class comes from
+     * @param errorText extra error text
+     * @param homePage where to d/l the library
+     * @throws IOException when needed
+     * @return the number of missing libraries (0 or 1)
+     */
+    int wantClass(JspWriter out,
+                   String classname,
+                   String jarFile,
+                   String description,
+                   String errorText,
+                   String homePage) throws IOException {
+        return probeClass(out,
+                "<b>Warning</b>",
+                classname,
+                jarFile,
+                description,
+                errorText,
+                homePage);
+    }
+
+    /**
+     * probe for a resource existing,
+     * @param out
+     * @param resource
+     * @param errorText
+     * @throws Exception
+     */
+    int wantResource(JspWriter out,
+                      String resource,
+                      String errorText) throws Exception {
+        if(!resourceExists(resource)) {
+            out.write("<p><b>Warning</b>: could not find resource "+resource
+                        +"<br>"
+                        +errorText);
+            return 0;
+        } else {
+            out.write("found "+resource+"<br>");
+            return 1;
+        }
+    }
+
+
+    /**
+     *  get servlet version string
+     *
+     */
+
+    public String getServletVersion() {
+        ServletContext context=getServletConfig().getServletContext();
+        int major = context.getMajorVersion();
+        int minor = context.getMinorVersion();
+        return Integer.toString(major) + '.' + Integer.toString(minor);
+    }
+
+
+
+    /**
+     * what parser are we using.
+     * @return the classname of the parser
+     */
+    private String getParserName() {
+        SAXParser saxParser = getSAXParser();
+        if (saxParser == null) {
+            return "Could not create an XML Parser";
+        }
+
+        // check to what is in the classname
+        String saxParserName = saxParser.getClass().getName();
+        return saxParserName;
+    }
+
+    /**
+     * Create a JAXP SAXParser
+     * @return parser or null for trouble
+     */
+    private SAXParser getSAXParser() {
+        SAXParserFactory saxParserFactory = SAXParserFactory.newInstance();
+        if (saxParserFactory == null) {
+            return null;
+        }
+        SAXParser saxParser = null;
+        try {
+            saxParser = saxParserFactory.newSAXParser();
+        } catch (Exception e) {
+        }
+        return saxParser;
+    }
+
+    /**
+     * get the location of the parser
+     * @return path or null for trouble in tracking it down
+     */
+
+    private String getParserLocation(JspWriter out) {
+        SAXParser saxParser = getSAXParser();
+        if (saxParser == null) {
+            return null;
+        }
+        String location = getLocation(out,saxParser.getClass());
+        return location;
+    }
+    %>
+<html><head><title>Axis Happiness Page</title></head>
+<body>
+<h1>Axis Happiness Page</h1>
+<h2>Examining webapp configuration</h2>
+
+<p>
+<h3>Needed Components</h3>
+<%
+    int needed=0,wanted=0;
+
+    /**
+     * the essentials, without these Axis is not going to work
+     */
+    needed=needClass(out, "javax.xml.soap.SOAPMessage",
+            "saaj.jar",
+            "SAAJ API",
+            "Axis will not work",
+            "http://xml.apache.org/axis/");
+
+    needed+=needClass(out, "javax.xml.rpc.Service",
+            "jaxrpc.jar",
+            "JAX-RPC API",
+            "Axis will not work",
+            "http://xml.apache.org/axis/");
+
+    needed+=needClass(out, "org.apache.axis.transport.http.AxisServlet",
+            "axis.jar",
+            "Apache-Axis",
+            "Axis will not work",
+            "http://xml.apache.org/axis/");
+
+    needed+=needClass(out, "org.apache.commons.discovery.Resource",
+            "commons-discovery.jar",
+            "Jakarta-Commons Discovery",
+            "Axis will not work",
+            "http://jakarta.apache.org/commons/discovery.html");
+
+    needed+=needClass(out, "org.apache.commons.logging.Log",
+            "commons-logging.jar",
+            "Jakarta-Commons Logging",
+            "Axis will not work",
+            "http://jakarta.apache.org/commons/logging.html");
+
+    needed+=needClass(out, "org.apache.log4j.Layout",
+            "log4j-1.2.8.jar",
+            "Log4j",
+            "Axis may not work",
+            "http://jakarta.apache.org/log4j");
+
+    //should we search for a javax.wsdl file here, to hint that it needs
+    //to go into an approved directory? because we dont seem to need to do that.
+    needed+=needClass(out, "com.ibm.wsdl.factory.WSDLFactoryImpl",
+            "wsdl4j.jar",
+            "IBM's WSDL4Java",
+            "Axis will not work",
+            null);
+
+    needed+=needClass(out, "javax.xml.parsers.SAXParserFactory",
+            "xerces.jar",
+            "JAXP implementation",
+            "Axis will not work",
+            "http://xml.apache.org/xerces-j/");
+
+    needed+=needClass(out,"javax.activation.DataHandler",
+            "activation.jar",
+            "Activation API",
+            "Axis will not work",
+            "http://java.sun.com/products/javabeans/glasgow/jaf.html");
+%>
+<h3>Optional Components</h3>
+<%
+    /*
+     * now the stuff we can live without
+     */
+    wanted+=wantClass(out,"javax.mail.internet.MimeMessage",
+            "mail.jar",
+            "Mail API",
+            "Attachments will not work",
+            "http://java.sun.com/products/javamail/");
+
+    wanted+=wantClass(out,"org.apache.xml.security.Init",
+            "xmlsec.jar",
+            "XML Security API",
+            "XML Security is not supported",
+            "http://xml.apache.org/security/");
+
+    wanted += wantClass(out, "javax.net.ssl.SSLSocketFactory",
+            "jsse.jar or java1.4+ runtime",
+            "Java Secure Socket Extension",
+            "https is not supported",
+            "http://java.sun.com/products/jsse/");
+    /*
+     * resources on the classpath path
+     */
+    /* broken; this is a file, not a resource
+    wantResource(out,"/server-config.wsdd",
+            "There is no server configuration file;"
+            +"run AdminClient to create one");
+    */
+    /* add more libraries here */
+
+    out.write("<h3>");
+    //is everythng we need here
+    if(needed==0) {
+       //yes, be happy
+        out.write("<i>The core axis libraries are present. </i>");
+    } else {
+        //no, be very unhappy
+        response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
+        out.write("<i>"
+                +needed
+                +" core axis librar"
+                +(needed==1?"y is":"ies are")
+                +" missing</i>");
+    }
+    //now look at wanted stuff
+    if(wanted>0) {
+        out.write("<i>"
+                +wanted
+                +" optional axis librar"
+                +(wanted==1?"y is":"ies are")
+                +" missing</i>");
+    } else {
+        out.write("The optional components are present.");
+    }
+    out.write("</h3>");
+    //hint if anything is missing
+    if(needed>0 || wanted>0 ) {
+        out.write(getInstallHints(request));
+    }
+
+    %>
+    <p>
+    <B><I>Note:</I></B> Even if everything this page probes for is present, there is no guarantee your
+    web service will work, because there are many configuration options that we do
+    not check for. These tests are <i>necessary</i> but not <i>sufficient</i>
+    <hr>
+
+    <h2>Examining Application Server</h2>
+    <%
+        String servletVersion=getServletVersion();
+        String xmlParser=getParserName();
+        String xmlParserLocation = getParserLocation(out);
+
+    %>
+    <table>
+        <tr><td>Servlet version</td><td><%= servletVersion %></td></tr>
+        <tr><td>XML Parser</td><td><%= xmlParser %></td></tr>
+        <tr><td>XML ParserLocation</td><td><%= xmlParserLocation %></td></tr>
+    </table>
+<% if(xmlParser.indexOf("crimson")>=0) { %>
+    <p>
+    <b>We recommend <a href="http://xml.apache.org/xerces2-j/">Xerces 2</a>
+        over Crimson as the XML parser for Axis</b>
+    </p>
+<%    } %>
+
+    <h2>Examining System Properties</h2>
+<%
+    /** 
+     * Dump the system properties
+     */
+    java.util.Enumeration e=null;
+    try {
+        e= System.getProperties().propertyNames();
+    } catch (SecurityException se) {
+    }
+    if(e!=null) {
+        out.write("<pre>");
+        for (;e.hasMoreElements();) {
+            String key = (String) e.nextElement();
+            out.write(key + "=" + System.getProperty(key)+"\n");
+        }
+        out.write("</pre><p>");
+    } else {
+        out.write("System properties are not accessible<p>");
+    }
+%>
+    <hr>
+    Platform: <%= getServletConfig().getServletContext().getServerInfo()  %>
+</body>
+</html>
+
+

Added: incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/index.html
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/index.html?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/index.html (added)
+++ incubator/agila/trunk/modules/bpel/engine/wsa/src/webapp/index.html Wed Apr 27 13:27:43 2005
@@ -0,0 +1,48 @@
+<html>
+
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<title>Apache-Axis</title>
+</head>
+
+<body bgcolor="#FFFFFF">
+
+<h1 align="center">Apache-AXIS</h1>
+
+<p>Hello! <em>Welcome</em> to Apache-Axis.</p>
+
+<p>What do you want to do today?</p>
+
+<ul>
+    <li><a href="happyaxis.jsp">Validate</a>
+        the local installation's configuration<br>
+        <i>see below if this does not work.</i></li>
+    <li><a href="servlet/AxisServlet">View</a>
+        the list of deployed Web services</li>
+    <li><a href="EchoHeaders.jws?method=list">
+        Call a local endpoint</a> that list's the caller's
+        http headers (or see its
+        <a href="EchoHeaders.jws?wsdl">WSDL</a>). 
+    <li><a href="http://xml.apache.org/axis">Visit</a>
+        the Apache-Axis Home Page</li>
+    <li><a href="servlet/AdminServlet">Administer Axis</a> <br>
+        [disabled by default for security reasons]</li>
+    <li><a href="SOAPMonitor">SOAPMonitor</a> <br>
+        [disabled by default for security reasons]</li>
+</ul>
+To enable the disabled features, uncomment the appropriate declarations in 
+WEB-INF/web.xml in the webapplication and restart it.
+<h3>Validating Axis</h3>
+
+If the "happyaxis" validation page displays an exception instead of a 
+status page, the likely cause is that you have multiple XML parsers in 
+your classpath. Clean up your classpath by eliminating extraneous parsers. 
+
+<p>
+If you have problems getting Axis to work, consult the Axis 
+<a
+href="http://nagoya.apache.org/wiki/apachewiki.cgi?AxisProjectPages">Wiki</a>
+and then try the Axis user mailing list. 
+</body>
+</html>

Added: incubator/agila/trunk/modules/bpel/locator.ent
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/locator.ent?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/locator.ent (added)
+++ incubator/agila/trunk/modules/bpel/locator.ent Wed Apr 27 13:27:43 2005
@@ -0,0 +1 @@
+<!ENTITY % dependencies SYSTEM "file:dependencies.ent">%dependencies;

Added: incubator/agila/trunk/modules/bpel/maven.xml
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/maven.xml?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/maven.xml (added)
+++ incubator/agila/trunk/modules/bpel/maven.xml Wed Apr 27 13:27:43 2005
@@ -0,0 +1,53 @@
+<project default="multiproject:install"
+  xmlns:j="jelly:core"
+  xmlns:u="jelly:util"
+  xmlns:ant="jelly:ant"
+  xmlns:maven="jelly:maven"
+  xmlns:m="maven"
+  xmlns:deploy="deploy">
+
+
+<!-- ================================================================== -->
+<!-- B U I L D   S U B P R O J E C T S -->
+<!-- ================================================================== -->
+
+<goal name="buildall" description="Build each Agila subproject installing a jar or building a war">
+    <maven:reactor basedir="." includes="**/project.xml" excludes="project.xml"
+        goals="clean,buildmodule" banner="Building" ignoreFailures="false" />
+</goal>
+
+<goal name="cleanall" description="Cleans all module projects">
+    <maven:reactor basedir="." includes="*/project.xml" excludes="project.xml"
+        goals="clean" banner="Cleaning" ignoreFailures="false" />
+</goal>
+
+<!-- ================================================================== -->
+<!-- G E N E R A T E   S U B P R O J E C T S   D O C U M E N T A T I O N -->
+<!-- ================================================================== -->
+
+<goal name="siteall">
+    <echo>Starting reactor for submodules</echo>
+    <maven:reactor basedir="." includes="**/project.xml" excludes="project.xml" goals="site:generate"
+		banner="Generating site for" ignoreFailures="false"/>
+
+    <!-- create the parent directory for the docs -->
+    <mkdir dir="${maven.docs.dest}/module"/>
+    <!-- copy them all to ${maven.docs.dest}/module/${module.id}/ -->
+    <ant:fileScanner var="subModules">
+        <fileset dir="${basedir}">
+            <include name="**/project.xml"/>
+	    <excludes name="project.xml"/>
+        </fileset>
+    </ant:fileScanner>
+    <j:forEach items="${subModules.iterator()}" var="module">
+        <j:set var="moduleName" value="${module.parentFile.name}"/>
+        <mkdir dir="${maven.docs.dest}/module/${moduleName}/"/>
+        <copy toDir="${maven.docs.dest}/module/${moduleName}/">
+            <fileset dir="${module.parentFile}/target/docs/">
+                <include name="**"/>
+            </fileset>
+        </copy>
+    </j:forEach>
+</goal>
+
+</project>

Added: incubator/agila/trunk/modules/bpel/project.properties
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/project.properties?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/project.properties (added)
+++ incubator/agila/trunk/modules/bpel/project.properties Wed Apr 27 13:27:43 2005
@@ -0,0 +1,2 @@
+# don't use **/ or it will find ./project.xml
+maven.multiproject.includes=*/**/project.xml

Added: incubator/agila/trunk/modules/bpel/project.xml
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/project.xml?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/project.xml (added)
+++ incubator/agila/trunk/modules/bpel/project.xml Wed Apr 27 13:27:43 2005
@@ -0,0 +1,117 @@
+<?xml version="1.0"?>
+<project>
+    <pomVersion>3</pomVersion>
+    <name>Agila</name>
+    <id>agila</id>
+    <groupId>agila</groupId>
+    <currentVersion>0.3</currentVersion>
+    <inceptionYear>2003</inceptionYear>
+    <package>org.apache.agila.bpel</package>
+    <logo>http://www.apache.org/agila/AgilaLogo.jpg</logo>
+
+    <shortDescription>Business Process Management Solution</shortDescription>
+
+    <description>
+        Agila is aiming at providing a new generation, easily integrable, B2B oriented
+        Service Orchestration solution in Java, based on the WS-BPEL specification.
+    </description>
+
+    <url>http://www.apache.org/agila/</url>
+    <issueTrackingUrl>http://www.apache.org/jira</issueTrackingUrl>
+
+    <siteAddress>http://www.apache.org/agila</siteAddress>
+    <siteDirectory>/home/groups/w/wf/wf-agila/htdocs</siteDirectory>
+
+    <repository>
+        <connection>scm:cvs:pserver:anonymous@cvs.sourceforge.net:/cvsroot/wf-agila:anonymous</connection>
+        <url>http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/wf-agila/</url>
+    </repository>
+
+    <versions>
+        <version>
+            <id>0.2.1</id>
+            <name>v0.2.1</name>
+            <tag>v0_2_1_released</tag>
+        </version>
+        <version>
+            <id>0.3</id>
+            <name>v0.3</name>
+            <tag>HEAD</tag>
+        </version>
+    </versions>
+
+    <mailingLists>
+        <mailingList>
+            <name>Agila Users List</name>
+            <subscribe>
+                http://lists.sourceforge.net/lists/listinfo/wf-agila-users
+            </subscribe>
+            <unsubscribe>
+                http://lists.sourceforge.net/lists/listinfo/wf-agila-users
+            </unsubscribe>
+            <archive>
+                http://sourceforge.net/mailarchive/forum.php?forum=wf-agila-users
+            </archive>
+        </mailingList>
+        <mailingList>
+            <name>Agila Developer List</name>
+            <subscribe>
+                http://lists.sourceforge.net/lists/listinfo/wf-agila-devel
+            </subscribe>
+            <unsubscribe>
+                http://lists.sourceforge.net/lists/listinfo/wf-agila-devel
+            </unsubscribe>
+            <archive>
+                http://sourceforge.net/mailarchive/forum.php?forum=wf-agila-devel
+            </archive>
+        </mailingList>
+    </mailingLists>
+
+    <developers>
+
+        <developer>
+            <name>Frederic Do Couto Fernandes</name>
+            <id>docouto</id>
+            <email>frederic.docouto@apache.org</email>
+        </developer>
+
+        <developer>
+            <name>Matthieu Riou</name>
+            <id>mriou</id>
+            <email>matthieu.riou@apache.org</email>
+        </developer>
+
+        <developer>
+            <name>Norman Schoneich</name>
+            <id>norsch</id>
+        </developer>
+
+        <developer>
+            <name>Milan Chudick</name>
+            <id>chudickm</id>
+        </developer>
+
+    </developers>
+
+    <contributors>
+    
+    	<contributor>
+            <name>Christopher Marsh-Bourdon</name>
+	</contributor>
+    
+    	<contributor>
+            <name>Victor Panizza</name>
+	</contributor>
+    	
+	<contributor>
+            <name>Matthew L. Daniel</name>
+	</contributor>
+    </contributors>
+    
+    <reports>
+        <report>maven-license-plugin</report>
+    </reports>
+
+    <dependencies>
+    </dependencies>
+</project>

Added: incubator/agila/trunk/modules/bpel/samples/src/xml/example1/messages/ask5000.xml
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/samples/src/xml/example1/messages/ask5000.xml?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/samples/src/xml/example1/messages/ask5000.xml (added)
+++ incubator/agila/trunk/modules/bpel/samples/src/xml/example1/messages/ask5000.xml Wed Apr 27 13:27:43 2005
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<agila-msg xmlns="http://www.apache.org/agila/types/message">
+    <partner>loaner</partner>
+    <port>loanServicePT</port>
+    <operation>request</operation>
+    <message>
+        <firstName>john</firstName>
+        <lastName>doe</lastName>
+        <amount>5000</amount>
+    </message>
+</agila-msg>
\ No newline at end of file

Added: incubator/agila/trunk/modules/bpel/samples/src/xml/example1/messages/assessHighRisk.xml
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/samples/src/xml/example1/messages/assessHighRisk.xml?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/samples/src/xml/example1/messages/assessHighRisk.xml (added)
+++ incubator/agila/trunk/modules/bpel/samples/src/xml/example1/messages/assessHighRisk.xml Wed Apr 27 13:27:43 2005
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<agila-msg xmlns="http://www.apache.org/agila/types/message">
+    <partner>assessmentReceiver</partner>
+    <port>riskReceiverPT</port>
+    <operation>receiveRisk</operation>
+    <message>
+        <firstName>john</firstName>
+        <lastName>doe</lastName>
+        <level>high</level>
+    </message>
+</agila-msg>
\ No newline at end of file

Added: incubator/agila/trunk/modules/bpel/samples/src/xml/example1/messages/assessLowRisk.xml
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/samples/src/xml/example1/messages/assessLowRisk.xml?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/samples/src/xml/example1/messages/assessLowRisk.xml (added)
+++ incubator/agila/trunk/modules/bpel/samples/src/xml/example1/messages/assessLowRisk.xml Wed Apr 27 13:27:43 2005
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<agila-msg xmlns="http://www.apache.org/agila/types/message">
+    <partner>assessmentReceiver</partner>
+    <port>riskReceiverPT</port>
+    <operation>receiveRisk</operation>
+    <message>
+        <firstName>john</firstName>
+        <lastName>doe</lastName>
+        <level>low</level>
+    </message>
+</agila-msg>
\ No newline at end of file

Added: incubator/agila/trunk/modules/bpel/samples/src/xml/example1/process.xml
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/samples/src/xml/example1/process.xml?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/samples/src/xml/example1/process.xml (added)
+++ incubator/agila/trunk/modules/bpel/samples/src/xml/example1/process.xml Wed Apr 27 13:27:43 2005
@@ -0,0 +1,111 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<process name="loanApprovalProcess"
+    targetNamespace="http://www.apache.org/agila/samples/exemple1/process/"
+    xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
+    xmlns:lns="http://www.apache.org/agila/samples/exemple1/definition/">
+
+    <correlationSets>
+        <correlationSet properties="lns:customerFirstName lns:customerLastName" name="requestCorr"/>
+        <correlationSet properties="lns:workitem" name="workCorr"/>
+    </correlationSets>
+
+    <partnerLinks>
+        <partnerLink name="loaner" partnerLinkType="lns:loanPartnerLinkType" myRole="loanService"/>
+        <partnerLink name="customer" partnerLinkType="lns:loanPartnerLinkType" partnerRole="customerService"/>
+
+        <partnerLink name="assessor" partnerLinkType="lns:riskAssessmentLinkType" partnerRole="assessor"/>
+        <partnerLink name="assessmentReceiver" partnerLinkType="lns:riskAssessmentLinkType" myRole="assessmentReceiver"/>
+    </partnerLinks>
+
+    <variables>
+        <variable name="request" messageType="lns:creditInformationMessage"/>
+        <variable name="risk" messageType="lns:riskAssessmentMessage"/>
+        <variable name="approval" messageType="lns:approvalMessage"/>
+        <variable name="loanwork" messageType="lns:loanApprovalRequestMessage"/>
+        <variable name="loanMgrAnswer" messageType="lns:approvalMessage"/>
+        <variable name="workAnswer" messageType="lns:answerMessage"/>
+    </variables>
+
+    <sequence>
+        <receive partnerLink="loaner" portType="lns:loanServicePT" operation="request"
+            variable="request" createInstance="yes">
+            <correlations>
+                <correlation set="requestCorr" initiate="true"/>
+            </correlations>
+        </receive>
+
+        <invoke partnerLink="assessor" portType="lns:riskAssessmentPT" operation="check"
+            inputVariable="request">
+            <correlations>
+                <correlation set="requestCorr"/>
+            </correlations>
+        </invoke>
+        <receive partnerLink="assessmentReceiver" portType="lns:riskReceiverPT" operation="receiveRisk"
+            variable="risk">
+            <correlations>
+                <correlation set="requestCorr"/>
+            </correlations>
+        </receive>
+
+        <switch>
+            <case condition="bpws:getVariableData('request','amount')&lt;10000 and bpws:getVariableData('risk','level')='low'">
+                <assign>
+                    <copy>
+                        <from expression="'yes'"/>
+                        <to variable="approval" part="accept"/>
+                    </copy>
+                </assign>
+            </case>
+            <otherwise>
+                <sequence>
+                    <!-- Create a Work Item for a loan manager -->
+                    <assign>
+                        <copy>
+                            <from>loanmanager</from>
+                            <to variable="loanwork" part="wipart" query="/user"/>
+                        </copy>
+                        <copy>
+                            <from>Validate this loan request</from>
+                            <to variable="loanwork" part="wipart" query="/description"/>
+                        </copy>
+                        <copy>
+                            <from variable="request" part="firstName"/>
+                            <to variable="loanwork" part="firstName"/>
+                        </copy>
+                        <copy>
+                            <from variable="request" part="lastName"/>
+                            <to variable="loanwork" part="lastName"/>
+                        </copy>
+                    </assign>
+                    <invoke partnerLink="approver" portType="WorkListPT" operation="createWork"
+                        inputVariable="loanwork" outputVariable="workAnswer">
+                        <correlations>
+                            <correlation set="workCorr" initiate="true" pattern="in"/>
+                        </correlations>
+                    </invoke>
+                    <receive partnerLink="WorkListMgr" portType="WorkListAnswerPT" operation="receiveAnswer"
+                        variable="loanMgrAnswer">
+                        <correlations>
+                            <correlation set="workCorr"/>
+                        </correlations>
+                    </receive>
+                    <!-- We should copy from the loanMgrAnswer variable instead of a static assignment-->
+                    <assign>
+                        <copy>
+                            <from variable="loanMgrAnswer" part="accept" />
+                            <to variable="approval" part="accept"/>
+                        </copy>
+                    </assign>
+                </sequence>
+            </otherwise>
+        </switch>
+
+        <invoke partnerLink="customer" portType="lns:loanServicePT" operation="response"
+            inputVariable="approval">
+            <correlations>
+                <correlation set="requestCorr" initiate="false"/>
+            </correlations>
+        </invoke>
+    </sequence>
+
+</process>
\ No newline at end of file

Added: incubator/agila/trunk/modules/bpel/samples/src/xml/example1/wsdef.xml
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/samples/src/xml/example1/wsdef.xml?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/samples/src/xml/example1/wsdef.xml (added)
+++ incubator/agila/trunk/modules/bpel/samples/src/xml/example1/wsdef.xml Wed Apr 27 13:27:43 2005
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<definitions
+    targetNamespace="http://www.apache.org/agila/samples/exemple1/definition/"
+    xmlns="http://schemas.xmlsoap.org/wsdl/"
+    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+    xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
+    xmlns:wi="http://www.apache.org/agila/types/workitem/"
+    xmlns:lns="http://www.apache.org/agila/samples/exemple1/definition/">
+
+    <message name="creditInformationMessage">
+        <part name="firstName" type="xsd:string"/>
+        <part name="lastName" type="xsd:string"/>
+        <part name="amount" type="xsd:integer"/>
+    </message>
+    <message name="approvalMessage">
+        <part name="accept" type="xsd:string"/>
+        <part name="firstName" type="xsd:string"/>
+        <part name="lastName" type="xsd:string"/>
+    </message>
+    <message name="riskAssessmentMessage">
+        <part name="level" type="xsd:string"/>
+        <part name="firstName" type="xsd:string"/>
+        <part name="lastName" type="xsd:string"/>
+    </message>
+    <message name="loanApprovalRequestMessage">
+        <part name="wipart" element="wi:workitem"/>
+        <part name="firstName" type="xsd:string"/>
+        <part name="lastName" type="xsd:string"/>
+    </message>
+
+    <property name="customerFirstName" type="xsd:string"/>
+    <propertyAlias propertyName="customerFirstName" messageType="creditInformationMessage" part="firstName"/>
+    <propertyAlias propertyName="customerFirstName" messageType="approvalMessage" part="firstName"/>
+    <propertyAlias propertyName="customerFirstName" messageType="riskAssessmentMessage" part="firstName"/>
+
+    <property name="customerLastName" type="xsd:string"/>
+    <propertyAlias propertyName="customerLastName" messageType="creditInformationMessage" part="lastName"/>
+    <propertyAlias propertyName="customerLastName" messageType="approvalMessage" part="lastName"/>
+    <propertyAlias propertyName="customerLastName" messageType="riskAssessmentMessage" part="lastName"/>
+
+    <property name="workitem" type="xsd:string"/>
+    <propertyAlias propertyName="workitem" messageType="workMessage" part="wipart" query="/workitemid"/>
+
+    <portType name="loanServicePT">
+        <operation name="request">
+            <input message="lns:creditInformationMessage"/>
+            <fault name="unableToHandleRequest" message="lns:errorMessage"/>
+        </operation>
+        <operation name="response">
+            <input message="lns:approvalMessage"/>
+        </operation>
+    </portType>
+    <portType name="riskAssessmentPT">
+        <operation name="check">
+            <input message="lns:creditInformationMessage"/>
+            <fault name="loanProcessFault" message="lns:errorMessage"/>
+        </operation>
+    </portType>
+    <portType name="loanApprovalPT">
+        <operation name="approve">
+            <input message="lns:creditInformationMessage"/>
+            <fault name="loanProcessFault" message="lns:errorMessage"/>
+        </operation>
+    </portType>
+
+    <plnk:partnerLinkType name="loanPartnerLinkType">
+        <plnk:role name="loanService">
+            <plnk:portType name="lns:loanServicePT"/>
+        </plnk:role>
+        <plnk:role name="customerService">
+            <plnk:portType name="lns:customerServicePT"/>
+        </plnk:role>
+    </plnk:partnerLinkType>
+    <plnk:partnerLinkType name="loanApprovalLinkType">
+        <plnk:role name="approver">
+            <plnk:portType name="lns:loanApprovalPT"/>
+        </plnk:role>
+    </plnk:partnerLinkType>
+    <plnk:partnerLinkType name="riskAssessmentLinkType">
+        <plnk:role name="assessor">
+            <plnk:portType name="lns:riskAssessmentPT"/>
+        </plnk:role>
+        <plnk:role name="assessmentReceiver">
+            <plnk:portType name="lns:riskProcessorPT"/>
+        </plnk:role>
+    </plnk:partnerLinkType>
+</definitions>
\ No newline at end of file

Added: incubator/agila/trunk/modules/bpel/samples/src/xml/example2/messages/sendquery.xml
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/samples/src/xml/example2/messages/sendquery.xml?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/samples/src/xml/example2/messages/sendquery.xml (added)
+++ incubator/agila/trunk/modules/bpel/samples/src/xml/example2/messages/sendquery.xml Wed Apr 27 13:27:43 2005
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<agila-msg xmlns="http://www.apache.org/agila/types/message/">
+    <partner>googleInitiator</partner>
+    <port>googleInitiatorPT</port>
+    <operation>initiate</operation>
+    <message>
+        <key>7ovoJkRQFHKRFc/us9pPtBO1535144D6</key>
+    </message>
+</agila-msg>
\ No newline at end of file

Added: incubator/agila/trunk/modules/bpel/samples/src/xml/example2/process.xml
URL: http://svn.apache.org/viewcvs/incubator/agila/trunk/modules/bpel/samples/src/xml/example2/process.xml?rev=165042&view=auto
==============================================================================
--- incubator/agila/trunk/modules/bpel/samples/src/xml/example2/process.xml (added)
+++ incubator/agila/trunk/modules/bpel/samples/src/xml/example2/process.xml Wed Apr 27 13:27:43 2005
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<process name="googleQueryProcess"
+    targetNamespace="http://www.apache.org/agila/samples/exemple2/process/"
+    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+    xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
+    xmlns:lns="http://www.apache.org/agila/samples/exemple2/definition/">
+
+    <partnerLinks>
+        <partnerLink name="googleInitiator" partnerLinkType="lns:googleInitiatorLinkType" myRole="initiator"/>		
+        <partnerLink name="googleLink" partnerLinkType="lns:googleLinkType" partnerRole="googleService"/>
+    </partnerLinks>
+
+    <variables>
+        <variable name="inputGoogleKey" messageType="xsd:string"/>
+        <variable name="googleQuery" messageType="lns:doGoogleSearch"/>
+        <variable name="googleResponse" messageType="lns:doGoogleSearchResponse"/>
+    </variables>
+
+    <sequence>
+		<receive partnerLink="googleInitiator" portType="googleInitiatorPT" operation="initiate"
+            variable="inputGoogleKey" createInstance="yes"/>
+		
+		<assign>
+			<copy>
+				<from variable="inputGoogleKey" part="key"/>
+				<to variable="googleQuery" part="key"/>
+			</copy>
+			<copy>
+				<from>test</from>
+				<to variable="googleQuery" part="q"/>
+			</copy>
+			<copy>
+				<from>0</from>
+				<to variable="googleQuery" part="start"/>
+			</copy>
+			<copy>
+				<from>10</from>
+				<to variable="googleQuery" part="maxResults"/>
+			</copy>
+			<copy>
+				<from>false</from>
+				<to variable="googleQuery" part="filter"/>
+			</copy>
+			<copy>
+				<from></from>
+				<to variable="googleQuery" part="restrict"/>
+			</copy>
+			<copy>
+				<from>false</from>
+				<to variable="googleQuery" part="safeSearch"/>
+			</copy>
+			<copy>
+				<from></from>
+				<to variable="googleQuery" part="lr"/>
+			</copy>
+			<copy>
+				<from>latin1</from>
+				<to variable="googleQuery" part="ie"/>
+			</copy>
+			<copy>
+				<from>latin1</from>
+				<to variable="googleQuery" part="oe"/>
+			</copy>
+		</assign>
+
+        <invoke partnerLink="googleLink" portType="GoogleSearchPort" operation="doGoogleSearch"
+            inputVariable="googleQuery" outputVariable="googleResponse"/>			
+    </sequence>
+</process>
\ No newline at end of file



Mime
View raw message