You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by mi...@apache.org on 2008/10/18 02:20:01 UTC

svn commit: r705823 - /ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/SoapExternalService.java

Author: midon
Date: Fri Oct 17 17:20:01 2008
New Revision: 705823

URL: http://svn.apache.org/viewvc?rev=705823&view=rev
Log:
ODE-388: test if the policy filepath is relative or not. If relative, resolve against the process conf directory

Modified:
    ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/SoapExternalService.java

Modified: ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/SoapExternalService.java
URL: http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/SoapExternalService.java?rev=705823&r1=705822&r2=705823&view=diff
==============================================================================
--- ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/SoapExternalService.java (original)
+++ ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/SoapExternalService.java Fri Oct 17 17:20:01 2008
@@ -53,6 +53,7 @@
 import org.apache.ode.utils.DOMUtils;
 import org.apache.ode.utils.Namespaces;
 import org.apache.ode.utils.WatchDog;
+import org.apache.ode.utils.fs.FileUtils;
 import org.apache.ode.utils.uuid.UUID;
 import org.apache.ode.utils.wsdl.Messages;
 import org.apache.rampart.RampartMessageData;
@@ -242,7 +243,13 @@
     private void applySecuritySettings(Options options, ServiceClient serviceClient) throws AxisFault {
         if (options.getProperty(Properties.PROP_SECURITY_POLICY) != null) {
             String policy = (String) options.getProperty(Properties.PROP_SECURITY_POLICY);
-            URI policyUri = _pconf.getBaseURI().resolve(policy);
+            // if the policy path is relative, the full uri is resolved against the process conf directory
+            URI policyUri;
+            if (FileUtils.isRelative(policy)) {
+                policyUri = _pconf.getBaseURI().resolve(policy);
+            } else {
+                policyUri = new File(policy).toURI();
+            }
             try {
                 InputStream policyStream = policyUri.toURL().openStream();
                 try {
@@ -250,8 +257,9 @@
                     options.setProperty(RampartMessageData.KEY_RAMPART_POLICY, policyDoc);
 
                     // make sure the proper modules are engaged
-                    if (!serviceClient.getAxisConfiguration().isEngaged("rampart"))
+                    if (!serviceClient.getAxisService().getAxisConfiguration().isEngaged("rampart")){
                         serviceClient.engageModule("rampart");
+                    }
                 } finally {
                     policyStream.close();
                 }