Folks,

Has no one encountered this problem calling a service end point that
takes no arguments??  

Here is the code called from my DII client:


    try
      {
        Service service = new org.apache.axis.client.Service();
        Call call = (Call) service.createCall();

        URL endpointURL = new URL(sessionEndpoint);
        call.setTargetEndpointAddress(endpointURL);

        QName opQName = new QName(sessionEndpoint, "returnSession");

        call.setOperationName("returnSession");
        call.removeAllParameters();

        QName returnType = new QName(sessionEndpoint, 
                                     "PlayerSession");
        Class cl = PlayerSession.class; 

        BeanSerializerFactory bsf = 
          new BeanSerializerFactory(cl, returnType);
        BeanDeserializerFactory bdf = 
          new BeanDeserializerFactory(cl, returnType);

        call.registerTypeMapping(cl, returnType, bsf, bdf);
        call.setReturnType(new QName("PlayerSession"));
        

        Object [] args = new Object [] {1}; 


        // How to invoke when there are no arguments? 
        Object result = call.invoke(args);

      }
    catch (Exception ex)
      {
        System.out.println(ex.getMessage());
        ex.printStackTrace();
      }
  


Here is the exception I get:

No parameters specified to the Call object!  You must call addParameter()
for all parameters if you have called setReturnType().
AxisFault
 faultCode:
{http://schemas.xmlsoap.org/soap/envelope/}Server.generalException
 faultSubcode:
 faultString: No parameters specified to the Call object!  You must call
addParameter() for all parameters if you have called setReturnType().
 faultActor:
 faultNode:
 faultDetail:
        {http://xml.apache.org/axis/}stackTrace:No parameters specified
to the Call object!  You must call addParameter() for all parameters if
you have called setReturnType().


But if I make the call using the "void Call.invoke()" API with no 
args like this:

     call.invoke()

I get this exception:

java.lang.NullPointerException
        at org.apache.axis.client.Call.invoke(Call.java:2695)
        at FamilyJaxClient.returnSession(FamilyJaxClient.java:392)
        at FamilyJaxClient.run(FamilyJaxClient.java:43)
        at FamilyJaxClient.main(FamilyJaxClient.java:461)



I found the following link on an Apache developer list mail archive.

http://mail-archives.apache.org/mod_mbox/ws-axis-dev/200203.mbox/[EMAIL 
PROTECTED]

Can't tell if the exchange means this is a bug?  


So how do you call a web service that takes no arguments?  

Thanks,

Vartan




__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

Reply via email to