Hello, I read the thread "Send direct XML rather than using Java classes" and followed the example at http://users.skynet.be/pascalbotte/rcx-ws-doc/saajpost.htm in order to create a jsp page that tests a webservice deployed with axis2.
I am getting this exception: org.apache.axis2.AxisFault: The [action] cannot be processed at the receiver. at org.apache.axis2.addressing.AddressingFaultsHelper.triggerAddressingFault(AddressingFaultsHelper.java:373) at org.apache.axis2.addressing.AddressingFaultsHelper.triggerActionNotSupportedFault(AddressingFaultsHelper.java:336) at org.apache.axis2.handlers.addressing.AddressingValidationHandler.checkAction(AddressingValidationHandler.java:149) at org.apache.axis2.handlers.addressing.AddressingValidationHandler.invoke(AddressingValidationHandler.java:55) at org.apache.axis2.engine.Phase.invoke(Phase.java:317) at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:264) at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:163) at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275) at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131) at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:544) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689) at java.lang.Thread.run(Thread.java:619) On the other hand, when testing the same code in a main function instead of the jsp, it works fine. Here is the code: String str = "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:pm=\"http://www.digitel.com.ve/PM_S0004\"> <soapenv:Header/> <soapenv:Body> <pm:MobileLineStateForRechargeUpdateRequest> <searchMSISDN>584122949996</searchMSISDN> <targetStatus>2</targetStatus> </pm:MobileLineStateForRechargeUpdateRequest> </soapenv:Body></soapenv:Envelope>"; PrintStream out = System.out; try { // Create the connection javax.xml.soap.SOAPConnectionFactory scf = javax.xml.soap.SOAPConnectionFactory.newInstance(); javax.xml.soap.SOAPConnection conn = scf.createConnection(); // Create message javax.xml.soap.MessageFactory mf = javax.xml.soap.MessageFactory.newInstance(); javax.xml.soap.SOAPMessage msg = mf.createMessage(); // Object for message parts javax.xml.soap.SOAPPart sp = msg.getSOAPPart(); javax.xml.transform.stream.StreamSource prepMsg = new javax.xml.transform.stream.StreamSource( new java.io.StringReader(str)); sp.setContent(prepMsg); //headers javax.xml.soap.MimeHeaders hd = msg.getMimeHeaders(); hd.addHeader("SOAPAction", "http://integra.la/digitel/ws/linestate/WSMobileLineStateForRechargeUpdate/mobileLineStateForRechargeUpdate"); // Save message msg.saveChanges(); // View input out.println("\n Soap request:\n"); msg.writeTo(out); out.println(); // Send String urlval = "http://localhost:8080/WebServicesATC/services/WSMobileLineStateForRechargeUpdate"; javax.xml.soap.SOAPMessage rp = conn.call(msg, urlval); // View the output out.println("\nXML response\n"); // Create transformer javax.xml.transform.TransformerFactory tff = javax.xml.transform.TransformerFactory.newInstance(); javax.xml.transform.Transformer tf = tff.newTransformer(); // Get reply content javax.xml.transform.Source sc = rp.getSOAPPart().getContent(); // Set output transformation javax.xml.transform.stream.StreamResult result = new javax.xml.transform.stream.StreamResult(out); tf.transform(sc, result); out.println(); // Close connection conn.close(); } catch (Exception e) { out.println(e.getMessage()); out.println(e); } I enabled soapmonitor and the standalone (main function, not jsp) is received and responded correctly as expected, but the jsp doesn't receive any request. I believe that the request never arrives to the service. What could be the problem? I am using jdk 1.6.0_05 in both tomcat and standalone versions. Tomcat 5.5.25 Axis2-1.4 Thanks for your help. On Monday 23 June 2008 04:58:02 am Jacky Rymasz-Maillot wrote: > Re hello.. ;) > Ok just to say i found out my problem. > Following this example > http://users.skynet.be/pascalbotte/rcx-ws-doc/saajpost.htm, I added those 2 > lines and now it works with jre1.5 and 1.6. > > MimeHeaders hd = msg.getMimeHeaders(); > hd.addHeader("SOAPAction", urlOfMyAction); > > Thx to all > > Jack > > -----Message d'origine----- > De : Jacky Rymasz-Maillot [mailto:[EMAIL PROTECTED] > Envoyé : lundi 23 juin 2008 10:06 > À : Martin; axis-user@ws.apache.org > Objet : RE: Send direct XML rather than using Java classes > > Hello, > > I'm not using AS8.2. > My Client application is an applet (It can also be delivered to customer > as a standalone application) sending request to a server application > deployed on Tomcat 5.5.12. Both are using Axis 1.4 to communicate and both > have been deployed and compiled with jdk1.5.06. > > It would be very too restrictive to tell users to use jre1.5 or to > manipulate jars (since most of them don't even know what is JRE or Java or > JDK) > > I keep searching info about that on Internet but still haven't found a > solution. > > Jack > > > > > -----Message d'origine----- > De : Martin [mailto:[EMAIL PROTECTED] > Envoyé : dimanche 22 juin 2008 02:21 > À : axis-user@ws.apache.org; Jacky Rymasz-Maillot > Objet : Re: Send direct XML rather than using Java classes > > I assume you're using AS 8.2 ? > There is an open bug with SAAJ 1.3 in JDK 8 which suggests > > 1. saaj jar files must be placed in the AS 8.2 EE's classpath via the Admin > Console. (details to follow) > 2. saaj system properties must be set in AS via the Admin Console. (details > to follow) > 3. saaj jar files must be in the java runtime env for SR clients (details > to follow) > > http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6463868 > > Martin > ----- Original Message ----- > > From: "Anne Thomas Manes" <[EMAIL PROTECTED]> > To: <axis-user@ws.apache.org> > Sent: Saturday, June 21, 2008 7:29 AM > Subject: Re: Send direct XML rather than using Java classes > > > I believe that JDK6 includes Sun's implementation of SAAJ, which might > be slightly different from Axis. I recommend you search for Sun's > documentation. > > Anne > > On Fri, Jun 20, 2008 at 5:36 AM, Jacky Rymasz-Maillot > > <[EMAIL PROTECTED]> wrote: > > Hello again. > > I created a client sending Axis request XML using SAAJ as explained into > > the link. > > I developed my client with Eclipse with JDK1.5 and everything works fine. > > > > My problem now is that when my client runs with JRE1.6, I have this > > response: > > <?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 > > xmlns:ns1="http://xml.apache.org/axis/">ns1:Client.NoSOAPAction</faultcod > >e> <faultstring>no SOAPAction header!</faultstring> > > <detail> > > <ns2:hostname > > xmlns:ns2="http://xml.apache.org/axis/">qa4201.fr.webraska.com</ns2:hostn > >ame> </detail> > > </soapenv:Fault> > > </soapenv:Body> > > </soapenv:Envelope> > > > > I have to force my client to use JDK1.5 to make it work fine. > > Is there a way so that my client can be run with JDK1.5 or above (jre1.6 > > for ex)? > > > > Thx, > > > > Jack > > > > > > > > > > -----Message d'origine----- > > De : Jacky Rymasz-Maillot > > Envoyé : mardi 17 juin 2008 09:45 > > À : axis-user@ws.apache.org > > Objet : RE: Send direct XML rather than using Java classes > > > > Thanks alot. > > It works fine ;) > > > > Jack > > > > -----Message d'origine----- > > De : Anne Thomas Manes [mailto:[EMAIL PROTECTED] > > Envoyé : lundi 16 juin 2008 19:31 > > À : axis-user@ws.apache.org > > Objet : Re: Send direct XML rather than using Java classes > > > > Use the SAAJ API. See > > http://users.skynet.be/pascalbotte/rcx-ws-doc/saajpost.htm for > > samples. > > > > Anne > > > > On Mon, Jun 16, 2008 at 11:04 AM, Jacky Rymasz-Maillot > > > > <[EMAIL PROTECTED]> wrote: > >> I am using actually Axis 1.4. > >> Is it still possible? If so, where can I find an example? > >> Thank you for all your answer ;) > >> > >> Jack > >> > >> -----Message d'origine----- > >> De : Paul Fremantle [mailto:[EMAIL PROTECTED] > >> Envoyé : lundi 16 juin 2008 16:36 > >> À : axis-user@ws.apache.org > >> Objet : Re: Send direct XML rather than using Java classes > >> > >> Jacky > >> > >> Sure. If you use Axis2 it was designed this way. The Java classes > >> model is actually just a separate layer on top of the core XML > >> messaging layer. > >> > >> You just need to look at the ServiceClient API. The XML is represented > >> in Axis2 as an OMElement. > >> > >> Paul > >> > >> 2008/6/16 Jacky Rymasz-Maillot <[EMAIL PROTECTED]>: > >>> Hello, > >>> > >>> > >>> > >>> I would like to know if it is possible to send a WSDL request directly > >>> without using Java classes to create the request. > >>> > >>> Let's say I want to create a WSDL request (XML format) into a text > >>> editor > >>> and send the resulting String to my server without using the generated > >>> Java > >>> classes from Axis. > >>> > >>> > >>> > >>> What I want looks like that but for SOAP: > >>> > >>> http://users.skynet.be/pascalbotte/rcx-ws-doc/xmlpost.htm > >>> > >>> > >>> > >>> Is it possible? > >>> > >>> > >>> > >>> Thx > >>> > >>> > >>> > >>> Jack > >>> > >>> > >>> > >>> > >>> > >>> No virus found in this outgoing message. > >>> Checked by AVG. > >>> Version: 7.5.524 / Virus Database: 270.3.0/1504 - Release Date: > >>> 15/06/2008 > >>> 17:52 > >> > >> -- > >> Paul Fremantle > >> Co-Founder and CTO, WSO2 > >> Apache Synapse PMC Chair > >> OASIS WS-RX TC Co-chair > >> > >> blog: http://pzf.fremantle.org > >> [EMAIL PROTECTED] > >> > >> "Oxygenating the Web Service Platform", www.wso2.com > >> > >> --------------------------------------------------------------------- > >> To unsubscribe, e-mail: [EMAIL PROTECTED] > >> For additional commands, e-mail: [EMAIL PROTECTED] > >> > >> > >> No virus found in this incoming message. > >> Checked by AVG. > >> Version: 7.5.524 / Virus Database: 270.3.0/1504 - Release Date: > >> 15/06/2008 17:52 > >> > >> > >> No virus found in this outgoing message. > >> Checked by AVG. > >> Version: 7.5.524 / Virus Database: 270.3.0/1504 - Release Date: > >> 15/06/2008 17:52 > >> > >> > >> --------------------------------------------------------------------- > >> 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] > > > > > > No virus found in this incoming message. > > Checked by AVG. > > Version: 7.5.524 / Virus Database: 270.3.0/1504 - Release Date: > > 15/06/2008 17:52 > > > > > > No virus found in this outgoing message. > > Checked by AVG. > > Version: 7.5.524 / Virus Database: 270.3.0/1504 - Release Date: > > 15/06/2008 17:52 > > > > > > No virus found in this outgoing message. > > Checked by AVG. > > Version: 7.5.524 / Virus Database: 270.4.1/1510 - Release Date: > > 19/06/2008 15:21 > > > > > > --------------------------------------------------------------------- > > 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] > > > > No virus found in this incoming message. > Checked by AVG. > Version: 7.5.524 / Virus Database: 270.4.1/1513 - Release Date: 22/06/2008 > 07:52 > > > No virus found in this outgoing message. > Checked by AVG. > Version: 7.5.524 / Virus Database: 270.4.1/1513 - Release Date: 22/06/2008 > 07:52 > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > No virus found in this incoming message. > Checked by AVG. > Version: 7.5.524 / Virus Database: 270.4.1/1513 - Release Date: 22/06/2008 > 07:52 > > > No virus found in this outgoing message. > Checked by AVG. > Version: 7.5.524 / Virus Database: 270.4.1/1513 - Release Date: 22/06/2008 > 07:52 > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] -- Ing. David Ojeda Integra Consultores Caracas, Venezuela --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]