Author: midon
Date: Fri Apr 24 00:09:19 2009
New Revision: 768103

URL: http://svn.apache.org/viewvc?rev=768103&view=rev
Log:
ODE-591: fix namespaces used by tests and fix DeploymentWebService

Modified:
    
ode/trunk/axis2-war/src/test/java/org/apache/ode/axis2/management/DeploymentTest.java
    
ode/trunk/axis2-war/src/test/java/org/apache/ode/axis2/management/InstanceManagementTest.java
    
ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java
    
ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/ManagementService.java
    
ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/ServiceClientUtil.java
    
ode/trunk/axis2/src/test/java/org/apache/ode/axis2/management/ExecutionPathTest.java
    
ode/trunk/axis2/src/test/java/org/apache/ode/axis2/management/ProcessManagementTest.java
    ode/trunk/il-common/src/main/java/org/apache/ode/il/OMUtils.java
    ode/trunk/utils/src/main/java/org/apache/ode/utils/Namespaces.java

Modified: 
ode/trunk/axis2-war/src/test/java/org/apache/ode/axis2/management/DeploymentTest.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/axis2-war/src/test/java/org/apache/ode/axis2/management/DeploymentTest.java?rev=768103&r1=768102&r2=768103&view=diff
==============================================================================
--- 
ode/trunk/axis2-war/src/test/java/org/apache/ode/axis2/management/DeploymentTest.java
 (original)
+++ 
ode/trunk/axis2-war/src/test/java/org/apache/ode/axis2/management/DeploymentTest.java
 Fri Apr 24 00:09:19 2009
@@ -165,11 +165,11 @@
 
     private String deploy(String packageName) throws Exception {
         // Use the factory to create three elements
-        OMNamespace depns = _factory.createOMNamespace(Namespaces.ODE_PMAPI, 
"deployapi");
-        OMElement root = _factory.createOMElement("deploy", null);
-        OMElement namePart = _factory.createOMElement("name", depns);
+        OMNamespace depns = 
_factory.createOMNamespace(Namespaces.ODE_DEPLOYAPI_NS, "deployapi");
+        OMElement root = _factory.createOMElement("deploy", depns);
+        OMElement namePart = _factory.createOMElement("name", null);
         namePart.setText(packageName);
-        OMElement zipPart = _factory.createOMElement("package", depns);
+        OMElement zipPart = _factory.createOMElement("package", null);
         OMElement zipElmt = _factory.createOMElement("zip", depns);
 
         // Add the zip to deploy
@@ -211,7 +211,7 @@
 
     private void undeploy(String pakage) throws Exception {
         // Prepare undeploy message
-        OMNamespace depns = _factory.createOMNamespace(Namespaces.ODE_PMAPI, 
"deployapi");
+        OMNamespace depns = 
_factory.createOMNamespace(Namespaces.ODE_DEPLOYAPI_NS, "deployapi");
         OMElement root = _factory.createOMElement("undeploy", depns);
         OMElement part = _factory.createOMElement("packageName", null);
         part.setText(pakage);

Modified: 
ode/trunk/axis2-war/src/test/java/org/apache/ode/axis2/management/InstanceManagementTest.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/axis2-war/src/test/java/org/apache/ode/axis2/management/InstanceManagementTest.java?rev=768103&r1=768102&r2=768103&view=diff
==============================================================================
--- 
ode/trunk/axis2-war/src/test/java/org/apache/ode/axis2/management/InstanceManagementTest.java
 (original)
+++ 
ode/trunk/axis2-war/src/test/java/org/apache/ode/axis2/management/InstanceManagementTest.java
 Fri Apr 24 00:09:19 2009
@@ -101,8 +101,8 @@
     public void testGetInstanceInfo() throws Exception {
         OMElement root = _client.buildMessage("listAllInstances", new String[] 
{}, new String[] {});
         OMElement result = sendToIM(root);
-        String iid = result.getFirstElement().getFirstChildWithName(new 
QName(Namespaces.ODE_PMAPI, "instance-info"))
-                .getFirstChildWithName(new QName(Namespaces.ODE_PMAPI, 
"iid")).getText();
+        String iid = result.getFirstElement().getFirstChildWithName(new 
QName(Namespaces.ODE_PMAPI_TYPES_NS, "instance-info"))
+                .getFirstChildWithName(new 
QName(Namespaces.ODE_PMAPI_TYPES_NS, "iid")).getText();
         root = _client.buildMessage("getInstanceInfo", new String[] {"iid"}, 
new String[] {iid});
         result = sendToIM(root);
         assert(result.toString().split("instance-info").length == 3);
@@ -125,8 +125,8 @@
       OMElement root = _client.buildMessage("listInstances", new String[] 
{"filter", "order", "limit"},
               new String[] {"name=DynPartnerMain", "", "10"});
         OMElement result = sendToIM(root);
-        String siid = result.getFirstElement().getFirstChildWithName(new 
QName(Namespaces.ODE_PMAPI, "instance-info"))
-                .getFirstChildWithName(new QName(Namespaces.ODE_PMAPI, 
"root-scope"))
+        String siid = result.getFirstElement().getFirstChildWithName(new 
QName(Namespaces.ODE_PMAPI_TYPES_NS, "instance-info"))
+                .getFirstChildWithName(new 
QName(Namespaces.ODE_PMAPI_TYPES_NS, "root-scope"))
                 .getAttributeValue(new QName(null, "siid"));
         root = _client.buildMessage("getScopeInfoWithActivity", new String[] 
{"siid", "activityInfo"},
                 new String[] {siid, "true"});
@@ -140,8 +140,8 @@
         OMElement root = _client.buildMessage("listInstances", new String[] 
{"filter", "order", "limit"},
                 new String[] {"name=DynPartnerMain", "", "10"});
         OMElement result = sendToIM(root);
-        String siid = result.getFirstElement().getFirstChildWithName(new 
QName(Namespaces.ODE_PMAPI, "instance-info"))
-                .getFirstChildWithName(new QName(Namespaces.ODE_PMAPI, 
"root-scope"))
+        String siid = result.getFirstElement().getFirstChildWithName(new 
QName(Namespaces.ODE_PMAPI_TYPES_NS, "instance-info"))
+                .getFirstChildWithName(new 
QName(Namespaces.ODE_PMAPI_TYPES_NS, "root-scope"))
                 .getAttributeValue(new QName(null, "siid"));
         root = _client.buildMessage("getVariableInfo", new String[] {"sid", 
"varName"}, new String[] {siid, "dummy"});
         result = sendToIM(root);
@@ -183,11 +183,11 @@
         _client = new ServiceClientUtil();
 
         // Use the factory to create three elements
-        OMNamespace depns = _factory.createOMNamespace(Namespaces.ODE_PMAPI, 
"deployapi");
-        OMElement root = _factory.createOMElement("deploy", null);
-        OMElement namePart = _factory.createOMElement("name", depns);
+        OMNamespace depns = 
_factory.createOMNamespace(Namespaces.ODE_DEPLOYAPI_NS, "deployapi");
+        OMElement root = _factory.createOMElement("deploy", depns);
+        OMElement namePart = _factory.createOMElement("name", null);
         namePart.setText("DynPartner");
-        OMElement zipPart = _factory.createOMElement("package", depns);
+        OMElement zipPart = _factory.createOMElement("package", null);
         OMElement zipElmt = _factory.createOMElement("zip", depns);
 
         // Add the zip to deploy
@@ -218,7 +218,7 @@
   @AfterMethod
     protected void tearDown() throws Exception {
         // Prepare undeploy message
-        OMNamespace depns = _factory.createOMNamespace(Namespaces.ODE_PMAPI, 
"deployapi");
+        OMNamespace depns = 
_factory.createOMNamespace(Namespaces.ODE_DEPLOYAPI_NS, "deployapi");
         OMElement root = _factory.createOMElement("undeploy", depns);
         OMElement part = _factory.createOMElement("package", null);
         part.setText(_deployedName);

Modified: 
ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java?rev=768103&r1=768102&r2=768103&view=diff
==============================================================================
--- 
ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java
 (original)
+++ 
ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java
 Fri Apr 24 00:09:19 2009
@@ -47,6 +47,7 @@
 import org.apache.axis2.AxisFault;
 import org.apache.axis2.context.MessageContext;
 import org.apache.axis2.description.AxisService;
+import org.apache.axis2.description.AxisOperation;
 import org.apache.axis2.engine.AxisConfiguration;
 import org.apache.axis2.engine.AxisEngine;
 import org.apache.axis2.receivers.AbstractMessageReceiver;
@@ -61,6 +62,7 @@
 import org.apache.ode.bpel.iapi.ProcessStore;
 import org.apache.ode.il.OMUtils;
 import org.apache.ode.utils.fs.FileUtils;
+import org.apache.ode.utils.Namespaces;
 
 /**
  * Axis wrapper for process deployment.
@@ -110,9 +112,30 @@
             try {
                 if (operation.equals("deploy")) {
                     OMElement deployElement = 
messageContext.getEnvelope().getBody().getFirstElement();
-                    OMElement namePart = deployElement.getFirstElement();
-                    OMElement packagePart = 
deployElement.getFirstChildWithName(new 
QName("http://www.apache.org/ode/pmapi/types/2006/08/02/";, "package"));
-                    OMElement zip = (packagePart == null) ? null : 
packagePart.getFirstChildWithName(new 
QName("http://www.apache.org/ode/pmapi/types/2006/08/02/";, "zip"));
+                    OMElement namePart = 
deployElement.getFirstChildWithName(new QName(null, "name"));
+                    OMElement packagePart = 
deployElement.getFirstChildWithName(new QName(null, "package"));
+
+                    // "be liberal in what you accept from others"
+                    if (packagePart == null) {
+                        packagePart = 
OMUtils.getFirstChildWithName(deployElement, "package");
+                        if (packagePart != null && __log.isWarnEnabled()) {
+                            __log.warn("Invalid incoming request detected for 
operation " + messageContext.getAxisOperation().getName() + ". Package part 
should have no namespace but has " + packagePart.getQName().getNamespaceURI());
+                        }
+                    }
+
+                    OMElement zip = null;
+                    if (packagePart != null) {
+                        zip = packagePart.getFirstChildWithName(new 
QName(Namespaces.ODE_DEPLOYAPI_NS, "zip"));
+                        // "be liberal in what you accept from others"
+                        if (zip == null) {
+                            zip = OMUtils.getFirstChildWithName(packagePart, 
"zip");
+                            if (zip != null && __log.isWarnEnabled()) {
+                                String ns = zip.getQName().getNamespaceURI() 
== null || zip.getQName().getNamespaceURI().length() == 0 ? "empty" : 
zip.getQName().getNamespaceURI();
+                                __log.warn("Invalid incoming request detected 
for operation " + messageContext.getAxisOperation().getName() + ". <zip/> 
element namespace should be " + Namespaces.ODE_DEPLOYAPI_NS + " but was " + ns);
+                            }
+                        }
+                    }
+
                     if (zip == null || packagePart == null)
                         throw new OdeFault("Your message should contain an 
element named 'package' with a 'zip' element"); 
 

Modified: 
ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/ManagementService.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/ManagementService.java?rev=768103&r1=768102&r2=768103&view=diff
==============================================================================
--- 
ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/ManagementService.java
 (original)
+++ 
ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/ManagementService.java
 Fri Apr 24 00:09:19 2009
@@ -143,7 +143,7 @@
             reason.setText(e.toString());
     
                 OMElement detail = soapFactory
-                        .createOMElement(new QName(Namespaces.ODE_PMAPI, 
e.getClass().getSimpleName()));
+                        .createOMElement(new QName(Namespaces.ODE_PMAPI_NS, 
e.getClass().getSimpleName()));
             StringWriter stack = new StringWriter();
             e.printStackTrace(new PrintWriter(stack));
             detail.setText(stack.toString());

Modified: 
ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/ServiceClientUtil.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/ServiceClientUtil.java?rev=768103&r1=768102&r2=768103&view=diff
==============================================================================
--- 
ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/ServiceClientUtil.java
 (original)
+++ 
ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/ServiceClientUtil.java
 Fri Apr 24 00:09:19 2009
@@ -84,7 +84,7 @@
      */
     public OMElement buildMessage(String operation, String[] params, Object[] 
values) {
         OMFactory _factory = OMAbstractFactory.getOMFactory();
-        OMNamespace pmns = _factory.createOMNamespace(Namespaces.ODE_PMAPI, 
"pmapi");
+        OMNamespace pmns = _factory.createOMNamespace(Namespaces.ODE_PMAPI_NS, 
"pmapi");
         OMElement root = _factory.createOMElement(operation, pmns);
         for (int m = 0; m < params.length; m++) {
             OMElement omelmt = _factory.createOMElement(params[m], null);

Modified: 
ode/trunk/axis2/src/test/java/org/apache/ode/axis2/management/ExecutionPathTest.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/axis2/src/test/java/org/apache/ode/axis2/management/ExecutionPathTest.java?rev=768103&r1=768102&r2=768103&view=diff
==============================================================================
--- 
ode/trunk/axis2/src/test/java/org/apache/ode/axis2/management/ExecutionPathTest.java
 (original)
+++ 
ode/trunk/axis2/src/test/java/org/apache/ode/axis2/management/ExecutionPathTest.java
 Fri Apr 24 00:09:19 2009
@@ -89,11 +89,11 @@
         _client = new ServiceClientUtil();
 
         // Use the factory to create three elements
-        OMNamespace depns = _factory.createOMNamespace(Namespaces.ODE_PMAPI, 
"deployapi");
-        OMElement root = _factory.createOMElement("deploy", null);
-        OMElement namePart = _factory.createOMElement("name", depns);
+        OMNamespace depns = 
_factory.createOMNamespace(Namespaces.ODE_DEPLOYAPI_NS, "deployapi");
+        OMElement root = _factory.createOMElement("deploy", depns);
+        OMElement namePart = _factory.createOMElement("name", null);
         namePart.setText("DynPartner");
-        OMElement zipPart = _factory.createOMElement("package", depns);
+        OMElement zipPart = _factory.createOMElement("package", null);
         OMElement zipElmt = _factory.createOMElement("zip", depns);
 
         // Add the zip to deploy
@@ -122,9 +122,9 @@
 
     protected void tearDown() throws Exception {
         // Prepare undeploy message
-        OMNamespace depns = _factory.createOMNamespace(Namespaces.ODE_PMAPI, 
"deployapi");
+        OMNamespace depns = 
_factory.createOMNamespace(Namespaces.ODE_DEPLOYAPI_NS, "deployapi");
         OMElement root = _factory.createOMElement("undeploy", depns);
-        OMElement part = _factory.createOMElement("processName", null);
+        OMElement part = _factory.createOMElement("packageName", null);
         part.setText("DynPartner");
         root.addChild(part);
 

Modified: 
ode/trunk/axis2/src/test/java/org/apache/ode/axis2/management/ProcessManagementTest.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/axis2/src/test/java/org/apache/ode/axis2/management/ProcessManagementTest.java?rev=768103&r1=768102&r2=768103&view=diff
==============================================================================
--- 
ode/trunk/axis2/src/test/java/org/apache/ode/axis2/management/ProcessManagementTest.java
 (original)
+++ 
ode/trunk/axis2/src/test/java/org/apache/ode/axis2/management/ProcessManagementTest.java
 Fri Apr 24 00:09:19 2009
@@ -71,10 +71,10 @@
                 new String[] {"name=DynPartnerMain", ""});
         OMElement result = sendToPM(listRoot);
         ArrayList<String> filenames = new ArrayList<String>();
-        Iterator docs = result.getFirstElement().getFirstChildWithName(new 
QName(Namespaces.ODE_PMAPI, "documents")).getChildElements();
+        Iterator docs = result.getFirstElement().getFirstChildWithName(new 
QName(Namespaces.ODE_PMAPI_TYPES_NS, "documents")).getChildElements();
         while (docs.hasNext()) {
             OMElement docElmt = (OMElement) docs.next();
-            filenames.add(docElmt.getFirstChildWithName(new 
QName(Namespaces.ODE_PMAPI, "name")).getText());
+            filenames.add(docElmt.getFirstChildWithName(new 
QName(Namespaces.ODE_PMAPI_TYPES_NS, "name")).getText());
         }
         // Checking that all necessary files are really there
         assertTrue(filenames.contains("DynPartnerMain.bpel"));

Modified: ode/trunk/il-common/src/main/java/org/apache/ode/il/OMUtils.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/il-common/src/main/java/org/apache/ode/il/OMUtils.java?rev=768103&r1=768102&r2=768103&view=diff
==============================================================================
--- ode/trunk/il-common/src/main/java/org/apache/ode/il/OMUtils.java (original)
+++ ode/trunk/il-common/src/main/java/org/apache/ode/il/OMUtils.java Fri Apr 24 
00:09:19 2009
@@ -52,6 +52,18 @@
  */
 public class OMUtils {
 
+    public static OMElement getFirstChildWithName(OMElement parent, String 
name) {
+        if (parent == null)
+            throw new IllegalArgumentException("null parent");
+        if (name == null)
+            throw new IllegalArgumentException("null name");
+        for (Iterator it = parent.getChildElements(); it.hasNext();) {
+            OMElement e = (OMElement) it.next();
+            if (name.equals(e.getQName().getLocalPart())) return e;
+        }
+        return null;
+    }
+
     public static Element toDOM(OMElement element) {
         return toDOM(element, DOMUtils.newDocument());
     }

Modified: ode/trunk/utils/src/main/java/org/apache/ode/utils/Namespaces.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/utils/src/main/java/org/apache/ode/utils/Namespaces.java?rev=768103&r1=768102&r2=768103&view=diff
==============================================================================
--- ode/trunk/utils/src/main/java/org/apache/ode/utils/Namespaces.java 
(original)
+++ ode/trunk/utils/src/main/java/org/apache/ode/utils/Namespaces.java Fri Apr 
24 00:09:19 2009
@@ -55,8 +55,14 @@
     public static final QName WS_ADDRESSING_ENDPOINT = new 
QName(WS_ADDRESSING_NS, "EndpointReference");
     public static final QName WS_ADDRESSING_USINGADDRESSING = new 
QName(WS_ADDRESSING_WSDL_NS, "UsingAddressing");
 
-    /** ODE stuff */
-    public static final String ODE_PMAPI = 
"http://www.apache.org/ode/pmapi/types/2006/08/02/";;
+    /* ODE stuff */
+    /**
+     * @deprecated use #ODE_PMAPI_TYPES_NS
+     */
+    public static final String ODE_PMAPI = 
"http://www.apache.org/ode/pmapi/types/2006/08/02/".intern();
+    public static final String ODE_PMAPI_TYPES_NS = 
"http://www.apache.org/ode/pmapi/types/2006/08/02/".intern();
+    public static final String ODE_PMAPI_NS = 
"http://www.apache.org/ode/pmapi".intern();
+    public static final String ODE_DEPLOYAPI_NS = 
"http://www.apache.org/ode/deployapi".intern();
     public static final String ODE_EXTENSION_NS = 
"http://www.apache.org/ode/type/extension";;
     public static final String ODE_HTTP_EXTENSION_NS = 
"http://www.apache.org/ode/type/extension/http";;
     public static final String ODE_SESSION_NS = 
"http://www.intalio.com/type/session";;


Reply via email to