svn commit: r692005 - /webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/workers/SenderWorker.java
| Newsgroups | gmane.comp.apache.webservices.fx.devel |
|---|---|
| Message-ID | <[email protected]> |
Author: mckierna
Date: Thu Sep 4 06:26:18 2008
New Revision: 692005
URL: http://svn.apache.org/viewvc?rev=692005&view=rev
Log:
disable addressing on response msgs and more efficient creation of SOAP msgs
Modified:
webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/workers/SenderWorker.java
Modified: webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/workers/SenderWorker.java
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/workers/SenderWorker.java?rev=692005&r1=692004&r2=692005&view=diff
==============================================================================
--- webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/workers/SenderWorker.java (original)
+++ webservices/sandesha/trunk/java/modules/core/src/main/java/org/apache/sandesha2/workers/SenderWorker.java Thu Sep 4 06:26:18 2008
@@ -609,7 +609,7 @@
// To catch the modification and pass it to engine or handler, resenvelope is created by responseMessageContext.
if (resenvelope==null) {
//We try to build the response out of the transport stream.
- resenvelope = TransportUtils.createSOAPMessage(responseMessageContext);
+ resenvelope = TransportUtils.createSOAPMessage(responseMessageContext, true);
responseMessageContext.setEnvelope(resenvelope);
syncResponseBuilt = true;
}
@@ -697,6 +697,13 @@
InvocationResponse response = null;
if (resenvelope!=null) {
+ //Drive the response msg through the engine
+ //disable addressing validation - this is an inbound response msg so we do not want addressing to validate replyTo
+ //etc in the same way as it would for inbound request messages
+ if (log.isDebugEnabled())
+ log.debug("SenderWorker::disable addressing inbound checks, driving response through axis engine " + responseMessageContext);
+
+ responseMessageContext.setProperty(AddressingConstants.ADDR_VALIDATE_INVOCATION_PATTERN, Boolean.FALSE);
response = AxisEngine.receive(responseMessageContext);
}
if(!InvocationResponse.SUSPEND.equals(response)) {