Dear Sandesha Committers,

It seems that there are few errors in the classes in org.apache.sandesha2.wsrm package concerning the methods fromSOAPEnvelope(), toSOAPEnvelope().

Please accept the patch I've included which will resolve those errors.

Thanks,
Sanka Samaranayake

Index: wsrm/SequenceAcknowledgement.java
===================================================================
--- wsrm/SequenceAcknowledgement.java   (revision 240164)
+++ wsrm/SequenceAcknowledgement.java   (working copy)
@@ -24,6 +24,7 @@
 import org.apache.axis2.om.OMElement;
 import org.apache.axis2.om.OMException;
 import org.apache.axis2.om.OMNamespace;
+import org.apache.axis2.om.OMNode;
 import org.apache.axis2.soap.SOAPEnvelope;
 import org.apache.axis2.soap.SOAPHeader;
 import org.apache.axis2.soap.SOAPHeaderBlock;
@@ -69,21 +70,36 @@
                SOAPHeader soapHeader = envelope.getHeader();
                Iterator iterator = soapHeader.getChildren();
                while (iterator.hasNext()){
-                       OMElement omElement = (OMElement)iterator.next();
+                       OMNode omNode = (OMNode) iterator.next();
+                       
+                       if (!(omNode instanceof OMElement)) {
+                               continue;
+                       }
+                       OMElement omElement = (OMElement) omNode;
+                       
                        if 
(omElement.getLocalName().equals(Constants.WSRM.SEQUENCE_ACK)){
                                Iterator childIterator = 
omElement.getChildren();
                                while (childIterator.hasNext()){
-                                       OMElement childElement = 
(OMElement)childIterator.next();
+                                       OMNode childOMNode = (OMNode) 
childIterator.next();
+                                       
+                                       if (!(childOMNode instanceof 
OMElement)) {
+                                               continue;
+                                       }
+                                       
+                                       OMElement childElement = (OMElement) 
childOMNode;
+                                       
                                        if 
(childElement.getLocalName().equals(Constants.WSRM.ACK_RANGE)){
                                                AcknowledgementRange ackRange = 
new AcknowledgementRange();
                                                
ackRange.fromSOAPEnvelope(childElement);
                                                
acknowledgementRanges.add(ackRange);
                                        }
+                                       
                                        if 
(childElement.getLocalName().equals(Constants.WSRM.NACK)){
                                                Nack nack = new Nack(); 
                                                
nack.fromSOAPEnvelope(childElement);
                                                nackList.add(nack);
                                        }
+                                       
                                        if ( 
childElement.getLocalName().equals(Constants.WSRM.IDENTIFIER)){
                                                identifier = new Identifier();
                                                
identifier.fromSOAPEnvelope(envelope);
Index: wsrm/CreateSequenceResponse.java
===================================================================
--- wsrm/CreateSequenceResponse.java    (revision 240164)
+++ wsrm/CreateSequenceResponse.java    (working copy)
@@ -71,6 +71,7 @@
        public Identifier getIdentifier(){
                return identifier;
        }
+       
        public void setAccept(Accept accept){
                this.accept = accept;
        }
Index: wsrm/Identifier.java
===================================================================
--- wsrm/Identifier.java        (revision 240164)
+++ wsrm/Identifier.java        (working copy)
@@ -44,10 +44,6 @@
                                Constants.WSRM.IDENTIFIER, wsuNamespace);
        }
 
-       public void setURI(String uri) throws OMException {
-               
identifierElement.addChild(OMAbstractFactory.getSOAP11Factory().createText(uri));
-       }
-
        public void setIndentifer(String identifier) {
                this.identifier = identifier;
        }
@@ -89,7 +85,7 @@
                        throws OMException {
                //soapheaderblock will be given or anyother block reference to 
the requirment
                if (identifier == null || identifier == "") {
-                       throw new OMException("Set Identifier");
+                       throw new OMException("identifier is not set .. ");
                }
                
identifierElement.addChild(OMAbstractFactory.getSOAP11Factory().createText(
                                identifier));
Index: wsrm/AcksTo.java
===================================================================
--- wsrm/AcksTo.java    (revision 240164)
+++ wsrm/AcksTo.java    (working copy)
@@ -18,6 +18,9 @@
 
 import java.util.Iterator;
 
+import javax.xml.namespace.QName;
+
+import org.apache.axis2.addressing.AddressingConstants;
 import org.apache.axis2.addressing.EndpointReference;
 import org.apache.axis2.om.OMAbstractFactory;
 import org.apache.axis2.om.OMElement;
@@ -57,7 +60,9 @@
                        }else{
                                OMElement omElement = (OMElement)omNode;
                                if 
(omElement.getLocalName().equals(Constants.WSRM.ACKS_TO)){
-                                       String uri = omElement.getText();
+                                       OMElement addressElement = 
omElement.getFirstChildWithName(
+                                                       new 
QName(AddressingConstants.EPR_ADDRESS));
+                                       String uri = addressElement.getText();
                                        EPR = new EndpointReference(uri);
                                        return true;
                                }else{

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to