The latest snapshot has fixed the problem with the header  - thanks very much
:)

One question regarding the generated code for the following element
(declared in a schema referenced by my wsdl):

- <xsd:element default="COLD" name="temperature">
        - <xsd:annotation>
          <xsd:documentation xml:lang="en">Temp.</xsd:documentation> 
        </xsd:annotation>
        - <xsd:simpleType>
                - <xsd:restriction base="xsd:string">
                        - <xsd:enumeration value="WARM">
                                - <xsd:annotation>
                                        <xsd:documentation xml:lang="en">Warm 
temp.</xsd:documentation> 
                                  </xsd:annotation>
                        </xsd:enumeration>
                        - <xsd:enumeration value="HOT">
                                - <xsd:annotation>
                                  <xsd:documentation xml:lang="en">Hot 
temp.</xsd:documentation> 
                                  </xsd:annotation>
                        </xsd:enumeration>
                        - <xsd:enumeration value="COLD">
                                - <xsd:annotation>
                                  <xsd:documentation xml:lang="en">Cold 
temp.</xsd:documentation> 
                                  </xsd:annotation>
                          </xsd:enumeration>
                </xsd:restriction>
        </xsd:simpleType>
  </xsd:element>

A method is generated and the default value for temp is set:

function myNamespace_temperature(){
    ...
    this._temperature = COLD;
}

To get my code to work, I need to turn COLD into a String. E.g. 'COLD'. Is
this a new problem with the auto generated code?

Currently, I have manually modified the generated js file to get around this
and it is working as expected.

Your advice would again be appreciated - if you require more info please
just ask.

Thanks



noosy wrote:
> 
> Sorry Benson, I only just got a chance to look at this today. Thanks so
> much - will try the snapshot tomorrow and post back my results.
> 
> 
> bimargulies wrote:
>> 
>> https://issues.apache.org/jira/browse/CXF-2513. Fixed. Try another
>> snapshot.
>> 
>> On Wed, Oct 21, 2009 at 7:51 AM, Benson Margulies
>> <[email protected]>wrote:
>> 
>>> I will try to make sense of this tonight. However, I am likelier to be
>>> much
>>> more helpful much faster if you can either construct a test case you can
>>> share or at least share the XML Schema fragments relevant to this
>>> problem.
>>> This kind of problem boils down to having generated Javascript that is
>>> not
>>> on the same page as the XML Schema (assuming that your service
>>> corresponds
>>> to its schema correctly).
>>>
>>>
>>> On Wed, Oct 21, 2009 at 3:49 AM, noosy
>>> <[email protected]
>>> > wrote:
>>>
>>>>
>>>> Awesome, I got the latest snapshot and the missing code has been
>>>> generated
>>>> :)
>>>>
>>>> However... I tried to call a simple WS operation, I can see that I am
>>>> getting the SOAP envelope back containing the result but my generated
>>>> js
>>>> function ns_getResult_op_onsuccess(client, responseXml)
>>>> is letting me down. I will try and describe the problem as best I can.
>>>>
>>>> In FireBug, the POST Response looks like this:
>>>>
>>>> <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/";>
>>>>    <env:Header/>
>>>>    <env:Body>
>>>>        <java:getResultResponse xmlns:java="java:blah">
>>>>            <java:result>myResult</java:result>
>>>>        </java:getResultResponse>
>>>>    </env:Body>
>>>> </env:Envelope>
>>>>
>>>> Within the method below, I will show you what I see in Firebug as
>>>> comments
>>>> for each line..
>>>>
>>>> ns_getResult_op_onsuccess(client, responseXml)
>>>> {
>>>>    if(client.user_onsuccess)
>>>>    {
>>>>        var responseObject = null;
>>>>        var element = responseXml.documentElement;  // element =
>>>> envelope
>>>>        this.jsutils.trace('responseXml: ' +
>>>> this.jsutils.traceElementName(element));
>>>>        element = this.jsutils.getFirstElementChild(element); // element
>>>> =
>>>> header
>>>>        this.jsutils.trace('first element child: ' +
>>>> this.jsutils.traceElementName(element));
>>>>        element = this.jsutils.getFirstElementChild(element);  //
>>>> element =
>>>> null
>>>>        this.jsutils.trace('part element: ' +
>>>> this.jsutils.traceElementName(element)); // element = null
>>>>        this.jsutils.trace('calling
>>>> blah_getResultResponse_deserializeResponse');
>>>>        responseObject =
>>>> blah_getResultResponse_deserializeResponse(this.jsutils, element);
>>>>        client.user_onsuccess(responseObject);
>>>>    }
>>>> }
>>>>
>>>> So the problem is arising where element = null.
>>>>
>>>> When I look at the documentElement in FireBug it looks like this:
>>>>
>>>> documentElement: envelope
>>>>  childElementCount: 2
>>>>  children: header, body
>>>>    0: header
>>>>      childElementCount: 0
>>>>    1: body
>>>>      childElementCount: 1
>>>>      children: getresultresponse
>>>>        0: getresultresponse
>>>>          childElementCount: 1
>>>>          children: result
>>>>            0: result
>>>>              textContent: myResult
>>>>
>>>> Is the problem my XML (I'm using a third party WSDL so I can't change
>>>> it)
>>>> or
>>>> is this a problem with the generated wsdl2js code that parses the
>>>> responseXML?
>>>>
>>>> BTW I greatly appreciate your help so far!
>>>>
>>>>
>>>>
>>>> bimargulies wrote:
>>>> >
>>>> > I've made a fix to the top-level problem to trunk. Try the next
>>>> snapshot.
>>>> >
>>>>
>>>> --
>>>> View this message in context:
>>>> http://www.nabble.com/WSD2JS-Not-Creating-Schema-Objects-tp25913919p25987975.html
>>>> Sent from the cxf-user mailing list archive at Nabble.com.
>>>>
>>>>
>>>
>> 
>> 
> 
> 

-- 
View this message in context: 
http://old.nabble.com/WSD2JS-Not-Creating-Schema-Objects-tp25913919p26418028.html
Sent from the cxf-user mailing list archive at Nabble.com.

Reply via email to