axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pasca, Romulus" <romulus.pa...@bankofamerica.com>
Subject RE: Problems returning void in document-literal operation
Date Mon, 14 Jun 2004 17:36:56 GMT
Sabrina, I am working like this:
I declare the xml schema in a separate file togheter with the soap messages,
I wrote the wsdl file also by hand, wsdl file which includes my shema, and
I generate the data structures and the webz service interface using wdsl to
java and everything goes well.
 

-----Original Message-----
From: Liller, Sabrina L. CIV Sys Eng Branch 1B 9512
[mailto:sabrina.liller@navy.mil]
Sent: Monday, June 14, 2004 12:16 PM
To: axis-user@ws.apache.org
Subject: RE: Problems returning void in document-literal operation


Thanks for the suggestion, Romulus - I have tried this workaround, but it
doesn't look like it is going to give me what I want.  When I follow this
model, Axis generates an additional class called "_void" and then my methods
return that object, rather than actually returning void.  It seems like the
only way to generate methods that truly return void rather than returning an
Object of some sort is to define an empty message with no parts in the WSDL,
but then the service doesn't know what to do with it at runtime...And
therein lies my problem.
Regards,
Sabrina



-----Original Message-----
From: Pasca, Romulus [mailto:romulus.pasca@bankofamerica.com]
Sent: Monday, June 14, 2004 12:50
To: 'axis-user@ws.apache.org'
Subject: RE: Problems returning void in document-literal operation


Hi, I am usin too documnet literal ws style and for all my methods which
returns void or are having no parameters I made a declaration of the
follwing type:

	<message name="logoutRequest">
		<part name="parameters" element="types:void" />
	</message>

	<message name="logoutResponse">
		<part name="parameters" element="types:void" />
	</message>

	<operation name="logout">
         <input message="tns:logoutRequest"/>         
         <output message="tns:logoutResponse"/>         
      </operation>

were void, is type which I declared in my xml schema file(used by my web
service)like this:

<xs:element name="void">
	<xs:complexType/>
</xs:element>

and everything works fine

Romulus

-----Original Message-----
From: Liller, Sabrina L. CIV Sys Eng Branch 1B 9512
[mailto:sabrina.liller@navy.mil]
Sent: Monday, June 14, 2004 11:44 AM
To: axis-user@ws.apache.org
Subject: Problems returning void in document-literal operation


I have seen a few postings about this problem, but no resolution.  I am
working on a document-literal service and several of the operations should
have a "void" return type.  We are following the top-down model, writing the
WSDL first and then using WSDL2Java to generate the Java classes.  For the
operations that should return "void", I have defined the following message
in the WSDL (no parts):

<wsdl:message name="EmptyMessageResponse" />

Axis has no problem generating the Java code - The methods using this
response message are correctly generated as returning "void".  But when I
try to call the service, I get the following error:

org.xml.sax.SAXException: Deserializing parameter
'ModifyUnofficialRecordRequestResponse':  could not find deserializer for
type {http://xml.apache.org/axis/}Void 

All of my operations that do not return void seem to be working just fine.
Is this an Axis bug, or do I need to do something special to "massage" the
WSDL or WSDD to get this to work?  I am using Axis 1.1.  Any help would be
greatly appreciated!
Regards,
Sabrina

Mime
View raw message