Author: midon
Date: Thu May 21 22:34:22 2009
New Revision: 777297
URL: http://svn.apache.org/viewvc?rev=777297&view=rev
Log:
ODE-607 / ODE-609 apply ws-addressing.headers
Modified:
ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/ODEService.java
ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/hooks/ODEMessageReceiver.java
ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/hooks/SessionOutHandler.java
ode/branches/APACHE_ODE_1.X/utils/src/main/java/org/apache/ode/utils/Properties.java
Modified:
ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/ODEService.java
URL:
http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/ODEService.java?rev=777297&r1=777296&r2=777297&view=diff
==============================================================================
---
ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/ODEService.java
(original)
+++
ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/ODEService.java
Thu May 21 22:34:22 2009
@@ -21,6 +21,7 @@
import java.util.concurrent.Future;
import java.util.concurrent.TimeUnit;
+import java.util.Map;
import javax.transaction.TransactionManager;
import javax.wsdl.Definition;
@@ -36,6 +37,7 @@
import org.apache.axiom.soap.SOAPFault;
import org.apache.axiom.om.OMElement;
import org.apache.axis2.AxisFault;
+import org.apache.axis2.client.Options;
import org.apache.axis2.context.MessageContext;
import org.apache.axis2.description.AxisService;
import org.apache.axis2.description.TwoChannelAxisOperation;
@@ -243,6 +245,15 @@
return Properties.DEFAULT_MEX_TIMEOUT;
}
+ /**
+ *
+ * @return an Option instance containing the properties for this endpoint
+ * @see
org.apache.ode.bpel.iapi.ProcessConf#getEndpointProperties(org.apache.ode.bpel.iapi.EndpointReference)
+ */
+ public Options getOptions(){
+ return
Properties.Axis2.translate(_pconf.getEndpointProperties(_serviceRef));
+ }
+
private void onResponse(MyRoleMessageExchange mex, MessageContext
msgContext) throws AxisFault {
switch (mex.getStatus()) {
case FAULT:
Modified:
ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/hooks/ODEMessageReceiver.java
URL:
http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/hooks/ODEMessageReceiver.java?rev=777297&r1=777296&r2=777297&view=diff
==============================================================================
---
ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/hooks/ODEMessageReceiver.java
(original)
+++
ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/hooks/ODEMessageReceiver.java
Thu May 21 22:34:22 2009
@@ -24,7 +24,7 @@
import org.apache.axis2.description.AxisOperation;
import org.apache.axis2.engine.AxisEngine;
import org.apache.axis2.receivers.AbstractMessageReceiver;
-import org.apache.axis2.util.Utils;
+import org.apache.axis2.util.MessageContextBuilder;
import org.apache.axis2.wsdl.WSDLConstants;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -45,7 +45,9 @@
__log.debug("Received request message for " +
msgContext.getAxisService().getName() + "."
+ msgContext.getAxisOperation().getName());
// Client is expecting a response, running in the same thread
- MessageContext outMsgContext =
Utils.createOutMessageContext(msgContext);
+ MessageContext outMsgContext =
MessageContextBuilder.createOutMessageContext(msgContext);
+ // pass on the endpoint properties for output context
+ outMsgContext.getOptions().setParent(_service.getOptions());
outMsgContext.getOperationContext().addMessageContext(outMsgContext);
invokeBusinessLogic(msgContext, outMsgContext);
if (__log.isDebugEnabled()) {
Modified:
ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/hooks/SessionOutHandler.java
URL:
http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/hooks/SessionOutHandler.java?rev=777297&r1=777296&r2=777297&view=diff
==============================================================================
---
ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/hooks/SessionOutHandler.java
(original)
+++
ode/branches/APACHE_ODE_1.X/axis2/src/main/java/org/apache/ode/axis2/hooks/SessionOutHandler.java
Thu May 21 22:34:22 2009
@@ -24,6 +24,7 @@
import org.apache.axiom.soap.SOAPFactory;
import org.apache.axiom.soap.SOAPHeader;
import org.apache.axis2.AxisFault;
+import org.apache.axis2.addressing.AddressingConstants;
import org.apache.axis2.context.MessageContext;
import org.apache.axis2.handlers.AbstractHandler;
import org.apache.commons.logging.Log;
@@ -47,9 +48,8 @@
public InvocationResponse invoke(MessageContext messageContext) throws
AxisFault {
// Skip this handler if ask to do so
- Boolean shouldSendWSAddrHeaders =
((Boolean)messageContext.getProperty(Properties.PROP_SEND_WS_ADDRESSING_HEADERS));
- if(shouldSendWSAddrHeaders!=null &&
!shouldSendWSAddrHeaders.booleanValue()){
- if(__log.isDebugEnabled()) __log.debug("WS-Adressing Headers
skipped");
+
if(messageContext.isPropertyTrue(AddressingConstants.DISABLE_ADDRESSING_FOR_OUT_MESSAGES)){
+ if(__log.isDebugEnabled()) __log.debug("Skipped WS-Adressing
Headers for sessions");
return InvocationResponse.CONTINUE;
}
Modified:
ode/branches/APACHE_ODE_1.X/utils/src/main/java/org/apache/ode/utils/Properties.java
URL:
http://svn.apache.org/viewvc/ode/branches/APACHE_ODE_1.X/utils/src/main/java/org/apache/ode/utils/Properties.java?rev=777297&r1=777296&r2=777297&view=diff
==============================================================================
---
ode/branches/APACHE_ODE_1.X/utils/src/main/java/org/apache/ode/utils/Properties.java
(original)
+++
ode/branches/APACHE_ODE_1.X/utils/src/main/java/org/apache/ode/utils/Properties.java
Thu May 21 22:34:22 2009
@@ -20,6 +20,7 @@
package org.apache.ode.utils;
import org.apache.axis2.Constants;
+import org.apache.axis2.addressing.AddressingConstants;
import org.apache.axis2.util.JavaUtils;
import org.apache.axis2.client.Options;
import org.apache.axis2.transport.http.HTTPConstants;
@@ -85,7 +86,7 @@
public static final String PROP_SECURITY_POLICY = "security.policy.file";
public static final String PROP_JMS_REPLY_DESTINATION =
"jms.reply.destination";
public static final String PROP_JMS_REPLY_TIMEOUT = "jms.reply.timeout";
- public static final String PROP_SEND_WS_ADDRESSING_HEADERS =
"ws-adddressing.headers";
+ public static final String PROP_SEND_WS_ADDRESSING_HEADERS =
"ws-addressing.headers";
protected static final Log log = LogFactory.getLog(Properties.class);
@@ -198,7 +199,12 @@
}
if(properties.containsKey(PROP_SEND_WS_ADDRESSING_HEADERS)){
String value = properties.get(PROP_SEND_WS_ADDRESSING_HEADERS);
- options.setProperty(PROP_SEND_WS_ADDRESSING_HEADERS,
Boolean.parseBoolean(value));
+
options.setProperty(AddressingConstants.DISABLE_ADDRESSING_FOR_OUT_MESSAGES,
!Boolean.parseBoolean(value));
+ }
+ if (properties.containsKey("ws-adddressing.headers")) {
+ if(log.isWarnEnabled())log.warn("Deprecated property:
ws-adddressing.headers (Mind the 3 d's). Use ws-addressing.headers");
+ String value = properties.get("ws-adddressing.headers");
+
options.setProperty(AddressingConstants.DISABLE_ADDRESSING_FOR_OUT_MESSAGES,
!Boolean.parseBoolean(value));
}
// iterate through the properties to get Headers & Proxy
information