Re: [Resin-interest] org.apache.axis2.AxisFault: org.xml.sax.SAXParseException: The prefix ns2 for element ns2:requestUser is not bound.
--- Mattias Jiderhamn [EMAIL PROTECTED] wrote: Emil Ong wrote (2007-11-03 06:09): --- Huitang Li [EMAIL PROTECTED] wrote: All the above is based on what is left in my brain for this matter, and probably I have not referred to the resin API names perfectly. However, I debugged through the resin source code for this matter a while ago. Hope that you will get the idea. Thanks so much for the clear explanation! I was able to fix this very quickly because of your help. Look for the fix to be in the next snapshot and release. Emil, will this be merged back into 3.0 (where we are seeing the same problem)? Hi Mattias, Unfortunately this change will not be merged back into 3.0. One option is to use the StAX RI or another StAX implementation and set the system properties javax.xml.stream.XMLInputFactory and javax.xml.stream.XMLOutputFactory. Another option is to repackage the 3.1 implementation and drop it into your 3.0 installation. All of the relevant classes are in the com.caucho.xml.stream package. Take care, Emil Emil Ong Software Engineer Caucho Technology, Inc. Tel. (858) 456-0300 mailto:[EMAIL PROTECTED] Caucho: Reliable Open Source -- Resin: application server -- Quercus: PHP in Java -- Hessian Web Services ___ resin-interest mailing list resin-interest@caucho.com http://maillist.caucho.com/mailman/listinfo/resin-interest
Re: [Resin-interest] org.apache.axis2.AxisFault: org.xml.sax.SAXParseException: The prefix ns2 for element ns2:requestUser is not bound.
Emil Ong wrote (2007-11-03 06:09): --- Huitang Li [EMAIL PROTECTED] wrote: All the above is based on what is left in my brain for this matter, and probably I have not referred to the resin API names perfectly. However, I debugged through the resin source code for this matter a while ago. Hope that you will get the idea. Thanks so much for the clear explanation! I was able to fix this very quickly because of your help. Look for the fix to be in the next snapshot and release. Emil, will this be merged back into 3.0 (where we are seeing the same problem)? /Mattias ___ resin-interest mailing list resin-interest@caucho.com http://maillist.caucho.com/mailman/listinfo/resin-interest
Re: [Resin-interest] org.apache.axis2.AxisFault: org.xml.sax.SAXParseException: The prefix ns2 for element ns2:requestUser is not bound.
It sounds great, and especially thanks for the update from resin developers. When this is solved, axis users will not need to manually modify the axis2-generated stub code. Looking forward to it ... Huitang Emil Ong wrote: --- Huitang Li [EMAIL PROTECTED] wrote: I found the cause of the problem by debugging the resin 3.1.3 source code. The problem is caused by the setPrefix() method in the class XMLStreamWriterImpl (the implementation class of XMLStreamWriter). Whenever this method is called, by default the namespace will not be included in generating the element. I did not look at the Axis2 implemention of this XMLStreamWriter yet. However, axis2 does not have this side effect when the setPrefix() is called. Not sure whether this is a bug for resin or not. It would be awesome if resin developers can consider this case when they modify XMLStreamWriterImpl class. Hi Huitang, Thanks for tracking this down for us. I think this is the same bug as this one: http://bugs.caucho.com/view.php?id=1989 but I couldn't reproduce it before. I'll take a look at the code and see if I can get this fixed for the next snapshot. Thanks again, Emil Emil Ong Software Engineer Caucho Technology, Inc. Tel. (858) 456-0300 mailto:[EMAIL PROTECTED] Caucho: Reliable Open Source -- Resin: application server -- Quercus: PHP in Java -- Hessian Web Services ___ resin-interest mailing list resin-interest@caucho.com http://maillist.caucho.com/mailman/listinfo/resin-interest ___ resin-interest mailing list resin-interest@caucho.com http://maillist.caucho.com/mailman/listinfo/resin-interest
Re: [Resin-interest] org.apache.axis2.AxisFault: org.xml.sax.SAXParseException: The prefix ns2 for element ns2:requestUser is not bound.
Anyone has the answer? I tested with a public accessible web service, and it has the same result. If you want to test it out, please see the web service http://www.tilisoft.com/ws/LocInfo/ZipCode.asmx You can get its wsdl here: http://www.tilisoft.com/ws/LocInfo/ZipCode.asmx?WSDL Follow the steps of Axis2 1.3 to generate axis adb client and then test the generated stub code. It runs ok if the code is not run in resin environment. The soap message incorrectly created in resin environment is: ?xml version=1.0 encoding=UTF-8? soapenv:Envelope xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/; soapenv:Body xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/; ns1:GetDistance == the namespace is missing when the code is run with resin in non-debugging mode. ... /soapenv:Body /soapenv:Envelope The soap message correctly created in resin remote-debugging or when the resin is not involved: ?xml version=1.0 encoding=UTF-8? soapenv:Envelope xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/; soapenv:Body xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/; ns1:GetDistance xmlns:ns1=http://www.tilisoft.com/ws/LocInfo/literalTypes;== The namespace is correctly put there in remote-debugging resin or non-resin environments. ... /soapenv:Body /soapenv:Envelope So, my question is: how can the soap message be created correctly in resin remote-debugging mode while it is incorrectly created when resin is not running in remote-debugging mode? Thanks. Huitang Li wrote: Hi, I created web service client based on a wsdl. If the web service client is run in resin 3.1.2 with jdk 1.5.0_10, it threw out the following exception: org.apache.axis2.AxisFault: org.xml.sax.SAXParseException: The prefix ns2 for element ns2:requestUser is not bound. at org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:486) at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:343) at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:389) at org.apache.axis2.description.OutInAxisOperationClient$NonBlockingInvocationWorker.run(OutInAxisOperation.java:414) at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665) at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690) at java.lang.Thread.run(Thread.java:595) However, when the web service client code is run in unit tests without the resin running. It works fine. I am not sure whether this exception is caused by resin or something else. I did google searches for this problem, and found the following posting, which means that it is more likely a server-related (or j2ee-related) issue. I do not know whether resin needs to fix something like it or not: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6509784 If you have experienced something like this before, please let me know your solution or your findings. Thanks in advance. ___ resin-interest mailing list resin-interest@caucho.com http://maillist.caucho.com/mailman/listinfo/resin-interest ___ resin-interest mailing list resin-interest@caucho.com http://maillist.caucho.com/mailman/listinfo/resin-interest