You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-user@axis.apache.org by Thomas Hentschel Lund <th...@trylleskoven.dk> on 2004/05/25 20:56:18 UTC
Java client works, C++ fails against same Java server and same wsdl
Hi,
I've been pulling my hairs on this one all day, and cannot get past the
problems alone.
I'm evaluating axis and gsoap (maybe more) for having a c++ client
accessing a JBoss webservice (created using the jboss.net package and
xdoclet).
My efforts with axis have until now proven wonderfully easy with a java
client (to test the service), but the c++ client bombs out.
I created both the java and c++ stubs using the same jar files and the
same wsdl file (generated by JBoss 3.2.3 and 3.2.4rc2).
When running the c++ client I get
execution break
m_MsgSize == 0, so return NULL
every time I try to access the server.
The server has the following error in its log
No such operation 'validateLogin'
at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:301)
at org.apache.axis.message.RPCElement.getParams(RPCElement.java:347)
at
org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:184)
at
org.jboss.net.axis.server.EJBProvider.processMessage(EJBProvider.java:260)
And returns this
2004-05-25 15:49:46,677 DEBUG [org.apache.axis.SOAPPart] Exit:
SOAPPart::getAsString(): <?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<soapenv:Fault>
<faultcode>Server.userException</faultcode>
<faultstring>No such operation 'validateLogin'</faultstring>
<detail/>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>
The java client operates without any problems.
The method I try to invoke is:
/**
* @ejb.interface-method
* @ejb.permission unchecked="true"
* @ejb.transaction type="Required"
* @jboss-net.web-method
*/
public boolean validateLogin(String userName, String password) {
try {
UserLocal user =
UserUtil.getLocalHome().findByUsername(userName);
if (user.getPassword().equals(password)) {
// Password ok
return true;
}
} catch (NamingException e) {
e.printStackTrace();
} catch (FinderException e) {
// Username not valid
return false;
}
return false;
}
Does anyone have any clues what so ever? Any pointers are appreciated.
Else I will have to abandon axis as a solution. Google and the maillist
archives didnt give me any clues.
I'm running the server on a Linux machine, client (both java and c++) on
a win xp. I also tried running the server on the same windows box with same problem. Its the latest axis 1.1.1 for C++ I try to use.
Thanks
/Thomas