This isn't the area I typically work in, but since you've posted three times I'll try and help. I don't use soap 1.2 on anything. But perhaps we can try a few things and see where that gets us.
When you go to http://localhost:8080/axis2/ in the browser, does listServices show the LDAPQueryService ? Have you tried looking at the soap 1.2 tests in the current svn, modules/integration/target/test-classes/SOAP12Testing ? Have you tried an axis2 client and setting the soap action manually via Options.setAction() ? With an axis2 client, have you verified that the 1.2 SOAPFactory is being used via SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI.equals(soapVersionURI) ? Look at the source of ServiceClient.getSOAPFactory , it may give you a clue. To answer your: How does Axis-Engine determine which method to invoke? Its done by Relection, the implementation dependent on the MessageReceiver you use. Which one are you using? The general idea is: AxisService --> set ServiceClass --> AxisOperation axisOp = new OutInAxisOperation(QName operationName) --> axisOp.setMessageReceiver(messageReceiver) --> AxisService.addOperation(axisOp)
From there, AbstractMessageReceiver loads your service class, and then
goes thru its sub class implementation and reflects until it finds your method, then invokes it. Look at the source of your particular MessageReceiver defined in your services.xml for more info. HTH, Robert http://www.braziloutsource.com/ On 7/18/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
Sorry for this being the third Post, but I didn't get any replies. Could someone please give me any hint what's going on. How does Axis-Engine determine which method to invoke? Which parameters are evaluated and what is the order? Thanks for your time Bille -----Ursprüngliche Nachricht----- Von: [EMAIL PROTECTED] Gesendet: 03.07.06 02:07:07 An: [email protected] Betreff: [axis2] Error while invoking the service with SOAP1.2 messages Hi to the list, I have a service-implementation, that is a code-generated skeleton. My client uses no stubs, just the plain AXIOM API. The service works fine with SOAP1.1 but if the Client switches to SOAP1.2 I get an AxisFault: Operation Not found EPR is http://localhost:8080/axis2/services/LDAPQueryService and WSA Action = null There was a similar post to this symptoms a few weeks ago which ended in the hint to use Axis2 1.0 [http://marc.theaimsgroup.com/?l=axis-user&m=114716535915463&w=2=] I use Axis2 1.0 - nightly build of 07.06.2006 Below is the working SOAP1.1 requestmessage and my client implementation (just the relevant parts). I also attached the debug-output of Axis for both SOAP1.1 and SOAP 1.2 - if this might help. Does anyone has any ideas why this happens? Thanks for your time Bille ------------------------------------------------------- SOAP1.1-Request which works: <?xml version='1.0' encoding='utf-8'?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header /> <soapenv:Body> <sbr:getGroupsRequest xmlns:sbr="http://localhost:8080/axis2/services/LDAPQueryService/xsd"> <sbr:dir>Wert1</sbr:dir> </sbr:getGroupsRequest> </soapenv:Body> </soapenv:Envelope> ------------------------------------------------------- Client :: switching to SOAP 1.2 with this 2 changes (see the comments) ... EndpointReference targetEpr = new EndpointReference("http://localhost:8080/axis2/services/LDAPQueryService"); // OMFactory fac = OMAbstractFactory.getOMFactory(); // decomment for SOAP 1.1 SOAPFactory fac = OMAbstractFactory.getSOAP12Factory(); // comment for SOAP 1.1 OMNamespace ns = fac.createOMNamespace("http://localhost:8080/axis2/services/LDAPQueryService/xsd", "sbr"); OMElement payload = fac.createOMElement("getGroupsRequest", ns); OMElement param1 = fac.createOMElement("dir", ns); param1.setText("Wert1"); payload.addChild(param1); try { Options options = new Options(); options.setTo(targetEpr); //options.setTransportInProtocol(Constants.TRANSPORT_HTTP); options.setAction("urn:getGroups"); options.setSoapVersionURI(SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI); // comment for SOAP 1.1 ServiceClient client = new ServiceClient(); client.setOptions(options); OMElement response = client.sendReceive(payload); } ... ______________________________________________________________ Verschicken Sie romantische, coole und witzige Bilder per SMS! Jetzt bei WEB.DE FreeMail: http://f.web.de/?mc=021193 --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
