You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by di...@apache.org on 2004/04/06 17:02:50 UTC

cvs commit: ws-axis/java/src/org/apache/axis/message MessageElement.java SOAPBody.java SOAPHeader.java

dims        2004/04/06 08:02:50

  Modified:    java/src/org/apache/axis/message MessageElement.java
                        SOAPBody.java SOAPHeader.java
  Log:
  Fix for AXIS-1286 - "Minor SOAPHeader/SOAPBody issues"
  
  Notes:
  - Ran the usual "ant clean all-tests" and the SAAJ TCK tests.
  
  Revision  Changes    Path
  1.165     +18 -0     ws-axis/java/src/org/apache/axis/message/MessageElement.java
  
  Index: MessageElement.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/java/src/org/apache/axis/message/MessageElement.java,v
  retrieving revision 1.164
  retrieving revision 1.165
  diff -u -r1.164 -r1.165
  --- MessageElement.java	14 Mar 2004 16:58:40 -0000	1.164
  +++ MessageElement.java	6 Apr 2004 15:02:50 -0000	1.165
  @@ -23,6 +23,7 @@
   import java.util.ArrayList;
   import java.util.Iterator;
   import java.util.Vector;
  +import java.util.Enumeration;
   
   import javax.xml.namespace.QName;
   import javax.xml.rpc.encoding.TypeMapping;
  @@ -1633,4 +1634,21 @@
   
       // getEncodingStyle() implemented above
       
  +    MessageElement findElement(Vector vec, String namespace,
  +                                         String localPart)
  +    {
  +        if (vec.isEmpty())
  +            return null;
  +     
  +        QName qname = new QName(namespace, localPart);
  +        Enumeration e = vec.elements();
  +        MessageElement element;
  +        while (e.hasMoreElements()) {
  +            element = (MessageElement)e.nextElement();
  +            if (element.getQName().equals(qname))
  +                return element;
  +        }
  +        
  +        return null;
  +    }
   }
  
  
  
  1.50      +0 -18     ws-axis/java/src/org/apache/axis/message/SOAPBody.java
  
  Index: SOAPBody.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/java/src/org/apache/axis/message/SOAPBody.java,v
  retrieving revision 1.49
  retrieving revision 1.50
  diff -u -r1.49 -r1.50
  --- SOAPBody.java	9 Mar 2004 08:18:24 -0000	1.49
  +++ SOAPBody.java	6 Apr 2004 15:02:50 -0000	1.50
  @@ -195,24 +195,6 @@
                                               localPart);
       }
   
  -    protected MessageElement findElement(Vector vec, String namespace,
  -                                         String localPart)
  -    {
  -        if (vec.isEmpty())
  -            return null;
  -     
  -        QName qname = new QName(namespace, localPart);
  -        Enumeration e = vec.elements();
  -        MessageElement element;
  -        while (e.hasMoreElements()) {
  -            element = (MessageElement)e.nextElement();
  -            if (element.getQName().equals(qname))
  -                return element;
  -        }
  -        
  -        return null;
  -    }
  -
       // JAXM methods
   
       public javax.xml.soap.SOAPBodyElement addBodyElement(Name name)
  
  
  
  1.81      +9 -22     ws-axis/java/src/org/apache/axis/message/SOAPHeader.java
  
  Index: SOAPHeader.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/java/src/org/apache/axis/message/SOAPHeader.java,v
  retrieving revision 1.80
  retrieving revision 1.81
  diff -u -r1.80 -r1.81
  --- SOAPHeader.java	5 Apr 2004 12:30:33 -0000	1.80
  +++ SOAPHeader.java	6 Apr 2004 15:02:50 -0000	1.81
  @@ -247,24 +247,6 @@
           return header;
       }
   
  -    private MessageElement findElement(Vector vec, String namespace,
  -                                       String localPart)
  -    {
  -        if (vec.isEmpty())
  -            return null;
  -        
  -        QName qname = new QName(namespace, localPart);
  -        Enumeration e = vec.elements();
  -        MessageElement element;
  -        while (e.hasMoreElements()) {
  -            element = (MessageElement)e.nextElement();
  -            if (element.getQName().equals(qname))
  -                return element;
  -        }
  -        
  -        return null;
  -    }
  -
       /**
        * Return an Enumeration of headers which match the given namespace
        * and localPart.  Depending on the value of the accessAllHeaders
  @@ -343,8 +325,12 @@
           context.setPretty(oldPretty);
       }
   
  -    public void addChild(MessageElement el) throws SOAPException {
  -        headers.addElement(el);
  +    public void addChild(MessageElement element) throws SOAPException {
  +        if (!(element instanceof SOAPHeaderElement)) {
  +          throw new SOAPException(Messages.getMessage("badSOAPHeader00"));
  +        }
  +        ((SOAPHeaderElement)element).setEnvelope(getEnvelope());
  +        headers.addElement(element);
       }
   
       public java.util.Iterator getChildElements() {
  @@ -384,9 +370,10 @@
       public SOAPElement addChildElement(SOAPElement element) 
         throws SOAPException
       {
  -      if (!(element instanceof javax.xml.soap.SOAPHeaderElement)) {
  +      if (!(element instanceof SOAPHeaderElement)) {
           throw new SOAPException(Messages.getMessage("badSOAPHeader00"));
  -      } 
  +      }
  +      ((SOAPHeaderElement)element).setEnvelope(getEnvelope());
         return super.addChildElement(element);
       }