Argh! just tried getXMLStreamReaderWithoutCaching(), that fails :( we
need a "stronger" fix.

On 1/28/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> Author: ruchithf
> Date: Fri Jan 27 21:01:51 2006
> New Revision: 373086
>
> URL: http://svn.apache.org/viewcvs?rev=373086&view=rev
> Log:
> Adding a test method to test conversion of ADB generated content to DOOM : 
> Now ADBSOAPModelBuilderTest will fail
>
> Added:
>     
> webservices/axis2/trunk/java/modules/adb/test/org/apache/axis2/databinding/ClientInfo.java
>     
> webservices/axis2/trunk/java/modules/adb/test/org/apache/axis2/databinding/CreateAccountRequest.java
> Modified:
>     
> webservices/axis2/trunk/java/modules/adb/test/org/apache/axis2/databinding/ADBSOAPModelBuilderTest.java
>
> Modified: 
> webservices/axis2/trunk/java/modules/adb/test/org/apache/axis2/databinding/ADBSOAPModelBuilderTest.java
> URL: 
> http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/adb/test/org/apache/axis2/databinding/ADBSOAPModelBuilderTest.java?rev=373086&r1=373085&r2=373086&view=diff
> ==============================================================================
> --- 
> webservices/axis2/trunk/java/modules/adb/test/org/apache/axis2/databinding/ADBSOAPModelBuilderTest.java
>  (original)
> +++ 
> webservices/axis2/trunk/java/modules/adb/test/org/apache/axis2/databinding/ADBSOAPModelBuilderTest.java
>  Fri Jan 27 21:01:51 2006
> @@ -16,21 +16,26 @@
>
>  package org.apache.axis2.databinding;
>
> -import org.apache.axis2.databinding.utils.ADBPullParser;
> -import org.apache.axis2.om.OMAbstractFactory;
> -import org.apache.axis2.om.OMElement;
> -import org.custommonkey.xmlunit.XMLTestCase;
> -import org.w3c.dom.Document;
> -import org.xml.sax.SAXException;
> +import java.io.ByteArrayInputStream;
> +import java.io.IOException;
> +import java.util.ArrayList;
>
>  import javax.xml.namespace.QName;
>  import javax.xml.parsers.DocumentBuilder;
>  import javax.xml.parsers.DocumentBuilderFactory;
>  import javax.xml.parsers.ParserConfigurationException;
>  import javax.xml.stream.XMLStreamReader;
> -import java.io.ByteArrayInputStream;
> -import java.io.IOException;
> -import java.util.ArrayList;
> +
> +import org.apache.axis2.databinding.utils.ADBPullParser;
> +import org.apache.axis2.om.DOOMAbstractFactory;
> +import org.apache.axis2.om.OMAbstractFactory;
> +import org.apache.axis2.om.OMElement;
> +import org.apache.axis2.soap.SOAP11Constants;
> +import org.apache.axis2.soap.SOAPEnvelope;
> +import org.apache.axis2.soap.impl.llom.builder.StAXSOAPModelBuilder;
> +import org.custommonkey.xmlunit.XMLTestCase;
> +import org.w3c.dom.Document;
> +import org.xml.sax.SAXException;
>
>  public class ADBSOAPModelBuilderTest extends XMLTestCase {
>      public void testSimpleArrayList() throws Exception {
> @@ -55,6 +60,29 @@
>          Document actualDom = newDocument(root.toString());
>          assertXMLEqual(actualDom, expectedDOM);
>      }
> +
> +    public void testConvertToDOOM() {
> +
> +        CreateAccountRequest request = new CreateAccountRequest();
> +        ClientInfo clientInfo = new ClientInfo();
> +        clientInfo.setName("bob");
> +        clientInfo.setSsn("123456789");
> +        request.setClientInfo(clientInfo);
> +        request.setPassword("passwd");
> +
> +        ADBSOAPModelBuilder builder = new ADBSOAPModelBuilder(request
> +                .getPullParser(CreateAccountRequest.MY_QNAME),
> +                OMAbstractFactory.getSOAP11Factory());
> +
> +        SOAPEnvelope env = builder.getEnvelope();
> +        env.build();
> +
> +        StAXSOAPModelBuilder builder2 = new 
> StAXSOAPModelBuilder(env.getXMLStreamReader(), 
> DOOMAbstractFactory.getSOAP11Factory(), 
> SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI);
> +
> +        SOAPEnvelope envelope = builder2.getSOAPEnvelope();
> +        envelope.build();
> +    }
> +
>
>      public class DummyADBBean implements ADBBean {
>          ArrayList propertyList = new ArrayList();
> @@ -87,4 +115,5 @@
>          DocumentBuilder db = dbf.newDocumentBuilder();
>          return db.parse(new ByteArrayInputStream(xml.getBytes()));
>      }
> +
>  }
>
> Added: 
> webservices/axis2/trunk/java/modules/adb/test/org/apache/axis2/databinding/ClientInfo.java
> URL: 
> http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/adb/test/org/apache/axis2/databinding/ClientInfo.java?rev=373086&view=auto
> ==============================================================================
> --- 
> webservices/axis2/trunk/java/modules/adb/test/org/apache/axis2/databinding/ClientInfo.java
>  (added)
> +++ 
> webservices/axis2/trunk/java/modules/adb/test/org/apache/axis2/databinding/ClientInfo.java
>  Fri Jan 27 21:01:51 2006
> @@ -0,0 +1,175 @@
> +/**
> + * ClientInfo.java
> + *
> + * This file was auto-generated from WSDL
> + * by the Apache Axis2 version: #axisVersion# #today#
> + */
> +
> +package org.apache.axis2.databinding;
> +
> +/**
> + * ClientInfo bean class
> + */
> +
> +public class ClientInfo
> +        implements org.apache.axis2.databinding.ADBBean {
> +    /* This type was generated from the piece of schema that had
> +    name = ClientInfo
> +    Namespace URI = http://www.wso2.com/types
> +    Namespace Prefix = ns1
> +    */
> +
> +    public ClientInfo(String localName, String localSsn) {
> +        this.localName = localName;
> +        this.localSsn = localSsn;
> +    }
> +
> +    public ClientInfo() {
> +    }
> +
> +    /**
> +     * field for Name
> +     */
> +    protected java.lang.String localName;
> +
> +
> +    /**
> +     * Auto generated getter method
> +     *
> +     * @return java.lang.String
> +     */
> +    public java.lang.String getName() {
> +        return localName;
> +    }
> +
> +    /**
> +     * Auto generated setter method
> +     *
> +     * @param param Name
> +     */
> +    public void setName(java.lang.String param) {
> +
> +
> +        this.localName = param;
> +    }
> +
> +
> +    /**
> +     * field for Ssn
> +     */
> +    protected java.lang.String localSsn;
> +
> +
> +    /**
> +     * Auto generated getter method
> +     *
> +     * @return java.lang.String
> +     */
> +    public java.lang.String getSsn() {
> +        return localSsn;
> +    }
> +
> +    /**
> +     * Auto generated setter method
> +     *
> +     * @param param Ssn
> +     */
> +    public void setSsn(java.lang.String param) {
> +
> +
> +        this.localSsn = param;
> +    }
> +
> +
> +    /**
> +     * databinding method to get an XML representation of this object
> +     */
> +    public javax.xml.stream.XMLStreamReader 
> getPullParser(javax.xml.namespace.QName qName) {
> +
> +
> +        java.util.ArrayList elementList = new java.util.ArrayList();
> +        java.util.ArrayList attribList = new java.util.ArrayList();
> +
> +
> +        elementList.add(new javax.xml.namespace.QName("",
> +                "name"));
> +        
> elementList.add(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(localName));
> +
> +        elementList.add(new javax.xml.namespace.QName("",
> +                "ssn"));
> +        
> elementList.add(org.apache.axis2.databinding.utils.ConverterUtil.convertToString(localSsn));
> +
> +
> +        return 
> org.apache.axis2.databinding.utils.ADBPullParser.createPullParser(qName, 
> elementList.toArray(), attribList.toArray());
> +
> +
> +    }
> +
> +    /**
> +     * Factory class that keeps the parse method
> +     */
> +    public static class Factory {
> +        /**
> +         * static method to create the object
> +         */
> +        public static ClientInfo parse(javax.xml.stream.XMLStreamReader 
> reader) throws java.lang.Exception {
> +            ClientInfo object = new ClientInfo();
> +            try {
> +                int event = reader.getEventType();
> +                int count = 0;
> +                int argumentCount = 2;
> +                boolean done = false;
> +                //event better be a START_ELEMENT. if not we should go up to 
> the start element here
> +                while (!reader.isStartElement()) {
> +                    event = reader.next();
> +                }
> +
> +
> +                while (!done) {
> +                    if (javax.xml.stream.XMLStreamConstants.START_ELEMENT == 
> event) {
> +
> +
> +                        if ("name".equals(reader.getLocalName())) {
> +
> +                            String content = reader.getElementText();
> +                            object.setName(
> +                                    
> org.apache.axis2.databinding.utils.ConverterUtil.convertTostring(content));
> +                            count++;
> +
> +
> +                        }
> +
> +
> +                        if ("ssn".equals(reader.getLocalName())) {
> +
> +                            String content = reader.getElementText();
> +                            object.setSsn(
> +                                    
> org.apache.axis2.databinding.utils.ConverterUtil.convertTostring(content));
> +                            count++;
> +
> +
> +                        }
> +
> +
> +                    }
> +
> +                    if (argumentCount == count) {
> +                        done = true;
> +                    }
> +
> +                    if (!done) {
> +                        event = reader.next();
> +                    }
> +
> +                }
> +
> +            } catch (javax.xml.stream.XMLStreamException e) {
> +                throw new java.lang.Exception(e);
> +            }
> +
> +            return object;
> +        }
> +    }//end of factory class
> +
> +}
> +
> \ No newline at end of file
>
> Added: 
> webservices/axis2/trunk/java/modules/adb/test/org/apache/axis2/databinding/CreateAccountRequest.java
> URL: 
> http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/adb/test/org/apache/axis2/databinding/CreateAccountRequest.java?rev=373086&view=auto
> ==============================================================================
> --- 
> webservices/axis2/trunk/java/modules/adb/test/org/apache/axis2/databinding/CreateAccountRequest.java
>  (added)
> +++ 
> webservices/axis2/trunk/java/modules/adb/test/org/apache/axis2/databinding/CreateAccountRequest.java
>  Fri Jan 27 21:01:51 2006
> @@ -0,0 +1,158 @@
> +/**
> + * CreateAccountRequest.java
> + *
> + * This file was auto-generated from WSDL
> + * by the Apache Axis2 version: #axisVersion# #today#
> + */
> +
> +package org.apache.axis2.databinding;
> +
> +/**
> + * CreateAccountRequest bean class
> + */
> +
> +public class CreateAccountRequest implements
> +        org.apache.axis2.databinding.ADBBean {
> +
> +    public static final javax.xml.namespace.QName MY_QNAME = new 
> javax.xml.namespace.QName(
> +            "http://www.wso2.com/types";, "createAccountRequest", "ns1");
> +
> +    /**
> +     * field for ClientInfo
> +     */
> +    protected ClientInfo localClientInfo;
> +
> +    /**
> +     * Auto generated getter method
> +     *
> +     * @return com.wso2.www.types.ClientInfo
> +     */
> +    public ClientInfo getClientInfo() {
> +        return localClientInfo;
> +    }
> +
> +    /**
> +     * Auto generated setter method
> +     *
> +     * @param param
> +     *            ClientInfo
> +     */
> +    public void setClientInfo(ClientInfo param) {
> +
> +        this.localClientInfo = param;
> +    }
> +
> +    /**
> +     * field for Password
> +     */
> +    protected java.lang.String localPassword;
> +
> +    /**
> +     * Auto generated getter method
> +     *
> +     * @return java.lang.String
> +     */
> +    public java.lang.String getPassword() {
> +        return localPassword;
> +    }
> +
> +    /**
> +     * Auto generated setter method
> +     *
> +     * @param param
> +     *            Password
> +     */
> +    public void setPassword(java.lang.String param) {
> +
> +        this.localPassword = param;
> +    }
> +
> +    /**
> +     * databinding method to get an XML representation of this object
> +     *
> +     */
> +    public javax.xml.stream.XMLStreamReader getPullParser(
> +            javax.xml.namespace.QName qName) {
> +
> +        java.util.ArrayList elementList = new java.util.ArrayList();
> +        java.util.ArrayList attribList = new java.util.ArrayList();
> +
> +        elementList.add(new javax.xml.namespace.QName(
> +                "http://www.wso2.com/types";, "clientinfo"));
> +        elementList.add(localClientInfo);
> +
> +        elementList.add(new javax.xml.namespace.QName("", "password"));
> +        elementList.add(org.apache.axis2.databinding.utils.ConverterUtil
> +                .convertToString(localPassword));
> +
> +        return org.apache.axis2.databinding.utils.ADBPullParser
> +                .createPullParser(qName, elementList.toArray(), attribList
> +                        .toArray());
> +
> +    }
> +
> +    /**
> +     * Factory class that keeps the parse method
> +     */
> +    public static class Factory {
> +        /**
> +         * static method to create the object
> +         */
> +        public static CreateAccountRequest parse(
> +                javax.xml.stream.XMLStreamReader reader)
> +                throws java.lang.Exception {
> +            CreateAccountRequest object = new CreateAccountRequest();
> +            try {
> +                int event = reader.getEventType();
> +                int count = 0;
> +                int argumentCount = 2;
> +                boolean done = false;
> +                // event better be a START_ELEMENT. if not we should go up to
> +                // the start element here
> +                while (!reader.isStartElement()) {
> +                    event = reader.next();
> +                }
> +
> +                while (!done) {
> +                    if (javax.xml.stream.XMLStreamConstants.START_ELEMENT == 
> event) {
> +
> +                        if ("clientinfo".equals(reader.getLocalName())) {
> +
> +                            object
> +                                    .setClientInfo(ClientInfo.Factory
> +                                            .parse(reader));
> +                            count++;
> +
> +                        }
> +
> +                        if ("password".equals(reader.getLocalName())) {
> +
> +                            String content = reader.getElementText();
> +                            object
> +                                    
> .setPassword(org.apache.axis2.databinding.utils.ConverterUtil
> +                                            .convertTostring(content));
> +                            count++;
> +
> +                        }
> +
> +                    }
> +
> +                    if (argumentCount == count) {
> +                        done = true;
> +                    }
> +
> +                    if (!done) {
> +                        event = reader.next();
> +                    }
> +
> +                }
> +
> +            } catch (javax.xml.stream.XMLStreamException e) {
> +                throw new java.lang.Exception(e);
> +            }
> +
> +            return object;
> +        }
> +    }// end of factory class
> +
> +}
>
>
>


--
Davanum Srinivas : http://wso2.com/blogs/

Reply via email to