You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fx-dev@ws.apache.org by ch...@apache.org on 2006/03/31 06:15:11 UTC
svn commit: r390319 [3/3] - in
/webservices/sandesha/trunk/src/org/apache/sandesha2: ./ client/ handlers/
msgprocessors/ storage/ storage/beanmanagers/ storage/beans/
storage/inmemory/ util/ workers/ wsrm/
Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/RMElements.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/RMElements.java?rev=390319&r1=390318&r2=390319&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/RMElements.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/RMElements.java Thu Mar 30 20:15:07 2006
@@ -29,6 +29,9 @@
import org.apache.axiom.soap.SOAPEnvelope;
import org.apache.axiom.soap.SOAPFactory;
import org.apache.axiom.soap.SOAPHeader;
+import org.apache.axis2.addressing.AddressingConstants;
+
+import sun.util.logging.resources.logging;
/**
* @author Chamikara Jayalath <ch...@gmail.com>
@@ -49,6 +52,7 @@
private AckRequested ackRequested = null;
private SOAPFactory factory = null;
String rmNamespaceValue = null;
+ String addressingNamespaceValue = null;
public void fromSOAPEnvelope(SOAPEnvelope envelope, String action) throws SandeshaException {
@@ -57,7 +61,7 @@
SOAPFactory factory;
- //Ya I know. Could hv done it directly :D (just to make it consistent)
+ //Yep, I know. Could hv done it directly :D (just to make it consistent)
if (envelope.getNamespace().getName().equals(SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI))
factory = SOAPAbstractFactory.getSOAPFactory(Sandesha2Constants.SOAPVersion.v1_1);
else
@@ -66,9 +70,16 @@
//finding out the rm version.
rmNamespaceValue = getRMNamespaceValue (envelope,action);
- if (rmNamespaceValue==null)
+ if (rmNamespaceValue==null) {
return;
+ }
+ //finding out the addressing version.
+ addressingNamespaceValue = getAddressingNamespaceValue (envelope,action);
+ if (addressingNamespaceValue==null) {
+ return;
+ }
+
OMElement sequenceElement = envelope.getHeader().getFirstChildWithName(
new QName(rmNamespaceValue, Sandesha2Constants.WSRM_COMMON.SEQUENCE));
if (sequenceElement != null) {
@@ -90,7 +101,7 @@
Sandesha2Constants.WSRM_COMMON.CREATE_SEQUENCE));
if (createSeqElement != null) {
- createSequence = new CreateSequence(factory,rmNamespaceValue);
+ createSequence = new CreateSequence(factory,rmNamespaceValue,addressingNamespaceValue);
createSequence.fromOMElement(envelope.getBody());
}
@@ -99,7 +110,7 @@
new QName(rmNamespaceValue,
Sandesha2Constants.WSRM_COMMON.CREATE_SEQUENCE_RESPONSE));
if (createSeqResElement != null) {
- createSequenceResponse = new CreateSequenceResponse(factory,rmNamespaceValue);
+ createSequenceResponse = new CreateSequenceResponse(factory,rmNamespaceValue,addressingNamespaceValue);
createSequenceResponse.fromOMElement(envelope.getBody());
}
@@ -284,6 +295,21 @@
return null; //a version could not be found
}
+
+ private String getAddressingNamespaceValue (SOAPEnvelope envelope, String action) {
+ SOAPHeader header = envelope.getHeader();
+ if (header!=null) {
+ ArrayList headers = header.getHeaderBlocksWithNSURI(AddressingConstants.Submission.WSA_NAMESPACE);
+ if (headers!=null && headers.size()>0)
+ return AddressingConstants.Submission.WSA_NAMESPACE;
+
+ headers = header.getHeaderBlocksWithNSURI(AddressingConstants.Final.WSA_NAMESPACE);
+ if (headers!=null && headers.size()>0)
+ return AddressingConstants.Final.WSA_NAMESPACE;
+ }
+
+ return null; //a version could not be found
+ }
public CloseSequence getCloseSequence() {
return closeSequence;
@@ -299,5 +325,9 @@
public void setCloseSequenceResponse(CloseSequenceResponse closeSequenceResponse) {
this.closeSequenceResponse = closeSequenceResponse;
+ }
+
+ public String getAddressingNamespaceValue() {
+ return addressingNamespaceValue;
}
}
Modified: webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/SequenceAcknowledgement.java
URL: http://svn.apache.org/viewcvs/webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/SequenceAcknowledgement.java?rev=390319&r1=390318&r2=390319&view=diff
==============================================================================
--- webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/SequenceAcknowledgement.java (original)
+++ webservices/sandesha/trunk/src/org/apache/sandesha2/wsrm/SequenceAcknowledgement.java Thu Mar 30 20:15:07 2006
@@ -50,7 +50,7 @@
OMNamespace rmNamespace = null;
SOAPFactory factory;
String namespaceValue = null;
- private boolean mustUnderstand = true;
+ private boolean mustUnderstand = false;
private AckNone ackNone = null;
private AckFinal ackFinal = null;
---------------------------------------------------------------------
To unsubscribe, e-mail: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org