Hi..
Please help to resolve this error. I'm missing something but what I don't know.
I'm using xfire 1.4, tomcat 5
When trying to invoke a method in my webservice, I'm getting the following
error:
SEVERE: Error:prefix cannot be "null" when creating a QName
org.codehaus.xfire.fault.XFireFault: prefix cannot be "null" when creating a
QName
at
org.codehaus.xfire.fault.Soap11FaultSerializer.readMessage(Soap11FaultSerializer.java:31)
at
org.codehaus.xfire.fault.SoapFaultSerializer.readMessage(SoapFaultSerializer.java:28)
at
org.codehaus.xfire.soap.handler.ReadHeadersHandler.checkForFault(ReadHeadersHandler.java:111)
at
org.codehaus.xfire.soap.handler.ReadHeadersHandler.invoke(ReadHeadersHandler.java:67)
at org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:131)
at org.codehaus.xfire.client.Client.onReceive(Client.java:387)
at
org.codehaus.xfire.transport.http.HttpChannel.sendViaClient(HttpChannel.java:139)
at org.codehaus.xfire.transport.http.HttpChannel.send(HttpChannel.java:48)
at org.codehaus.xfire.handler.OutMessageSender.invoke(OutMessageSender.java:26)
at org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:131)
at org.codehaus.xfire.client.Invocation.invoke(Invocation.java:75)
at org.codehaus.xfire.client.Client.invoke(Client.java:335)
at org.codehaus.xfire.client.Client.invoke(Client.java:349)
at com.imetrik.ims.console.Console.actionPerformed(Console.java:156)
client:
Client client1 = new Client(new
URL("http://localhost:8080/ldap/services/ldapservice?WSDL"));
client1.invoke("login", new Object[]{username, password});
It is a simple service to authenticate users.
java code:
package com.imetrik.ims.webservice;
public interface LdapService{
public boolean login(String username, String password);
}
the implementation :
public boolean login(String username, String password) {
// TODO Auto-generated method stub
boolean success = false;
if(username != null && username.length() > 0 && password != null &&
password.length() > 0){
if(username.equalsIgnoreCase("test") && password.equalsIgnoreCase("test"))
success = true;
System.out.println("inside login username = "+username +" password = " +
password );
}
return success;
}
my service.xml:
<beans xmlns="http://xfire.codehaus.org/config/1.0">
<service>
<name>ldapservice</name>
<namespace>ldapservice</namespace>
<serviceClass>com.imetrik.ims.webservice.LdapService</serviceClass>
<implementationClass>com.imetrik.ims.webservice.LdapServiceImpl</implementationClass>
</service>
</beans>
Thank you in advance