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();
}