Anne,

For what its worth, I experienced the exact same issue with document
literal....but not with rpc.

I assumed it was part of the spec.

Thanks,
Bob



|---------+----------------------------->
|         |           "Anne Thomas      |
|         |           Manes"            |
|         |           <[EMAIL PROTECTED]>  |
|         |                             |
|         |           06/15/2004 06:44  |
|         |           PM                |
|         |           Please respond to |
|         |           axis-user         |
|         |                             |
|---------+----------------------------->
  
>-----------------------------------------------------------------------------------------------------------------------------|
  |                                                                                    
                                         |
  |      To:       <[EMAIL PROTECTED]>                                                 
                                   |
  |      cc:                                                                           
                                         |
  |      Subject:  RE: Problems returning void in document-literal operation           
                                         |
  
>-----------------------------------------------------------------------------------------------------------------------------|




Yeah -- I think this must be a bug. If you want to send or receive a void,
then you should specify no message part, and Axis should be able to deal
with it. Please file a bug report.

Anne

-----Original Message-----
From: Liller, Sabrina L. CIV Sys Eng Branch 1B 9512
[mailto:[EMAIL PROTECTED]
Sent: Monday, June 14, 2004 1:16 PM
To: [EMAIL PROTECTED]
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:[EMAIL PROTECTED]
Sent: Monday, June 14, 2004 12:50
To: '[EMAIL PROTECTED]'
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:[EMAIL PROTECTED]
Sent: Monday, June 14, 2004 11:44 AM
To: [EMAIL PROTECTED]
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




Reply via email to