You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by ms...@apache.org on 2007/02/08 19:50:22 UTC

svn commit: r505002 - in /incubator/ode/trunk: axis2/src/main/java/org/apache/ode/axis2/ axis2/src/main/java/org/apache/ode/axis2/hooks/ axis2/src/test/java/org/apache/ode/axis2/ axis2/src/test/resources/ bpel-api/src/main/java/org/apache/ode/bpel/iapi/

Author: mszefler
Date: Thu Feb  8 10:50:21 2007
New Revision: 505002

URL: http://svn.apache.org/viewvc?view=rev&rev=505002
Log:
Moved some process store event improvements from dev branch. 

Added:
    incubator/ode/trunk/axis2/src/test/java/org/apache/ode/axis2/SoapMessageConverterTest.java
    incubator/ode/trunk/axis2/src/test/resources/HelloWorld.wsdl
    incubator/ode/trunk/axis2/src/test/resources/HelloWorldRequest.soap
    incubator/ode/trunk/axis2/src/test/resources/test1.wsdl
    incubator/ode/trunk/axis2/src/test/resources/testRequest1.xml
    incubator/ode/trunk/axis2/src/test/resources/testRequest1Bad.xml
Modified:
    incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java
    incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/hooks/ODEAxisServlet.java
    incubator/ode/trunk/bpel-api/src/main/java/org/apache/ode/bpel/iapi/ProcessStoreEvent.java

Modified: incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java?view=diff&rev=505002&r1=505001&r2=505002
==============================================================================
--- incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java (original)
+++ incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java Thu Feb  8 10:50:21 2007
@@ -486,10 +486,14 @@
         _daoCF = cf;
     }
 
-    private void initProcessStore() {
-        _store = new ProcessStoreImpl(_datasource);
+    protected void initProcessStore() {
+        _store = createProcessStore(_datasource);
         _store.registerListener(new ProcessStoreListenerImpl());
         _store.setDeployDir(new File(_workRoot, "processes"));
+    }
+    
+    protected ProcessStoreImpl createProcessStore(DataSource ds) {
+        return new ProcessStoreImpl(ds);
     }
 
     private void initBpelServer() {

Modified: incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/hooks/ODEAxisServlet.java
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/hooks/ODEAxisServlet.java?view=diff&rev=505002&r1=505001&r2=505002
==============================================================================
--- incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/hooks/ODEAxisServlet.java (original)
+++ incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/hooks/ODEAxisServlet.java Thu Feb  8 10:50:21 2007
@@ -43,13 +43,17 @@
      */
     public void init(ServletConfig config) throws ServletException {
         super.init(config);
-        _odeServer = new ODEServer();
+        _odeServer = createODEServer();
         _odeServer.init(config, axisConfiguration);
     }
 
     public void stop() throws AxisFault {
         super.stop();
         _odeServer.shutDown();
+    }
+    
+    protected ODEServer createODEServer() {
+        return new ODEServer();
     }
 
 }

Added: incubator/ode/trunk/axis2/src/test/java/org/apache/ode/axis2/SoapMessageConverterTest.java
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/axis2/src/test/java/org/apache/ode/axis2/SoapMessageConverterTest.java?view=auto&rev=505002
==============================================================================
--- incubator/ode/trunk/axis2/src/test/java/org/apache/ode/axis2/SoapMessageConverterTest.java (added)
+++ incubator/ode/trunk/axis2/src/test/java/org/apache/ode/axis2/SoapMessageConverterTest.java Thu Feb  8 10:50:21 2007
@@ -0,0 +1,136 @@
+package org.apache.ode.axis2;
+
+import javax.wsdl.Definition;
+import javax.wsdl.Operation;
+import javax.wsdl.PortType;
+import javax.wsdl.factory.WSDLFactory;
+import javax.wsdl.xml.WSDLReader;
+import javax.xml.namespace.QName;
+import javax.xml.stream.XMLInputFactory;
+import javax.xml.stream.XMLStreamReader;
+
+import junit.framework.TestCase;
+
+import org.apache.axiom.om.impl.llom.factory.OMXMLBuilderFactory;
+import org.apache.axiom.soap.SOAPEnvelope;
+import org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder;
+import org.apache.axiom.soap.impl.dom.soap11.SOAP11Factory;
+import org.apache.axis2.AxisFault;
+import org.apache.ode.axis2.util.SoapMessageConverter;
+import org.apache.ode.utils.DOMUtils;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+
+public class SoapMessageConverterTest extends TestCase {
+    
+    Definition wsdl1,wsdlHW;
+    String wsdl1tns = "http://documentum.com/ws/2005/services";
+    QName repoService = new QName(wsdl1tns, "RepoAccessorService"); 
+    QName portTypeName = new QName(wsdl1tns,"RepoAccessor");
+    String portName = "RepoAccessor";
+    SoapMessageConverter portmapper;
+    
+    PortType portType, portTypeHW;
+    Document req1bad;
+    Document req1;
+    private Operation op1,opHello;
+    
+    public SoapMessageConverterTest() throws Exception {
+        req1bad = DOMUtils.parse(getClass().getResourceAsStream("/testRequest1Bad.xml"));  
+        req1 = DOMUtils.parse(getClass().getResourceAsStream("/testRequest1.xml"));
+        WSDLReader reader = WSDLFactory.newInstance().newWSDLReader();
+        wsdl1 = reader.readWSDL(getClass().getResource("/test1.wsdl").toExternalForm());
+        portType = wsdl1.getPortType(portTypeName);
+        op1 = portType.getOperation("getObjectId", null, null);
+
+        wsdlHW = reader.readWSDL(getClass().getResource("/HelloWorld.wsdl").toExternalForm());
+        portTypeHW = wsdlHW.getPortType(new QName(wsdlHW.getTargetNamespace(),"HelloPortType"));
+        opHello = portTypeHW.getOperation("hello",null,null);
+}
+    
+    public void setUp() throws Exception {
+        portmapper = new SoapMessageConverter(new SOAP11Factory(),
+                wsdl1, repoService, portName, true);
+    }
+    
+    public void tearDown() {
+        
+    }
+    
+    public void testBadPortName() {
+        try {
+            new SoapMessageConverter(new SOAP11Factory(),
+                    wsdl1, repoService, "badPort", true);
+            fail("Should have thrown axis error.");
+        } catch(AxisFault af) {
+            ;//expected
+        }
+    }
+
+    public void testBadServiceName() {
+        try {
+            new SoapMessageConverter(new SOAP11Factory(),
+                    wsdl1, new QName(wsdl1tns, "foobar"), portName, true);
+            fail("Should have thrown axis error.");
+        } catch(AxisFault af) {
+            ;//expected
+        }
+    }
+
+    public void testCreateSOAPRequest() throws Exception {
+        SOAPEnvelope env = new SOAP11Factory().createSOAPEnvelope();
+        portmapper.createSoapRequest(env, req1.getDocumentElement(),
+                portType.getOperation("getObjectId", null, null));
+        System.out.println(env);
+        QName elPartName = new QName(wsdl1tns, "getObjectId");
+        assertNotNull(env.getBody());
+        assertNotNull(env.getBody().getFirstElement());
+        // doc-lit style, no part wrapper
+        assertEquals(elPartName,env.getBody().getFirstElement().getQName());
+        
+    }
+    
+    public void testCreateSOAPRequestFail() throws Exception {
+        SOAPEnvelope env = new SOAP11Factory().createSOAPEnvelope();
+        try {
+        portmapper.createSoapRequest(env, req1bad.getDocumentElement(),
+                portType.getOperation("getObjectId", null, null));
+        fail("Should have caused an ex");
+        } catch (AxisFault af) {
+            ; // expected
+        }
+    }
+    
+    public void testGetSoapAction() throws Exception {
+        assertEquals("getObjectIdAction", portmapper.getSoapAction("getObjectId"));
+        assertEquals("", portmapper.getSoapAction("foo"));
+    }
+    
+    public void testParseRequest() throws Exception {
+        SOAPEnvelope env = new SOAP11Factory().createSOAPEnvelope();
+        portmapper.createSoapRequest(env, req1.getDocumentElement(),op1);
+        System.out.println(env);  
+        Element odeMsg = DOMUtils.stringToDOM("<message/>");
+        portmapper.parseSoapRequest(odeMsg, env, op1);
+        System.out.println(DOMUtils.domToString(odeMsg));  
+        Element params = DOMUtils.findChildByName(odeMsg, new QName(null, "parameters"));
+        assertNotNull(params);
+        Element hdr = DOMUtils.findChildByName(odeMsg,new QName("urn:ode.apache.org/axis2-il/header","DocumentumRequestHeader"));
+        assertNotNull(hdr);
+    }
+    
+    /** Make sure hello world request parses correctly. */
+    public void testHelloWorldRequest() throws Exception {
+        XMLStreamReader sr = XMLInputFactory.newInstance().createXMLStreamReader(getClass().getResourceAsStream("/HelloWorldRequest.soap"));
+        StAXSOAPModelBuilder builder = OMXMLBuilderFactory.createStAXSOAPModelBuilder(new SOAP11Factory(),sr);
+        SOAPEnvelope se = builder.getSOAPEnvelope();
+        SoapMessageConverter portmaper1 = new SoapMessageConverter(new SOAP11Factory(),
+                wsdlHW,new QName(wsdlHW.getTargetNamespace(),"HelloService"),"HelloPort",false);
+        
+        Element msg = DOMUtils.stringToDOM("<message/>");
+        portmaper1.parseSoapRequest(msg, se, opHello);
+        System.out.println(DOMUtils.domToString(msg));
+    }
+
+}
+

Added: incubator/ode/trunk/axis2/src/test/resources/HelloWorld.wsdl
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/axis2/src/test/resources/HelloWorld.wsdl?view=auto&rev=505002
==============================================================================
--- incubator/ode/trunk/axis2/src/test/resources/HelloWorld.wsdl (added)
+++ incubator/ode/trunk/axis2/src/test/resources/HelloWorld.wsdl Thu Feb  8 10:50:21 2007
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="utf-8" ?>
+
+<wsdl:definitions 
+    targetNamespace="http://ode/bpel/unit-test.wsdl"
+    xmlns="http://schemas.xmlsoap.org/wsdl/"
+    xmlns:tns="http://ode/bpel/unit-test.wsdl"
+    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" 
+    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+    xmlns:bpws="http://schemas.xmlsoap.org/ws/2004/03/business-process/"
+    xmlns:plnk="http://schemas.xmlsoap.org/ws/2004/03/partner-link/">
+    
+    <wsdl:message name="HelloMessage">
+        <wsdl:part name="TestPart" type="xsd:string"/>
+    </wsdl:message>
+    
+    <wsdl:portType name="HelloPortType">
+        <wsdl:operation name="hello">
+            <wsdl:input message="tns:HelloMessage" name="TestIn"/>
+            <wsdl:output message="tns:HelloMessage" name="TestOut"/>
+        </wsdl:operation>    
+    </wsdl:portType>
+    
+     <wsdl:binding name="HelloSoapBinding" type="tns:HelloPortType">
+        <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
+        <wsdl:operation name="hello">
+            <soap:operation soapAction="" style="rpc"/>
+            <wsdl:input>
+                <soap:body
+                    namespace="http://ode/bpel/unit-test.wsdl"
+                    use="literal"/>
+            </wsdl:input>
+            <wsdl:output>
+                <soap:body
+                    namespace="http://ode/bpel/unit-test.wsdl" 
+                    use="literal"/>
+            </wsdl:output>
+        </wsdl:operation>
+    </wsdl:binding>
+    <wsdl:service name="HelloService">
+		<wsdl:port name="HelloPort" binding="tns:HelloSoapBinding">
+     		<soap:address location="http://localhost:8080/ode/processes/helloWorld"/>
+		</wsdl:port>
+    </wsdl:service>
+    
+   <plnk:partnerLinkType name="HelloPartnerLinkType">
+       <plnk:role name="me" portType="tns:HelloPortType"/>
+       <plnk:role name="you" portType="tns:HelloPortType"/>
+   </plnk:partnerLinkType>
+</wsdl:definitions>
+

Added: incubator/ode/trunk/axis2/src/test/resources/HelloWorldRequest.soap
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/axis2/src/test/resources/HelloWorldRequest.soap?view=auto&rev=505002
==============================================================================
--- incubator/ode/trunk/axis2/src/test/resources/HelloWorldRequest.soap (added)
+++ incubator/ode/trunk/axis2/src/test/resources/HelloWorldRequest.soap Thu Feb  8 10:50:21 2007
@@ -0,0 +1,8 @@
+<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
+  <!-- test soap message -->
+  <SOAP-ENV:Body>
+    <ns1:hello xmlns:ns1="http://ode/bpel/unit-test.wsdl">
+        <TestPart xmlns="" xmlns:foo="urn:/bar">ns1:Hello</TestPart>
+    </ns1:hello>
+  </SOAP-ENV:Body>
+</SOAP-ENV:Envelope>

Added: incubator/ode/trunk/axis2/src/test/resources/test1.wsdl
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/axis2/src/test/resources/test1.wsdl?view=auto&rev=505002
==============================================================================
--- incubator/ode/trunk/axis2/src/test/resources/test1.wsdl (added)
+++ incubator/ode/trunk/axis2/src/test/resources/test1.wsdl Thu Feb  8 10:50:21 2007
@@ -0,0 +1,629 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<wsdl:definitions targetNamespace="http://documentum.com/ws/2005/services" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://documentum.com/ws/2005/services" xmlns:intf="http://documentum.com/ws/2005/services" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+
+      <!--WSDL created by Apache Axis version: 1.2RC3 Built on Aug 24,2005 (03:08:13 PDT)-->
+
+            <wsdl:types>
+
+                  <schema elementFormDefault="qualified" targetNamespace="http://documentum.com/ws/2005/services" xmlns="http://www.w3.org/2001/XMLSchema">
+
+                        <element name="getObjectId">
+
+                              <complexType>
+
+                                    <sequence>
+
+                                          <element minOccurs="0" name="in0" nillable="true" type="xsd:string"/>
+
+                                          <element minOccurs="0" name="in1" nillable="true" type="xsd:string"/>
+
+                                    </sequence>
+
+                                    </complexType>
+
+               </element>
+
+               <element name="getObjectIdResponse">
+
+                    <complexType>
+
+                         <sequence>
+
+                              <element minOccurs="0" name="getObjectIdReturn" nillable="true" type="xsd:string"/>
+
+                         </sequence>
+
+                    </complexType>
+
+               </element>
+
+               <complexType name="WebServiceException">
+
+                    <sequence>
+
+                         <element minOccurs="0" name="message" nillable="true" type="xsd:string"/>
+
+                    </sequence>
+
+               </complexType>
+
+               <element name="fault" type="impl:WebServiceException"/>
+
+               <element name="getObjectName">
+
+                    <complexType>
+
+                         <sequence>
+
+                              <element minOccurs="0" name="in0" nillable="true" type="xsd:string"/>
+
+                              <element minOccurs="0" name="in1" nillable="true" type="xsd:string"/>
+
+                         </sequence>
+
+                    </complexType>
+
+               </element>
+
+               <element name="getObjectNameResponse">
+
+                    <complexType>
+
+                         <sequence>
+
+                              <element minOccurs="0" name="getObjectNameReturn" nillable="true" type="xsd:string"/>
+
+                         </sequence>
+
+                    </complexType>
+
+               </element>
+
+               <element name="exportObjectXferUcf">
+
+                    <complexType>
+
+                         <sequence>
+
+                              <element minOccurs="0" name="in0" nillable="true" type="xsd:string"/>
+
+                              <element minOccurs="0" name="in1" nillable="true" type="xsd:string"/>
+
+                         </sequence>
+
+                    </complexType>
+
+               </element>
+
+               <element name="exportObjectXferUcfResponse">
+
+                    <complexType>
+
+                         <sequence>
+
+                              <element minOccurs="0" name="exportObjectXferUcfReturn" nillable="true" type="xsd:string"/>
+
+                         </sequence>
+
+                    </complexType>
+
+               </element>
+
+               <element name="exportObjectXferBase64">
+
+                    <complexType>
+
+                         <sequence>
+
+                              <element minOccurs="0" name="in0" nillable="true" type="xsd:string"/>
+
+                              <element minOccurs="0" name="in1" nillable="true" type="xsd:string"/>
+
+                         </sequence>
+
+                    </complexType>
+
+               </element>
+
+               <element name="exportObjectXferBase64Response">
+
+                    <complexType>
+
+                         <sequence>
+
+                              <element minOccurs="0" name="exportObjectXferBase64Return" nillable="true" type="xsd:base64Binary"/>
+
+                         </sequence>
+
+                    </complexType>
+
+               </element>
+
+               <element name="importFileXferUcf">
+
+                    <complexType>
+
+                         <sequence>
+
+                              <element minOccurs="0" name="in0" nillable="true" type="xsd:string"/>
+
+                              <element minOccurs="0" name="in1" nillable="true" type="xsd:string"/>
+
+                              <element minOccurs="0" name="in2" nillable="true" type="xsd:string"/>
+
+                         </sequence>
+
+                    </complexType>
+
+               </element>
+
+               <element name="importFileXferUcfResponse">
+
+                    <complexType>
+
+                         <sequence>
+
+                              <element name="importFileXferUcfReturn" type="xsd:boolean"/>
+
+                         </sequence>
+
+                    </complexType>
+
+               </element>
+
+               <element name="importFileXferBase64">
+
+                    <complexType>
+
+                         <sequence>
+
+                              <element minOccurs="0" name="in0" nillable="true" type="xsd:base64Binary"/>
+
+                              <element minOccurs="0" name="in1" nillable="true" type="xsd:string"/>
+
+                              <element minOccurs="0" name="in2" nillable="true" type="xsd:string"/>
+
+                         </sequence>
+
+                    </complexType>
+
+               </element>
+
+               <element name="importFileXferBase64Response">
+
+                    <complexType>
+
+                         <sequence>
+
+                              <element name="importFileXferBase64Return" type="xsd:boolean"/>
+
+                         </sequence>
+
+                    </complexType>
+
+               </element>
+
+               <element name="initUCF">
+
+                    <complexType/>
+
+               </element>
+
+               <element name="initUCFResponse">
+
+                    <complexType>
+
+                        <sequence>
+
+                              <element minOccurs="0" name="initUCFReturn" nillable="true" type="xsd:string"/>
+
+                         </sequence>
+
+                    </complexType>
+
+               </element>
+
+               <element name="DocumentumSecurityToken">
+
+                    <complexType>
+
+                         <sequence>
+
+                              <element name="token" type="xsd:string"/>
+
+                         </sequence>
+
+                    </complexType>
+
+               </element>
+
+               <element name="UcfSession">
+
+                    <complexType>
+
+                         <sequence>
+
+                              <element name="uid" type="xsd:string"/>
+
+                         </sequence>
+
+                    </complexType>
+
+               </element>
+
+          </schema>
+
+     </wsdl:types>
+
+     <wsdl:message name="SecurityRequestHeader">
+
+          <wsdl:part element="impl:DocumentumSecurityToken" name="DocumentumRequestHeader"/>
+
+     </wsdl:message>
+
+     <wsdl:message name="UcfRequestHeader">
+
+          <wsdl:part element="impl:UcfSession" name="DocumentumUcfRequestHeader"/>
+
+     </wsdl:message>
+
+     <wsdl:message name="getObjectNameResponse">
+
+          <wsdl:part element="impl:getObjectNameResponse" name="parameters"/>
+
+     </wsdl:message>
+
+     <wsdl:message name="getObjectNameRequest">
+
+          <wsdl:part element="impl:getObjectName" name="parameters"/>
+
+     </wsdl:message>
+
+     <wsdl:message name="getObjectIdResponse">
+
+          <wsdl:part element="impl:getObjectIdResponse" name="parameters"/>
+
+     </wsdl:message>
+
+     <wsdl:message name="importFileXferUcfRequest">
+
+          <wsdl:part element="impl:importFileXferUcf" name="parameters"/>
+
+     </wsdl:message>
+
+     <wsdl:message name="importFileXferBase64Response">
+
+          <wsdl:part element="impl:importFileXferBase64Response" name="parameters"/>
+
+     </wsdl:message>
+
+     <wsdl:message name="exportObjectXferUcfRequest">
+
+          <wsdl:part element="impl:exportObjectXferUcf" name="parameters"/>
+
+     </wsdl:message>
+
+     <wsdl:message name="importFileXferUcfResponse">
+
+          <wsdl:part element="impl:importFileXferUcfResponse" name="parameters"/>
+
+     </wsdl:message>
+
+     <wsdl:message name="getObjectIdRequest">
+
+          <wsdl:part element="impl:getObjectId" name="parameters"/>
+
+     </wsdl:message>
+
+     <wsdl:message name="exportObjectXferUcfResponse">
+
+          <wsdl:part element="impl:exportObjectXferUcfResponse" name="parameters"/>
+
+     </wsdl:message>
+
+     <wsdl:message name="exportObjectXferBase64Response">
+
+          <wsdl:part element="impl:exportObjectXferBase64Response" name="parameters"/>
+
+     </wsdl:message>
+
+     <wsdl:message name="initUCFRequest">
+
+          <wsdl:part element="impl:initUCF" name="parameters"/>
+
+     </wsdl:message>
+
+     <wsdl:message name="WebServiceException">
+
+          <wsdl:part element="impl:fault" name="fault"/>
+
+     </wsdl:message>
+
+     <wsdl:message name="importFileXferBase64Request">
+
+          <wsdl:part element="impl:importFileXferBase64" name="parameters"/>
+
+     </wsdl:message>
+
+     <wsdl:message name="exportObjectXferBase64Request">
+
+         <wsdl:part element="impl:exportObjectXferBase64" name="parameters"/>
+
+     </wsdl:message>
+
+     <wsdl:message name="initUCFResponse">
+
+          <wsdl:part element="impl:initUCFResponse" name="parameters"/>
+
+     </wsdl:message>
+
+     <wsdl:portType name="RepoAccessor">
+
+          <wsdl:operation name="getObjectId">
+
+               <wsdl:input message="impl:getObjectIdRequest" name="getObjectIdRequest"/>
+
+               <wsdl:output message="impl:getObjectIdResponse" name="getObjectIdResponse"/>
+
+               <wsdl:fault message="impl:WebServiceException" name="WebServiceException"/>
+
+          </wsdl:operation>
+
+          <wsdl:operation name="getObjectName">
+
+               <wsdl:input message="impl:getObjectNameRequest" name="getObjectNameRequest"/>
+
+               <wsdl:output message="impl:getObjectNameResponse" name="getObjectNameResponse"/>
+
+               <wsdl:fault message="impl:WebServiceException" name="WebServiceException"/>
+
+          </wsdl:operation>
+
+          <wsdl:operation name="exportObjectXferUcf">
+
+               <wsdl:input message="impl:exportObjectXferUcfRequest" name="exportObjectXferUcfRequest"/>
+
+               <wsdl:output message="impl:exportObjectXferUcfResponse" name="exportObjectXferUcfResponse"/>
+
+               <wsdl:fault message="impl:WebServiceException" name="WebServiceException"/>
+
+          </wsdl:operation>
+
+          <wsdl:operation name="exportObjectXferBase64">
+
+               <wsdl:input message="impl:exportObjectXferBase64Request" name="exportObjectXferBase64Request"/>
+
+               <wsdl:output message="impl:exportObjectXferBase64Response" name="exportObjectXferBase64Response"/>
+
+               <wsdl:fault message="impl:WebServiceException" name="WebServiceException"/>
+
+          </wsdl:operation>
+
+          <wsdl:operation name="importFileXferUcf">
+
+               <wsdl:input message="impl:importFileXferUcfRequest" name="importFileXferUcfRequest"/>
+
+               <wsdl:output message="impl:importFileXferUcfResponse" name="importFileXferUcfResponse"/>
+
+               <wsdl:fault message="impl:WebServiceException" name="WebServiceException"/>
+
+          </wsdl:operation>
+
+          <wsdl:operation name="importFileXferBase64">
+
+               <wsdl:input message="impl:importFileXferBase64Request" name="importFileXferBase64Request"/>
+
+               <wsdl:output message="impl:importFileXferBase64Response" name="importFileXferBase64Response"/>
+
+               <wsdl:fault message="impl:WebServiceException" name="WebServiceException"/>
+
+          </wsdl:operation>
+
+          <wsdl:operation name="initUCF">
+
+               <wsdl:input message="impl:initUCFRequest" name="initUCFRequest"/>
+
+               <wsdl:output message="impl:initUCFResponse" name="initUCFResponse"/>
+
+          </wsdl:operation>
+
+     </wsdl:portType>
+
+     <wsdl:binding name="RepoAccessorSoapBinding" type="impl:RepoAccessor">
+
+          <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+
+          <wsdl:operation name="getObjectId">
+
+               <wsdlsoap:operation soapAction="getObjectIdAction"/>
+
+               <wsdl:input name="getObjectIdRequest">
+
+                    <wsdlsoap:body use="literal"/>
+
+                    <wsdlsoap:header message="impl:SecurityRequestHeader" namespace="http://documentum.com/ws/2005/services" part="DocumentumRequestHeader" use="literal"/>
+
+               </wsdl:input>
+
+               <wsdl:output name="getObjectIdResponse">
+
+                    <wsdlsoap:body use="literal"/>
+
+               </wsdl:output>
+
+               <wsdl:fault name="WebServiceException">
+
+                    <wsdlsoap:fault name="WebServiceException" use="literal"/>
+
+               </wsdl:fault>
+
+          </wsdl:operation>
+
+          <wsdl:operation name="getObjectName">
+
+               <wsdlsoap:operation soapAction=""/>
+
+               <wsdl:input name="getObjectNameRequest">
+
+                    <wsdlsoap:body use="literal"/>
+
+                    <wsdlsoap:header message="impl:SecurityRequestHeader" namespace="http://documentum.com/ws/2005/services" part="DocumentumRequestHeader" use="literal"/>
+
+               </wsdl:input>
+
+               <wsdl:output name="getObjectNameResponse">
+
+                    <wsdlsoap:body use="literal"/>
+
+               </wsdl:output>
+
+               <wsdl:fault name="WebServiceException">
+
+                    <wsdlsoap:fault name="WebServiceException" use="literal"/>
+
+               </wsdl:fault>
+
+          </wsdl:operation>
+
+          <wsdl:operation name="exportObjectXferUcf">
+
+               <wsdlsoap:operation soapAction=""/>
+
+               <wsdl:input name="exportObjectXferUcfRequest">
+
+                    <wsdlsoap:body use="literal"/>
+
+                    <wsdlsoap:header message="impl:SecurityRequestHeader" namespace="http://documentum.com/ws/2005/services" part="DocumentumRequestHeader" use="literal"/>
+
+                    <wsdlsoap:header message="impl:UcfRequestHeader" namespace="http://documentum.com/ws/2005/services" part="DocumentumUcfRequestHeader" se="literal"/>
+
+               </wsdl:input>
+
+               <wsdl:output name="exportObjectXferUcfResponse">
+
+                    <wsdlsoap:body use="literal"/>
+
+               </wsdl:output>
+
+              <wsdl:fault name="WebServiceException">
+
+                    <wsdlsoap:fault name="WebServiceException" use="literal"/>
+
+               </wsdl:fault>
+
+          </wsdl:operation>
+
+          <wsdl:operation name="exportObjectXferBase64">
+
+               <wsdlsoap:operation soapAction=""/>
+
+               <wsdl:input name="exportObjectXferBase64Request">
+
+                    <wsdlsoap:body use="literal"/>
+
+                    <wsdlsoap:header message="impl:SecurityRequestHeader" namespace="http://documentum.com/ws/2005/services" part="DocumentumRequestHeader" use="literal"/>
+
+               </wsdl:input>
+
+               <wsdl:output name="exportObjectXferBase64Response">
+
+                    <wsdlsoap:body use="literal"/>
+
+               </wsdl:output>
+
+               <wsdl:fault name="WebServiceException">
+
+                    <wsdlsoap:fault name="WebServiceException" use="literal"/>
+
+               </wsdl:fault>
+
+          </wsdl:operation>
+
+          <wsdl:operation name="importFileXferUcf">
+
+               <wsdlsoap:operation soapAction=""/>
+
+               <wsdl:input name="importFileXferUcfRequest">
+
+                    <wsdlsoap:body use="literal"/>
+
+                    <wsdlsoap:header message="impl:SecurityRequestHeader" namespace="http://documentum.com/ws/2005/services" part="DocumentumRequestHeader" use="literal"/>
+
+                    <wsdlsoap:header message="impl:UcfRequestHeader" namespace="http://documentum.com/ws/2005/services" part="DocumentumUcfRequestHeader" se="literal"/>
+
+               </wsdl:input>
+
+               <wsdl:output name="importFileXferUcfResponse">
+
+                    <wsdlsoap:body use="literal"/>
+
+               </wsdl:output>
+
+               <wsdl:fault name="WebServiceException">
+
+                    <wsdlsoap:fault name="WebServiceException" use="literal"/>
+
+               </wsdl:fault>
+
+          </wsdl:operation>
+
+          <wsdl:operation name="importFileXferBase64">
+
+               <wsdlsoap:operation soapAction=""/>
+
+               <wsdl:input name="importFileXferBase64Request">
+
+                    <wsdlsoap:body use="literal"/>
+
+                    <wsdlsoap:header message="impl:SecurityRequestHeader" namespace="http://documentum.com/ws/2005/services" part="DocumentumRequestHeader" use="literal"/>
+
+               </wsdl:input>
+
+               <wsdl:output name="importFileXferBase64Response">
+
+                    <wsdlsoap:body use="literal"/>
+
+               </wsdl:output>
+
+               <wsdl:fault name="WebServiceException">
+
+                    <wsdlsoap:fault name="WebServiceException" use="literal"/>
+
+               </wsdl:fault>
+
+          </wsdl:operation>
+
+          <wsdl:operation name="initUCF">
+
+               <wsdlsoap:operation soapAction=""/>
+
+               <wsdl:input name="initUCFRequest">
+
+                    <wsdlsoap:body use="literal"/>
+
+                    <wsdlsoap:header message="impl:SecurityRequestHeader" namespace="http://documentum.com/ws/2005/services" part="DocumentumRequestHeader" use="literal"/>
+
+               </wsdl:input>
+
+               <wsdl:output name="initUCFResponse">
+
+                    <wsdlsoap:body use="literal"/>
+
+               </wsdl:output>
+
+          </wsdl:operation>
+
+     </wsdl:binding>
+
+     <wsdl:service name="RepoAccessorService">
+
+          <wsdl:port binding="impl:RepoAccessorSoapBinding" name="RepoAccessor">
+
+               <wsdlsoap:address location="http://bp1cstap306-v:8080/ws/services/RepoAccessor"/>
+
+          </wsdl:port>
+
+     </wsdl:service>
+
+            </wsdl:definitions>
\ No newline at end of file

Added: incubator/ode/trunk/axis2/src/test/resources/testRequest1.xml
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/axis2/src/test/resources/testRequest1.xml?view=auto&rev=505002
==============================================================================
--- incubator/ode/trunk/axis2/src/test/resources/testRequest1.xml (added)
+++ incubator/ode/trunk/axis2/src/test/resources/testRequest1.xml Thu Feb  8 10:50:21 2007
@@ -0,0 +1,13 @@
+<message>
+   <parameters>
+      <getObjectId foo="bar" xmlns="http://documentum.com/ws/2005/services">
+      	  <someFooBar/>
+      	  <barbaz xmlns="" />
+      </getObjectId>
+   </parameters>
+   
+   <DocumentumRequestHeader xmlns="urn:ode.apache.org/axis2-il/header">
+   		<DocumentumSecurityToken xmlns="http://documentum.com/ws/2005/services"/>
+   </DocumentumRequestHeader>
+   
+</message>
\ No newline at end of file

Added: incubator/ode/trunk/axis2/src/test/resources/testRequest1Bad.xml
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/axis2/src/test/resources/testRequest1Bad.xml?view=auto&rev=505002
==============================================================================
--- incubator/ode/trunk/axis2/src/test/resources/testRequest1Bad.xml (added)
+++ incubator/ode/trunk/axis2/src/test/resources/testRequest1Bad.xml Thu Feb  8 10:50:21 2007
@@ -0,0 +1,7 @@
+<message>
+   <wrongname>
+      <getObjectId xmlns="http://documentum.com/ws/2005/services">
+      	  <someFooBar/>
+      </getObjectId>
+   </wrongname>
+</message>
\ No newline at end of file

Modified: incubator/ode/trunk/bpel-api/src/main/java/org/apache/ode/bpel/iapi/ProcessStoreEvent.java
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-api/src/main/java/org/apache/ode/bpel/iapi/ProcessStoreEvent.java?view=diff&rev=505002&r1=505001&r2=505002
==============================================================================
--- incubator/ode/trunk/bpel-api/src/main/java/org/apache/ode/bpel/iapi/ProcessStoreEvent.java (original)
+++ incubator/ode/trunk/bpel-api/src/main/java/org/apache/ode/bpel/iapi/ProcessStoreEvent.java Thu Feb  8 10:50:21 2007
@@ -18,13 +18,17 @@
  */
 package org.apache.ode.bpel.iapi;
 
+import java.io.Serializable;
+
 import javax.xml.namespace.QName;
 
 /**
  * Event generated by the process store.
  * @author mszefler
  */
-public class ProcessStoreEvent {
+public class ProcessStoreEvent implements Serializable {
+    private static final long serialVersionUID = 1L;
+
     public enum Type {
         /** A process was deployed to the store. */
         DEPLOYED,
@@ -59,9 +63,12 @@
      */
     public final QName pid; 
     
-    public ProcessStoreEvent(Type type, QName pid) {
+    public final String deploymentUnit;
+    
+    public ProcessStoreEvent(Type type, QName pid, String deploymentUnit) {
         this.type = type;
         this.pid = pid;
+        this.deploymentUnit = deploymentUnit;
     }
     
     @Override