Hi Rhimbo,
I have been setting the return type on the OperationDesc using the following QNames.
In this example the "com.acme.service.soap.Employee" bean is being returned.
new javax.xml.namespace.QName ( "http://soap.service.acme.com", "Employee" ) ) ;
For primitive types
new javax.xml.namespace.QName ( "http://www.w3.org/2001/XMLSchema", "int" ) ) ;
new javax.xml.namespace.QName ( "http://www.w3.org/2001/XMLSchema", "long" ) ) ;
new javax.xml.namespace.QName ( "http://www.w3.org/2001/XMLSchema", "float" ) ) ;
new javax.xml.namespace.QName ( "http://www.w3.org/2001/XMLSchema", "double" ) ) ;
new javax.xml.namespace.QName ( "http://www.w3.org/2001/XMLSchema", "boolean" ) ) ;
new javax.xml.namespace.QName ( "http://www.w3.org/2001/XMLSchema", "base64Binary" ) ) ;
new javax.xml.namespace.QName ( "http://www.w3.org/2001/XMLSchema", "string" ) ) ;
-----Original Message-----
From: Rhimbo [mailto:[EMAIL PROTECTED]]
Sent: Friday, 14 April 2006 3:18 AM
To: Axis users
Subject: How to set return type with QName in DII client?
Can anyone point me to a _good_ explanation of QName? Specifically,
I'm having trouble setting the return type for a call to a web
service client that returns a Java Bean.
A web service end point returns an instance of "Session", which is
an interface I defined. Actually it returns an instance of
"PlayerSession", which is a Java Bean that implements the "Session"
interface.
I'm trying this:
String myEndpoint = "http://localhost:8080/axis/services/....."
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(new java.net.URL(myEndpoint));
call.setOperationName("getSession");
call.addParameter(new QName("uid"),
new QName("int"),
ParameterMode.IN);
Integer i1 = new Integer(100);
call.setReturnType(new QName("Session")); <--------
call.invoke(new QName("getSession"), new Object [] {i1});
The line at "<---" is giving me trouble. What do I enter here?
The org.apache.axis.client.Call Javadoc for
setReturnType(QName type)
says
type - QName of the return value type.
(not terribly useful).
The Javadoc for
setReturnType(QName xmlType,
java.lang.Class javaType)
says
xmlType - - QName of the data type of the return value
javaType - - Java class of the return value
Hmm. What is the QName? What is the "local part" and what is
the namespace URI?
When I execute my client, I get the following exception:
; nested exception is:
org.xml.sax.SAXParseException: Premature end of file.
Can anyone point me to some good documentation, something other
than the W3C "Namespaces in XML" document?
Thanks,
V
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
