Marius,
The only errors that I see in the WSDL is that you need to remove the
"namespace" attributes from all the <soap:body> definitions in the
binding. (You use the namespace attribute only when using RPC style.)
Please make this fix and regenerate (although I doubt this is causing
the anomoly).
Please let us know what happens.
Anne
On 8/24/06, Marius Hugo <[EMAIL PROTECTED]> wrote:
Sure, no problem, I've attached the files.
I'm sending the entire files, cause I don't want to go and send what I
think is important and then it ends up that I am missing something (look
for the SessionId).
The extra methods (in the Document) seem to be created for each of the
xs:simpleTypes that are declared in TradeRootMerchantTypes.xsd.
The types aren't always changed (from long to int for instance), but the
other types are int and string and I don't really see what else they
could change to anyway.
Another question:
I am not sure how the restrictions that are placed on a type are imposed
in the generated code.
For instance, in the case of the SessionId type, I don't see any code
that enforces the restrictions that are defined
(maxInclusive and minInclusive).
If I go look at the following generated code though:
<xs:complexType name="AdditionalDataNOTIFY">
<xs:annotation>
<xs:documentation>This Additional Data is
provided by the EUA when there exists a requirement to dispatch a
notification instruction.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="notificationType">
<xs:simpleType>
<xs:restriction
base="xs:string">
<xs:enumeration
value="EMAIL"/>
<xs:enumeration
value="SMS"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="notificationAddress">
<xs:simpleType>
<xs:restriction
base="xs:string">
<xs:maxLength
value="120"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
Then I can see the restriction enforced for notifactionType, but not for
notificationAddress. I haven't worked with xsd and wsdl before, so I
don't really know if I'm just not understanding the concept of these
restrictions or if I'm missing something really obvious, so if anyone
would care to explain it to me in very simple terms...that would really
be appreciated:D
Thanks,
Marius
-----Original Message-----
From: Anne Thomas Manes [mailto:[EMAIL PROTECTED]
Sent: 23 August 2006 19:46
To: [email protected]
Subject: Re: WSDL2Java Question
Marius,
Given that xsd:long is derived from xsd:int restricted by maxInclusive
and minInclusive, it actually makes more sense for you to derive from
xsd:int rather than xsd:long.
But that's just a nit. This smells like a bug.
xsd:long should map to long, not to int; but since you've derived a
type, the return type should be your value type, SessionId.
But I don't understand why you have two methods.
Could you please post the WSDL and XSD?
Anne
On 8/23/06, Marius Hugo <[EMAIL PROTECTED]> wrote:
>
>
> This is the first time that I am working with axis and I must now
> migrate someone else's code
>
> from axis to axis2, so I'm a little clueless...
>
> I just have a few simple questions concerning what WSDL2Java
generated:
>
> In ye olden xsd and wsdl:
> - He declared a simple type (xs:long), " SessionId " .
> - He also added restrictions (minInclusive and maxInclusive) to
> that type
> - He also declared that one of the responses that I send, uses
> that type as a field .
> - From what I've learned, all of this looks right and it worked
> on the previous version of axis
>
> - I then used WSDL2Java to generate code:
> it generated
> com.company.product.webservice.types.SessionId
> it also generated the Document that uses this
> type
>
> - In the generated document, the following methods are available
> (well, there are others:):
>
> - int getSessionId();
> - com.company.product.webservice.types.SessionId
> xgetSessionId();
>
>
> NOW (these questions apply to both getters and setters)
>
> What is the difference between the two methods?
>
> Are the restrictions imposed on both of them?
>
> Why does the one method return an int, when SessionId was defined
> as a long?
>
> If I were to go send this Document off as a SOAP message, what
will
> I be sending? I mean, if I say went and set both values or just
the one?
> Will I
> be sending both values that I set, cause that doesn't really make
sense
> to me.
>
>
>
> Thanks,
> Marius
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]