I currently have a method with the following declaration:
[WebMethod()]
public NGApiStatus CreateItems
(
NGItems items,
string strBatchName,
bool bCreateBatch,
bool bFailifBatchExists,
string strCategPath
)
Where NGItems is a strong typed dataset. I am attempting to add a Java safe
equivalent method that looks like this:
[WebMethod()]
public NGApiStatus CreateItemsJ
(
string items,
string strBatchName,
bool bCreateBatch,
bool bFailifBatchExists,
string strCategPath
)
Where items is the xml that conforms to the xsd of NGItems. Is there a way
to get items to generate wsdl that enforces the xsd of NGItems for the string
parameter items? CreateItems does so however as anybody who has done interop
knows the dataset doesn't serialize over as the xsd data it serializes over
in a diffgram format.
The reason I'm asking is that on the Java side the client proxy generating
tool generates JAXB wrapper classes for the datasets and it would be nice to
still use that object in this case. I just don't know how to get the .NET
web services to still generate wsdl that looks like this for the parameter:
<s:element name="CreateItems">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="items">
<s:complexType>
<s:sequence>
<s:any namespace="http://convergencedata.net/NGItems.xsd" />
</s:sequence>
</s:complexType>
</s:element>
<s:element minOccurs="0" maxOccurs="1" name="strBatchName"
type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="bCreateBatch"
type="s:boolean" />
<s:element minOccurs="1" maxOccurs="1" name="bFailifBatchExists"
type="s:boolean" />
<s:element minOccurs="0" maxOccurs="1" name="strCategPath"
type="s:string" />
</s:sequence>
</s:complexType>
</s:element>