Is there something missing in my generated WSDL file?

I have a stateless enterprise Javabean exposed as a Web service running on Weblogic server 6.0, and this is being accessed by a Visual Basic .NET client. I'm using Apache SOAP 2.2. One of the methods of the service returns an array of a Java class called "TransactionHelper". This TransactionHelper class contains 4 properties, one "String", one "double" and two "booleans". This TransactionHelper class conforms to the criteria for a "javabean"...

so I have mapped the class to the "beanSerializer" included in Apache SOAP.

In the "Type Mappings" section of the Apache SOAP admin, I have given the TransactionHelper class a "Namespace URI" of "urn:xml-TransactionHelper". I have generated a "wsdl" file using IBM's wstk 3.0. I then copied this file to a directory on the client machine, and ran Microsofts "wsdl.exe" tool, to generate a proxy class for the Web client. The Web client then uses the proxy class to communicate with the Web service. The problem is, that when I run it and call the method in question, I get the following error message: "System.InvalidOperationException: The specified type was not recognized: name='TransactionHelper', namespace='urn:xml-TransactionHelper', at <return xmlns=''>."

Is there possibly something missing in my generated "wsdl" file? Any help would be appreciated.

I can't answer this question without seeing the generated WSDL document, but I expect that your WSDL defines the response as an array of TransactionHelper types, and doesn't provide a type definition for this TransactionHelper type. You probably need to create an XML Schema to describe the TransactionHelper type and import that schema into your WSDL file in the types section (map the urn:xml-TransactionHelper namespace to this schema). Then .NET should be able to interpret the response.
This was first published in March 2002

Dig deeper on Simple Object Access Protocol (SOAP)



Enjoy the benefits of Pro+ membership, learn more and join.

Have a question for an expert?

Please add a title for your question

Get answers from a TechTarget expert on whatever's puzzling you.

You will be able to add details on the next page.



Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to: