[ 
http://issues.apache.org/jira/browse/AXIS2-649?page=comments#action_12377397 ] 

robert lazarski commented on AXIS2-649:
---------------------------------------

Still having problems with the latest svn. I see two things now: 

1) You seem to be using different params to WSDL2Java than I do - my task does 
not create a SimpleEndpointSkeleton.java - it creates  
SimpleServiceSkeleton.java . 

Here's my ant task: 

<target name="wsdl2java" depends="clean,prepare">
      <delete dir="output" />
      <java classname="org.apache.axis2.wsdl.WSDL2Java" fork="true">
          <classpath refid="axis.classpath"/>
          <arg value="-d"/>
          <arg value="xmlbeans"/>
          <arg value="-uri"/>
          <arg file="wsdl/simple.wsdl"/>
          <arg value="-ss"/>
          <arg value="-g"/>
          <arg value="-sd"/>
          <arg value="-o"/>
          <arg file="output"/>
          <arg value="-p"/>
          <arg value="org.simple.endpoint"/>
      </java>

      <!-- Move the schema folder to classpath-->
      <move todir="${build.classes}">
          <fileset dir="output/resources">
              <include name="*schema*/**/*.class"/>
              <include name="*schema*/**/*.xsb"/>
          </fileset>
      </move>

  </target>

2) I was not able to use your Skeleton, as I was unclear how to generate the 
equivalent. Here's the exception I'm getting: 

[java] Caused by: java.lang.RuntimeException: Data binding error
     [java]     at 
org.simple.endpoint.SimpleServiceMessageReceiverInOut.fromOM(SimpleServiceMessageReceiverInOut.java:158)
     [java]     at 
org.simple.endpoint.SimpleServiceMessageReceiverInOut.invokeBusinessLogic(SimpleServiceMessageReceiverInOut.java:50)
     [java]     ... 18 more
     [java] Caused by: java.lang.NullPointerException
     [java]     at 
org.apache.xmlbeans.impl.store.Cur$CurLoadContext.attr(Cur.java:3041)
     [java]     at 
org.apache.xmlbeans.impl.store.Cur$CurLoadContext.attr(Cur.java:3058)
     [java]     at 
org.apache.xmlbeans.impl.store.Locale.doNamespaces(Locale.java:900)
     [java]     at 
org.apache.xmlbeans.impl.store.Locale.loadXMLStreamReader(Locale.java:1135)
     [java]     at 
org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:843)
     [java]     at 
org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:826)
     [java]     at 
org.apache.xmlbeans.impl.schema.SchemaTypeLoaderBase.parse(SchemaTypeLoaderBase.java:231)
     [java]     at 
simplens.types.SimpleLoginDocument$Factory.parse(SimpleLoginDocument.java:153)
     [java]     at 
org.simple.endpoint.SimpleServiceMessageReceiverInOut.fromOM(SimpleServiceMessageReceiverInOut.java:137)
     [java]     ... 19 more

3) I'm now seeing the namespace - good: 

 private static final javax.xml.namespace.QName SIMPLELOGINRESPONSE$0 =
        new javax.xml.namespace.QName("http://simpleNS/types";, 
"simpleLoginResponse")

> Databinding with XMLBeans shows values in soap message but getters return null
> ------------------------------------------------------------------------------
>
>          Key: AXIS2-649
>          URL: http://issues.apache.org/jira/browse/AXIS2-649
>      Project: Apache Axis 2.0 (Axis2)
>         Type: Bug

>     Versions: 1.0
>  Environment: Java 5, linux
>     Reporter: robert lazarski
>     Assignee: Ajith Harshana Ranabahu
>  Attachments: SimpleEndpointSkeleton.java, SimpleServiceSkeleton.java, 
> Tester.java, simple.wsdl
>
> This issue may be related to AXIS2-644, but my example is not using 
> inheritance,  
> The wsdl is attached and validates fine.
> The response envelope is:
> <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope 
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";><soapenv:Header 
> /><soapenv:Body><simpleLoginResponse 
> xmlns="http://simpleNS/types";><soap_session_id>my random 
> string</soap_session_id><web_user_name 
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xsi:nil="true" 
> /></simpleLoginResponse></soapenv:Body></soapenv:Envelope>
> I'm setting 'web_user_name' in the service, but it's not showing up.
> On the client side, simpleLoginResponseDocument.toString() gives me:
> <simpleLoginResponse xmlns="http://simpleNS/types";>
>   <soap_session_id>my random string</soap_session_id>
>   <web_user_name xsi:nil="true" 
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
> </simpleLoginResponse>
> I'm getting the 'soap_user_session'  in the soap message,  but  I'm getting 
> null when trying to  call  simpleLoginResponse.getSoapSessionId() . The 
> reason may be here in  
> simplens/types/impl/SimpleLoginResponseDocumentImpl.java -
> I've put in a few println() :
>   public static class SimpleLoginResponseImpl extends 
> org.apache.xmlbeans.impl.values.XmlComplexContentImpl implements 
> simplens.types.SimpleLoginResponseDocument.SimpleLoginResponse
>     {
>         public SimpleLoginResponseImpl(org.apache.xmlbeans.SchemaType sType)
>         {
>             super(sType);
>         }
>         private static final javax.xml.namespace.QName SOAPSESSIONID$0 =
>             new javax.xml.namespace.QName("", "soap_session_id");
>         private static final javax.xml.namespace.QName WEBUSERNAME$2 =
>             new javax.xml.namespace.QName("", "web_user_name");
>         /**
>          * Gets the "soap_session_id" element
>          */
>         public java.lang.String getSoapSessionId()
>         {
>             synchronized (monitor())
>             {
>                 check_orphaned();
>                 org.apache.xmlbeans.SimpleValue target = null;
>                 target = 
> (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(SOAPSESSIONID$0,
>  0);
>                 if (target == null)
>                 {
>                     System.out.println("target is null");
>                     return null;
>                 }
>                 System.out.println("target is ok? " + target);
>                 return target.getStringValue();
>             }
>         }
> The target is null, but the value is showing in the soap message. This is the 
> .95 version: 
>   private static final javax.xml.namespace.QName SIMPLELOGINRESPONSE$0 =
>         new javax.xml.namespace.QName("http://simpleNS/types";, 
> "simpleLoginResponse");
> The missing namespace appears to be causing this. 
> Also attached are my Skeleton, Client, and wsdl2java ant task. 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to