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";