Unsubscribe
Unsubscribe
UNSUBSCRIBE
Re: Namespace problem Axis 1.2.1
Ah, I've just found out what the problem is. When we deploy the application, the first time we call the WSDL file its namespace is generated. Appearantly the request-url is used for the namespace generation. For example, if I call the WSDL with: http://some-url.com/somename//services/Service?WSDL The WSDL gets the following namespace: import namespace=http://some-url.com/somename//services/Service/ This seriously messes up our system..! Does anybody know a good solution to this? Is there a setting in Axis that strips the extra slashes while generating the namespace? Do newer versions filter the access slashes? (1.3?, 1.4?) Help please :) On Mon, Jul 14, 2008 at 9:49 AM, Roy van Rijn [EMAIL PROTECTED] wrote: Hi Axis users/devs, Since a couple of weeks I'm working on a old project which uses Axis 1.2.1. The big problem is we can't affort to upgrade to a more recent version, then we would have to do a awful lot of regression tests (just so you know). We are experiencing a namespace problem with this service. We haven't specified a specific namespace in the WSDD file so apperantly Axis dynamicly chooses a relevant namespace for us in the generated WSDL file. But on different machines and on different times the namespace changes! Its very strange behaviour and I've seen it happen after a reboot. Let me show some snippets: Before reboot: import namespace=http://some-url.com/profielen2/services/KennisnetProfielen/ After reboot: import namespace=http://some-url.com/profielen2//services/KennisnetProfielen/ Same WAR-file after some reboots on a different machine: import namespace=http://some-other-url.com/profielen2///services/KennisnetProfielen/ (notice the two and three forward-slashes after the 'profielen2' part!!) The client uses the URL of the webservice and asumes its the same as the namespace. And as you all probably know, the namespace must match 100%, so if the client browses to ..profielen2/services.. it can't find the webservice with the namespace ..profielen2//services... So a quick (and dirty) workaround was changing the client to ..profielen2//services because the URL is the same as a single slash, and the namespace was still correct. But we don't want to keep changing the configuration of the client if we reboot the server and the amount of slashes changes! Can anybody explain this behaviour? I sure can't... :-) I've been going through the code, but couldn't locate where this problem might originate from. And, second, does anybody know if setting the wsdlTargetNamespace parameter (forcing a namespace) might be a good idea? The problem with this idea is that we need to change the WSDD on all the enviroments (development/test/production) to make sure the URL is the same as the namespace. Or is there another way around this problem? Please send any ideas, we're getting desperate :-( Roy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: MTOM attachments larger than 2.1GB (Integer.MAX_VALUE?)
I have created an issue for this in Jira: https://issues.apache.org/jira/browse/AXIS2-3686 (I set fix version to 1.4, although I realize it might be too late. :-) ) Regards Roy Willy Haug -Original Message- From: Thilina Gunarathne [mailto:[EMAIL PROTECTED] Sent: 1. april 2008 00:29 To: axis-user@ws.apache.org Subject: Re: MTOM attachments larger than 2.1GB (Integer.MAX_VALUE?) Please log a Jira with all these details... I think the fix needs start from the FileAccessor getSize() onwards.. thanks, Thilina On Mon, Mar 31, 2008 at 12:01 PM, Andreas Veithen [EMAIL PROTECTED] wrote: Roy, This seems to be a limitation of AXIOM that uses the int type for all length variables in the org.apache.axiom.attachments.Attachments class and various other classes it depends on. Regards, Andreas Quoting Roy Willy Haug [EMAIL PROTECTED]: Hi, We have a well working file transfer service that works with files up to approximately 2.1 GB (probably Integer.MAX_VALUE: 2147483647 bytes?). When transferring even larger files, Axis2 fails with the following message: org.apache.axis2.AxisFault: Referenced Attachment not found in the MIME Message. ContentID:1.urn:uuid:[EMAIL PROTECTED] What happens is: The client transfers the complete file to the server. The server correctly caches the file in the attachmentDIR folder. The AxisFault is thrown. The server-side cached file have the exact same byte-length as the file the client sent, so every byte has been transferred. I am currently using Windows XP with NTFS and support for files much larger than 2.1 GB on both sides, Axis2 1.3, document-literal style, ADB, MTOM and caching to disk. Any ideas? The DataHandler that is supplied to the client stub is generated like this: FileDataSource datasource = new FileDataSource(localFile); dh = new DataHandler(datasource); Parts of my Axis2.xml file: parameter name=enableMTOMtrue/parameter parameter name=enableSwAfalse/parameter parameter name=cacheAttachmentstrue/parameter parameter name=attachmentDIRC:/TEMP/da_server_temp//parameter parameter name=sizeThreshold5/parameter Regards, Roy Willy Haug - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Thilina Gunarathne - http://thilinag.blogspot.com - 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]
RE: MTOM attachments larger than 2.1GB (Integer.MAX_VALUE?)
I followed Andreas Veithen's suggestions and created a linked issue in the WSCOMMONS project: https://issues.apache.org/jira/browse/WSCOMMONS-318 After downloading the AXIOM 1.2.5 source I found that the fix is straightforward: change the return type from int to long in the org.apache.axiom.attachments.Part.getSize() interface (and all other relevant places) and the transfer of 2.3GB attachments works well. (I used Axis2 1.3) Paul Fremantle suggested to cast the DataHandler to a FileDataSource and then rename the file. This is exactly what we do for files that are cached to disk by Axis2/AXIOM: if we read the DataHandler as usual the files would be written to disk twice (once by Axis2/AXIOM and once by our code). As long as the axis attachmentDir folder and the destination folder are on the same file system, the File.rename() works well. Thilina is right: the exception is thrown before we get to the DataHandler. Thanks to you all for your help and suggestions! Crossing my fingers to see the fix in Axis2 1.4... Regards, Roy Willy Haug -Original Message- From: Thilina Gunarathne [mailto:[EMAIL PROTECTED] Sent: 1. april 2008 14:00 To: axis-user@ws.apache.org Subject: Re: MTOM attachments larger than 2.1GB (Integer.MAX_VALUE?) Hi Paul, I don't think this is possible, cause looking at the following exception the failure is happening at the parser level.. It never returns a DataHandler... org.apache.axis2.AxisFault: Referenced Attachment not found in the MIME Message. ContentID:1.urn:uuid:[EMAIL PROTECTED] thanks, Thilina On Tue, Apr 1, 2008 at 3:33 AM, Paul Fremantle [EMAIL PROTECTED] wrote: I believe if the file is cached correctly you can work around this by not accessing the file via Axiom but simply casting the DataSource as a FileDataSource and then working on the file directly. Of course we still need to fix Axiom! DataHandler dataHandler = (DataHandler)omText.getDataHandler(); FileDataSource fileDataSource = (FileDataSource)dataHandler.getDataSource(); File file = fileDataSource.getFile(); file.renameTo(new File(MyFile.bin)); Paul On Tue, Apr 1, 2008 at 9:08 AM, Roy Willy Haug [EMAIL PROTECTED] wrote: I have created an issue for this in Jira: https://issues.apache.org/jira/browse/AXIS2-3686 (I set fix version to 1.4, although I realize it might be too late. :-) ) Regards Roy Willy Haug -Original Message- From: Thilina Gunarathne [mailto:[EMAIL PROTECTED] Sent: 1. april 2008 00:29 To: axis-user@ws.apache.org Subject: Re: MTOM attachments larger than 2.1GB (Integer.MAX_VALUE?) Please log a Jira with all these details... I think the fix needs start from the FileAccessor getSize() onwards.. thanks, Thilina On Mon, Mar 31, 2008 at 12:01 PM, Andreas Veithen [EMAIL PROTECTED] wrote: Roy, This seems to be a limitation of AXIOM that uses the int type for all length variables in the org.apache.axiom.attachments.Attachments class and various other classes it depends on. Regards, Andreas Quoting Roy Willy Haug [EMAIL PROTECTED]: Hi, We have a well working file transfer service that works with files up to approximately 2.1 GB (probably Integer.MAX_VALUE: 2147483647 bytes?). When transferring even larger files, Axis2 fails with the following message: org.apache.axis2.AxisFault: Referenced Attachment not found in the MIME Message. ContentID:1.urn:uuid:[EMAIL PROTECTED] What happens is: The client transfers the complete file to the server. The server correctly caches the file in the attachmentDIR folder. The AxisFault is thrown. The server-side cached file have the exact same byte-length as the file the client sent, so every byte has been transferred. I am currently using Windows XP with NTFS and support for files much larger than 2.1 GB on both sides, Axis2 1.3, document-literal style, ADB, MTOM and caching to disk. Any ideas? The DataHandler that is supplied to the client stub is generated like this: FileDataSource datasource = new FileDataSource(localFile); dh = new DataHandler(datasource); Parts of my Axis2.xml file
MTOM attachments larger than 2.1GB (Integer.MAX_VALUE?)
Hi, We have a well working file transfer service that works with files up to approximately 2.1 GB (probably Integer.MAX_VALUE: 2147483647 bytes?). When transferring even larger files, Axis2 fails with the following message: org.apache.axis2.AxisFault: Referenced Attachment not found in the MIME Message. ContentID:1.urn:uuid:[EMAIL PROTECTED] What happens is: The client transfers the complete file to the server. The server correctly caches the file in the attachmentDIR folder. The AxisFault is thrown. The server-side cached file have the exact same byte-length as the file the client sent, so every byte has been transferred. I am currently using Windows XP with NTFS and support for files much larger than 2.1 GB on both sides, Axis2 1.3, document-literal style, ADB, MTOM and caching to disk. Any ideas? The DataHandler that is supplied to the client stub is generated like this: FileDataSource datasource = new FileDataSource(localFile); dh = new DataHandler(datasource); Parts of my Axis2.xml file: parameter name=enableMTOMtrue/parameter parameter name=enableSwAfalse/parameter parameter name=cacheAttachmentstrue/parameter parameter name=attachmentDIRC:/TEMP/da_server_temp//parameter parameter name=sizeThreshold5/parameter Regards, Roy Willy Haug
Re: axis2.sh
[EMAIL PROTECTED] wrote: [...] The script fails during test operation when $arg or $prearg are null. Simply double quoting these variables solves this problem. I have fixed and attached the file with this email. Hopefully this gets added in the next release. Known problem: http://issues.apache.org/jira/browse/AXIS2-2716 Stephan Roy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [Axis2] How to log traces on the server side ?
Hi, Eran Chinthaka wrote: If you are fine with using System.out statements, then make sure you start Tomcat with catalina run. Rather than invoking startup.bat/sh goto bin folder and type catalina.bat/sh run. You will be able to see your system.out messages. Thanks Eran, this works just fine. Stephane Roy Alcatel-Lucent - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: An exception when porting from axis2 1.1.1 to axis 1.2
Wang, Hailong (NIH/CIT) [C] wrote: I replaced addressing-1.1.mar with addressing-1.2.mar, it works fine. So I guess the problem is addressing-1.2.mar. You may have a look at this: https://issues.apache.org/jira/browse/AXIS2-2758 Stephane Roy Alcatel-Lucent - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[Axis2] How to log traces on the server side ?
Hi, This must be a newbie question, anyway... I have an Axis2.1.2 web service deployed in Tomcat5.5. I would like to log some traces from my server for debug purposes. So in the code, I wrote: ... System.out.println(my debug trace); ... The problem is that I don't see these traces anywhere. I activated the logging mechanism for Axis2.1.2 and an axis2.log file is indeed created when Axis2 is started in Tomcat, but my traces are not logged into it. How can I put some traces in my source code to be able to debug my web service ? Is there a tutorial somewhere for this ? I searched the Web and found this tutorial 'How to Debug a Web Service?' (http://wso2.org/library/225). However I don't use Eclipse, so this is not helping much. Thanks in advance. Stephane Roy Alcatel-Lucent - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Problem with wsdl2java
neiroman neiroman wrote: Hello, I use Axis2 1.2 When I try to run wsdl2java I've got the follovving error [EMAIL PROTECTED]:/usr/lib/axis2 wsdl2java.sh -uri tmp.wsdl -ss -sd Using AXIS2_HOME: /usr/lib/axis2 Using JAVA_HOME: /usr/java/jdk1.6.0 /usr/lib/axis2/bin/axis2.sh: line 38: [: !=: unary operator expected Unrecognized option: -uri I believe I had the same problem when I started to use Axis2.1.2. I already posted a solution for this problem in a previous thread: http://marc.info/?l=axis-userm=11787015586w=2 You may take a look at it. Stephane Roy Alcatel-Lucent - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [Axis2] problem to display the WSDL in a browser in Axis2.1.2
Hi, I have more information about this problem. I have a scenario to reproduce the problem. Our web service is defined with a WSDL divided in three parts. First we have a concrete WSDL (defining the Service and the Binding). This WSDL imports an abstract WSDL (defining the PortType and the Messages). Finally the abstract WSDL imports a XSD Schema (defining the Types). I found out that the WSDL cannot be displayed in my browser because there is a *conflict* between two prefixes: In the concrete WSDL, we defined the prefix 'tns' for our namespace. The prefix 'tns' is also used in the abstract WSDL for another namespace. With Axis2.1.2, this situation prevents the WSDL to be displayed in the browser, whereas with Axis2.1.1.1, everything works fine. I changed one of the occurrences of the prefix 'tns' to 'tns2' and then Axis2.1.2 can display the WSDL in the browser, just fine. It seems that this is a regression of Axis2.1.2. If there is no JIRA bug already about this, I will open one. Stephane Roy Alcatel-Lucent Stephane Roy wrote: Hi, I noticed a problem with the latest release of Axis2 (2.1.2). Once my code is generated, compiled and deployed for the server side, I try to display the related WSDL in my browser, by clicking on the line of my service in the http://localhost:8080/axis2/services/listServices page. The page http://localhost:8080/axis2/services/myService?wsdl opens with an error: org.apache.axis2.AxisFault: WSDLException: faultCode=OTHER_ERROR: Can't find prefix for 'http://www.alcatel-lucent.com/wsp/ns/2007/04/16/3DN-01401/phonebookService'. Namespace prefixes must be set on the Definition object using the addNamespace(...) method. org.apache.axis2.description.AxisService.printWSDL(AxisService.java:850) org.apache.axis2.transport.http.ListingAgent.processListService(ListingAgent.java:221) org.apache.axis2.transport.http.AxisServlet.doGet(AxisServlet.java:225) javax.servlet.http.HttpServlet.service(HttpServlet.java:689) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) In Axis2.1.1.1, with the same WSDL, it worked fine. In Axis2.1.2, I tried to generate the code in adb mode, then in xmlbeans mode but I have the same problem. What bothers me is that the WSDL of the web service Version (http://localhost:8080/axis2/services/Version?wsdl), delivered with Axis2.1.2, can be displayed without error. I would like to know if someone had this kind of problem before. Is this behavior a known issue or a limitation of Axis2.1.2 ? Thanks in advance. Stephane Roy Alcatel-Lucent - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [Axis2] A hello World Example for Axis2 deployment
Hi Anil, A few days ago, I submitted a message on the mailing list about the problem to display the WSDL in the browser, with Axis2.1.2. The full message is there: http://marc.info/?l=axis-userm=117915706112761w=2 It seems you have found the solution for this problem. Could you tell me how you solved the problem ? Thanks in advance. Stephane Roy Alcatel-Lucent Anil Chukkapalli wrote: Glen I figured it out. Thanks Anil On 5/18/07, *Anil Chukkapalli* [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] wrote: Glen I tried it out using the admin utility and it still does not work, it shows the version service and i click on it i get the WSDL. It shows that my service is present but when i click on the service it shows the same error i described. There is little or not code that can cause a null pointer exception as it just echos back the string. I am trying to use your tutorial and i am getting the below error. BUILD FAILED C:\development\mywebservice\mywebservice\build.xml:15: taskdef class org.apache. axis2.tool.ant.AntCodegenTask cannot be found The only thing that i changed in the build.xml file is the property name of the lib.dir to point to my directory which contains all the dependencies that are needed for axis2. This is step 5 in your tutorial property name= lib.dir value=.\lib/ Thanks Anil On 5/17/07, *Glen Mazza* [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] wrote: No, I don't think so. 5.5 should be fine. Go back and place the axis2.war file into the Tomcat webapps directory. Can you access and log into the Axis2 Admin URL at http://localhost:8080/axis2/axis2-admin? (userid/pwd: admin/axis2)? For available services, does it show the Version service? The above is the next step to make sure is working correctly before worrying about the service archive (.aar) file. If the above is working correctly, try deploying your service archive (.aar file) using the admin app above instead of directly placing it in the webapps/axis2 folder. Glen Am Donnerstag, den 17.05.2007, 16:13 -0700 schrieb Anil Chukkapalli: Glen Thanks for taking time out to explain everything. I did validate the tomcat install before and executed the sample JSP applications. I am using Tomcat 5.5 instead of Tomcat 6.X as that is present on my deployment box. Can this be an issue. Thanks Anil On 5/17/07, Glen Mazza [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] wrote: Anil, Sorry you're having so many difficulties. Perhaps the tutorial you are using--and I had previously suggested, alas--isn't very good, as you are having too many problems getting it to work. A newbie-level tutorial should not be causing that much difficulty--it should be making things easy for you. There are more tutorial options--just by looking at the list I had given you, or googling axis tutorial, may help. But what I'm also seeing is that more detective work is needed. What we first need to know is: Does your Tomcat servlet container work properly? Forget about the AXIS WAR file--first run the Tomcat servlet and JSP samples installed by default (at http://localhost:8080)--are http://localhost:8080%29--are you getting the same/similar errors below, or is everything running fine? If the former, forget about Axis and go to the Tomcat user list until the Tomcat samples are working. If the latter, then the problem is with the tutorial you are using, again you may need to switch to another, or read three or four tutorials until you can get things working. Keep working at it. Yet another option for you might be the quickstart guide: http://ws.apache.org/axis2/1_2/quickstartguide.html. Finally, if you ever figure out what the problem was with the WSO2 article--assuming there was a problem with it--please email the author privately letting him/her know so the tutorial can be fixed. This way future newbies won't have to experience the same troubles
Re: [Axis2] problem with client execution in xmlbeans mode
Hi Davanum, It appears that I found the solution to my problem. By analysing the web service example of the Axis2 tutorial, I noticed that the WSDL included this definition: elementFormDefault=qualified Since I didn't have it in my web service, I added this definition in my XSD and the NullPointerException doesn't not occurr anymore ! Hope this info will be useful to the community. Stephane Roy Alcatel-Lucent Davanum Srinivas wrote: Stephane, We've multiple reports of this now..with no JIRA's. Could you please create a new issue and upload your wsdl/xsd and sample code? thanks, dims On 5/14/07, Stephane Roy [EMAIL PROTECTED] wrote: Hi, I have difficulties to create a web service with the xmlbeans mode. I tried the following scenario in Axis2.1.1.1 and Axis2.1.2 but I have the same error each time. 1) I generate the server part with the command: $AXIS2_HOME/bin/wsdl2java.sh -uri myService.wsdl -p my.package -o /tmp/my/dir/server -d xmlbeans -s -wv 1.1 -ss -sd 2) I compile and deploy the server in Tomcat 3) I generate the client part with the command: $AXIS2_HOME/bin/wsdl2java.sh -uri myService.wsdl -p my.package -o /tmp/my/dir/client -d xmlbeans -s 4) I compile and start the client and I got the following error as soon as the client tries to call any method of the web service: java.lang.NullPointerException at com.ctc.wstx.sw.BaseNsStreamWriter.doWriteDefaultNs(BaseNsStreamWriter.java:529) at com.ctc.wstx.sw.SimpleNsStreamWriter.writeDefaultNamespace(SimpleNsStreamWriter.java:113) at com.ctc.wstx.sw.SimpleNsStreamWriter.writeNamespace(SimpleNsStreamWriter.java:121) at org.apache.axiom.om.impl.MTOMXMLStreamWriter.writeNamespace(MTOMXMLStreamWriter.java:148) at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serializeElement(StreamingOMSerializer.java:238) at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serializeNode(StreamingOMSerializer.java:71) at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:54) at org.apache.axiom.om.impl.util.OMSerializerUtil.serializeByPullStream(OMSerializerUtil.java:490) at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:783) at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:808) at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.serializeInternally(SOAPEnvelopeImpl.java:234) at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:222) at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:808) at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:418) at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:55) at org.apache.axis2.transport.http.AxisRequestEntity.writeRequest(AxisRequestEntity.java:84) at org.apache.commons.httpclient.methods.EntityEnclosingMethod.writeRequestBody(EntityEnclosingMethod.java:495) at org.apache.commons.httpclient.HttpMethodBase.writeRequest(HttpMethodBase.java:1973) at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:993) at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:397) at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:170) at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396) at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346) at org.apache.axis2.transport.http.AbstractHTTPSender.executeMethod(AbstractHTTPSender.java:558) at org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:176) at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:73) at org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:305) at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:201) at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:452) at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:330) at org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:294) at my.package.myServiceStub.myMethod(myServiceStub.java:xxx) I would like to know if someone had this kind of problem before. What did I do wrong ? Thanks in advance. Stephane Roy Alcatel-Lucent - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [Axis2] MissingResourceException on execution client with Axis2.1.2
It appears that I found the solution to my problem. By analysing the web service example of the Axis2 tutorial, I noticed that the WSDL included this definition: elementFormDefault=qualified Since I didn't have it in my web service, I added this definition in my XSD and the MissingResourceException doesn't not occurr anymore ! Hope this info will be useful to the community. Stephane Roy Alcatel-Lucent Michele Mazzucco wrote: Stephane, I faced a similar problem some time ago (it was related to the addressing module). Try to set the log level for axis2 to trace. Michele On Wed, 2007-05-16 at 11:19 +0200, Stephane Roy wrote: Hi, Here's my problem. I developed a web service with Axis2.1.1.1 in adb mode and everything works fine. I tried to migrate this web service in Axis2.1.2 but it's not working. I generated the code in adb mode for the server and deployed it. I generated the code in adb mode for the client and I managed to compile the code. Now when I start the client, I have this error: org.apache.axis2.AxisFault: java.util.MissingResourceException: Can't find resource for bundle org.apache.axis2.i18n.ProjectResourceBundle, key spec.FAULT_ACTION_NOT_SUPPORTED_REASON at org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:434) at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:373) at org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:294) at my.package.myServiceStub.myMethod(myServiceStub.java:173) ... I would like to know if someone had this kind of problem before. Since the problem is not present with Axis2.1.1.1, is this behavior a known issue or a limitation of Axis2.1.2 ? Thanks in advance. Stephane Roy Alcatel-Lucent - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [Axis2] Incomplete code generation with wsdl2java, in adb mode
Hi Amila, Please could let me know the JIRA reference of the bug related to this problem ? Thus, I could know when the problem is fixed in Axis2. Thanks in advance. Stephane Roy Alcatel-Lucent Amila Suriarachchi wrote: Any way this is a bug and I fixed it for the trunk. On 5/10/07, *Amila Suriarachchi* [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] wrote: have you put elementFormDefault=qualified in your schma? On 5/10/07, *Stephane Roy* [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] wrote: Hi, The XSD schema used by my WSDL defines the following types: ... xsd:complexType name=typeA xsd:sequence xsd:element name=typeB xsd:simpleType xsd:restriction base=xsd:positiveInteger xsd:minExclusive value=01/ xsd:maxInclusive value=99/ /xsd:restriction /xsd:simpleType /xsd:element /xsd:sequence /xsd:complexType ... In short, typeA uses typeB, typeB being defined within typeA. I generated the code for the server in adb mode with the command $AXIS2_HOME/bin/wsdl2java.sh -uri myService.wsdl -p my.package -o /tmp/my/dir/server -d adb -s -wv 1.1 -ss -sd Then in /tmp/my/dir/server/src, I have a java file for typeB, for which the package name is not set ('package ;'). As a result, the java code cannot be compiled. I have this problem with Axis2.1.1.1 and with the latest release (Axis2.1.2). However, if I change my XSD schema, to have something like this: ... xsd:simpleType name=typeB xsd:restriction base=xsd:positiveInteger xsd:minExclusive value=01/ xsd:maxInclusive value=99/ /xsd:restriction /xsd:simpleType xsd:complexType name=typeA xsd:sequence xsd:element name=elementB type=typeB /xsd:element /xsd:sequence /xsd:complexType ... In short, typeB is now defined at the top-level in the XSD schema and typeA defines elementB which uses a reference to typeB. Now, the code generation in adb mode works fine and the java files compile. I would like to know if someone had this kind of problem before. Is this behavior a known issue or a limitation of Axis2.1.x ? Thanks in advance. Stephane Roy Alcatel-Lucent -- Amila Suriarachchi, WSO2 Inc. -- Amila Suriarachchi, WSO2 Inc. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [Axis2] A hello World Example for Axis2 deployment
Glen Mazza wrote: Could you possibly be using the (older) Crimson parser instead of Xerces? IIRC Crimson has problems with namespaces--which may account for the error that you are getting. I believe Crimson is the default with JDK 1.4. I'm using Java 1.5 and Tomcat5.5. With Axis2.1.1.1, the WSDL appears correctly but with Axis2.1.2, I have the WSDLException instead. In addition, to simplify your problem, you may wish to run the simple POJO example on the quickstart page[1] and see if you can get the WSDL to appear with *that* example. If not, I would forget your code for the moment and instead concentrate on getting the simple POJO case to work. I will try that. [1] http://ws.apache.org/axis2/1_2/quickstartguide.html#deploy Am Montag, den 21.05.2007, 15:39 +0200 schrieb Stephane Roy: Hi Anil, A few days ago, I submitted a message on the mailing list about the problem to display the WSDL in the browser, with Axis2.1.2. The full message is there: http://marc.info/?l=axis-userm=117915706112761w=2 It seems you have found the solution for this problem. Could you tell me how you solved the problem ? Thanks in advance. Stephane Roy Alcatel-Lucent Anil Chukkapalli wrote: Glen I figured it out. Thanks Anil On 5/18/07, *Anil Chukkapalli* [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] wrote: Glen I tried it out using the admin utility and it still does not work, it shows the version service and i click on it i get the WSDL. It shows that my service is present but when i click on the service it shows the same error i described. There is little or not code that can cause a null pointer exception as it just echos back the string. I am trying to use your tutorial and i am getting the below error. BUILD FAILED C:\development\mywebservice\mywebservice\build.xml:15: taskdef class org.apache. axis2.tool.ant.AntCodegenTask cannot be found The only thing that i changed in the build.xml file is the property name of the lib.dir to point to my directory which contains all the dependencies that are needed for axis2. This is step 5 in your tutorial property name= lib.dir value=.\lib/ Thanks Anil On 5/17/07, *Glen Mazza* [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] wrote: No, I don't think so. 5.5 should be fine. Go back and place the axis2.war file into the Tomcat webapps directory. Can you access and log into the Axis2 Admin URL at http://localhost:8080/axis2/axis2-admin? (userid/pwd: admin/axis2)? For available services, does it show the Version service? The above is the next step to make sure is working correctly before worrying about the service archive (.aar) file. If the above is working correctly, try deploying your service archive (.aar file) using the admin app above instead of directly placing it in the webapps/axis2 folder. Glen Am Donnerstag, den 17.05.2007, 16:13 -0700 schrieb Anil Chukkapalli: Glen Thanks for taking time out to explain everything. I did validate the tomcat install before and executed the sample JSP applications. I am using Tomcat 5.5 instead of Tomcat 6.X as that is present on my deployment box. Can this be an issue. Thanks Anil On 5/17/07, Glen Mazza [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] wrote: Anil, Sorry you're having so many difficulties. Perhaps the tutorial you are using--and I had previously suggested, alas--isn't very good, as you are having too many problems getting it to work. A newbie-level tutorial should not be causing that much difficulty--it should be making things easy for you. There are more tutorial options--just by looking at the list I had given you, or googling axis tutorial, may help. But what I'm also seeing is that more detective work is needed. What we first need to know is: Does your Tomcat servlet container work properly? Forget about the AXIS WAR file--first run the Tomcat servlet and JSP samples installed by default (at http://localhost:8080)--are http://localhost:8080%29--are you getting the same/similar errors below, or is everything running fine? If the former, forget about Axis and go to the Tomcat user list until the Tomcat samples are working. If the latter, then the problem
[Axis2] MissingResourceException on execution client with Axis2.1.2
Hi, Here's my problem. I developed a web service with Axis2.1.1.1 in adb mode and everything works fine. I tried to migrate this web service in Axis2.1.2 but it's not working. I generated the code in adb mode for the server and deployed it. I generated the code in adb mode for the client and I managed to compile the code. Now when I start the client, I have this error: org.apache.axis2.AxisFault: java.util.MissingResourceException: Can't find resource for bundle org.apache.axis2.i18n.ProjectResourceBundle, key spec.FAULT_ACTION_NOT_SUPPORTED_REASON at org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:434) at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:373) at org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:294) at my.package.myServiceStub.myMethod(myServiceStub.java:173) ... I would like to know if someone had this kind of problem before. Since the problem is not present with Axis2.1.1.1, is this behavior a known issue or a limitation of Axis2.1.2 ? Thanks in advance. Stephane Roy Alcatel-Lucent - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [Axis2] MissingResourceException on execution client with Axis2.1.2
Hi Michele, Michele Mazzucco wrote: Stephane, I faced a similar problem some time ago (it was related to the addressing module). Try to set the log level for axis2 to trace. Michele I'm quite new to Axis2. How do I set the log level for axis2 to trace ? I guess I have to modify the file tomcat/webapps/axis2/WEB-INF/classes/log4j.properties but I'm not familiar with the syntax. Thanks in advance for your help. Stephane Roy Alcatel-Lucent - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [Axis2] MissingResourceException on execution client with Axis2.1.2
Michele Mazzucco wrote: Stephane, in commons-logging.properties enable the last line (log4j logger) and in log4j.properties set the first one to: log4j.rootCategory=TRACE, CONSOLE, LOGFILE (be aware that it produces *a lot* of logs) Michele Thanks for the details. Stephane Roy Alcatel-Lucent - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [Axis2] Incomplete code generation with wsdl2java, in adb mode
Hi Amila, Thanks for your quick reply. Please could let me know the reference of the bug related to this problem ? Thanks in advance. Stephane Roy Alcatel-Lucent Amila Suriarachchi wrote: Any way this is a bug and I fixed it for the trunk. On 5/10/07, *Amila Suriarachchi* [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] wrote: have you put elementFormDefault=qualified in your schma? On 5/10/07, *Stephane Roy* [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] wrote: Hi, The XSD schema used by my WSDL defines the following types: ... xsd:complexType name=typeA xsd:sequence xsd:element name=typeB xsd:simpleType xsd:restriction base=xsd:positiveInteger xsd:minExclusive value=01/ xsd:maxInclusive value=99/ /xsd:restriction /xsd:simpleType /xsd:element /xsd:sequence /xsd:complexType ... In short, typeA uses typeB, typeB being defined within typeA. I generated the code for the server in adb mode with the command $AXIS2_HOME/bin/wsdl2java.sh -uri myService.wsdl -p my.package -o /tmp/my/dir/server -d adb -s -wv 1.1 -ss -sd Then in /tmp/my/dir/server/src, I have a java file for typeB, for which the package name is not set ('package ;'). As a result, the java code cannot be compiled. I have this problem with Axis2.1.1.1 and with the latest release (Axis2.1.2). However, if I change my XSD schema, to have something like this: ... xsd:simpleType name=typeB xsd:restriction base=xsd:positiveInteger xsd:minExclusive value=01/ xsd:maxInclusive value=99/ /xsd:restriction /xsd:simpleType xsd:complexType name=typeA xsd:sequence xsd:element name=elementB type=typeB /xsd:element /xsd:sequence /xsd:complexType ... In short, typeB is now defined at the top-level in the XSD schema and typeA defines elementB which uses a reference to typeB. Now, the code generation in adb mode works fine and the java files compile. I would like to know if someone had this kind of problem before. Is this behavior a known issue or a limitation of Axis2.1.x ? Thanks in advance. Stephane Roy Alcatel-Lucent -- Amila Suriarachchi, WSO2 Inc. -- Amila Suriarachchi, WSO2 Inc. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[Axis2] problem to display the WSDL in a browser in Axis2.1.2
Hi, I noticed a problem with the latest release of Axis2 (2.1.2). Once my code is generated, compiled and deployed for the server side, I try to display the related WSDL in my browser, by clicking on the line of my service in the http://localhost:8080/axis2/services/listServices page. The page http://localhost:8080/axis2/services/myService?wsdl opens with an error: org.apache.axis2.AxisFault: WSDLException: faultCode=OTHER_ERROR: Can't find prefix for 'http://www.alcatel-lucent.com/wsp/ns/2007/04/16/3DN-01401/phonebookService'. Namespace prefixes must be set on the Definition object using the addNamespace(...) method. org.apache.axis2.description.AxisService.printWSDL(AxisService.java:850) org.apache.axis2.transport.http.ListingAgent.processListService(ListingAgent.java:221) org.apache.axis2.transport.http.AxisServlet.doGet(AxisServlet.java:225) javax.servlet.http.HttpServlet.service(HttpServlet.java:689) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) In Axis2.1.1.1, with the same WSDL, it worked fine. In Axis2.1.2, I tried to generate the code in adb mode, then in xmlbeans mode but I have the same problem. What bothers me is that the WSDL of the web service Version (http://localhost:8080/axis2/services/Version?wsdl), delivered with Axis2.1.2, can be displayed without error. I would like to know if someone had this kind of problem before. Is this behavior a known issue or a limitation of Axis2.1.2 ? Thanks in advance. Stephane Roy Alcatel-Lucent - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[Axis2] problem with client execution in xmlbeans mode
Hi, I have difficulties to create a web service with the xmlbeans mode. I tried the following scenario in Axis2.1.1.1 and Axis2.1.2 but I have the same error each time. 1) I generate the server part with the command: $AXIS2_HOME/bin/wsdl2java.sh -uri myService.wsdl -p my.package -o /tmp/my/dir/server -d xmlbeans -s -wv 1.1 -ss -sd 2) I compile and deploy the server in Tomcat 3) I generate the client part with the command: $AXIS2_HOME/bin/wsdl2java.sh -uri myService.wsdl -p my.package -o /tmp/my/dir/client -d xmlbeans -s 4) I compile and start the client and I got the following error as soon as the client tries to call any method of the web service: java.lang.NullPointerException at com.ctc.wstx.sw.BaseNsStreamWriter.doWriteDefaultNs(BaseNsStreamWriter.java:529) at com.ctc.wstx.sw.SimpleNsStreamWriter.writeDefaultNamespace(SimpleNsStreamWriter.java:113) at com.ctc.wstx.sw.SimpleNsStreamWriter.writeNamespace(SimpleNsStreamWriter.java:121) at org.apache.axiom.om.impl.MTOMXMLStreamWriter.writeNamespace(MTOMXMLStreamWriter.java:148) at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serializeElement(StreamingOMSerializer.java:238) at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serializeNode(StreamingOMSerializer.java:71) at org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:54) at org.apache.axiom.om.impl.util.OMSerializerUtil.serializeByPullStream(OMSerializerUtil.java:490) at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:783) at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:808) at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.serializeInternally(SOAPEnvelopeImpl.java:234) at org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:222) at org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:808) at org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:418) at org.apache.axis2.transport.http.SOAPMessageFormatter.writeTo(SOAPMessageFormatter.java:55) at org.apache.axis2.transport.http.AxisRequestEntity.writeRequest(AxisRequestEntity.java:84) at org.apache.commons.httpclient.methods.EntityEnclosingMethod.writeRequestBody(EntityEnclosingMethod.java:495) at org.apache.commons.httpclient.HttpMethodBase.writeRequest(HttpMethodBase.java:1973) at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:993) at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:397) at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:170) at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396) at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346) at org.apache.axis2.transport.http.AbstractHTTPSender.executeMethod(AbstractHTTPSender.java:558) at org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:176) at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:73) at org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:305) at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:201) at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:452) at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:330) at org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:294) at my.package.myServiceStub.myMethod(myServiceStub.java:xxx) I would like to know if someone had this kind of problem before. What did I do wrong ? Thanks in advance. Stephane Roy Alcatel-Lucent - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[Axis2] Incomplete code generation with wsdl2java, in adb mode
Hi, The XSD schema used by my WSDL defines the following types: ... xsd:complexType name=typeA xsd:sequence xsd:element name=typeB xsd:simpleType xsd:restriction base=xsd:positiveInteger xsd:minExclusive value=01/ xsd:maxInclusive value=99/ /xsd:restriction /xsd:simpleType /xsd:element /xsd:sequence /xsd:complexType ... In short, typeA uses typeB, typeB being defined within typeA. I generated the code for the server in adb mode with the command $AXIS2_HOME/bin/wsdl2java.sh -uri myService.wsdl -p my.package -o /tmp/my/dir/server -d adb -s -wv 1.1 -ss -sd Then in /tmp/my/dir/server/src, I have a java file for typeB, for which the package name is not set ('package ;'). As a result, the java code cannot be compiled. I have this problem with Axis2.1.1.1 and with the latest release (Axis2.1.2). However, if I change my XSD schema, to have something like this: ... xsd:simpleType name=typeB xsd:restriction base=xsd:positiveInteger xsd:minExclusive value=01/ xsd:maxInclusive value=99/ /xsd:restriction /xsd:simpleType xsd:complexType name=typeA xsd:sequence xsd:element name=elementB type=typeB /xsd:element /xsd:sequence /xsd:complexType ... In short, typeB is now defined at the top-level in the XSD schema and typeA defines elementB which uses a reference to typeB. Now, the code generation in adb mode works fine and the java files compile. I would like to know if someone had this kind of problem before. Is this behavior a known issue or a limitation of Axis2.1.x ? Thanks in advance. Stephane Roy Alcatel-Lucent - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [axis2] error generating skeletons from WSDL 2.0
The solution I found, is simply to apply the following modifications (already mentioned by Hans-Ulrich Klein) in the axis2.sh file: line 38 and 43, add double quote on the parameters: 38: if [ $arg != -classpath ] [ $arg != -cp ] [ $prearg != -classpath ] [ $prearg != -cp ] 43: if [ $prearg=-classpath ] || [ $prearg=-cp ] Then the command wsdl2java.sh works fine. Stephan Roy Alcatel-Lucent I am receiving an identical error. Just doing wsdl2java.sh -uri will generate the problem described above. (I'm trying it with just wsdl2java.sh -uri pathToMyWsdl and getting the same error.) Is there a fix for this? Thanks. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [axis2] error generating skeletons from WSDL 2.0
I'm working on Linux. I start the tool in a tcsh with the command: $AXIS2_HOME/bin/wsdl2java.sh -uri ... Hope this helps. Stephan Roy Alcatel-Lucent Amila Suriarachchi wrote: What is the OS you use? Could you try -- sh wsdl2java.sh On 5/9/07, *Stephane Roy* [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] wrote: The solution I found, is simply to apply the following modifications (already mentioned by Hans-Ulrich Klein) in the axis2.sh file: line 38 and 43, add double quote on the parameters: 38: if [ $arg != -classpath ] [ $arg != -cp ] [ $prearg != -classpath ] [ $prearg != -cp ] 43: if [ $prearg=-classpath ] || [ $prearg=-cp ] Then the command wsdl2java.sh works fine. Stephan Roy Alcatel-Lucent I am receiving an identical error. Just doing wsdl2java.sh -uri will generate the problem described above. (I'm trying it with just wsdl2java.sh -uri pathToMyWsdl and getting the same error.) Is there a fix for this? Thanks. - To unsubscribe, e-mail: [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] -- Amila Suriarachchi, WSO2 Inc. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
ntlm authentication and Axis 2
Hi, I am using Axis 2 to communicate with a server which has ntlm authentication. When I am invoking web service methods which do not involve any attachment, it is working fine. Using TCP packet capturing, I can even see the NTLM authentication happening via challenge/response handshaking. One problem that I see here is that for every method invocation the ntlm authentication is occuring which is a kind of redundancy. I think this is happening because pre-authentication feature is not built into Axis 2 or common httpclient. But the more serious problem is happening when I am trying to post data as attachment. The entire SOAP request is sent as a multipart MIME-encoded request. The first part is the SOAP envelope, and the second part is the attachment. But as it seems to me the ntlm authentication handshaking is getting into way and the client is not responding accordingly and is continuing with its multipart post. I am using Axis 2-1.1.1 version. The authentication code used is like below: HttpTransportProperties.Authenticator auth = new HttpTransportProperties.Authenticator(); auth.setUsername(Admin); auth.setPassword(password); auth.setRealm(); auth.setDomain(); auth.setHost(ip-addr); auth.setPort(80); options.setProperty(HTTPConstants.AUTHENTICATE, auth); options.setProperty(HTTPConstants.HEADER_CONNECTION_KEEPALIVE,Constants.VALUE_TRUE); options.setTo(targetEPR); options.setTransportInProtocol(Constants.TRANSPORT_HTTP); options.setProperty(Constants.Configuration.ENABLE_MTOM,Constants.VALUE_TRUE); options.setProperty(Constants.Configuration.CONTENT_TYPE, Constants.BASE_64_CONTENT_QNAME); ServiceClient servClient = new ServiceClient(); servClient.setOptions(options); OMElement result = servClient.sendReceive(method); I am new to Axis and authentication. Any suggestion would be of great help. _ Windows Live Spaces is here! It’s easy to create your own personal Web site. http://spaces.live.com/?mkt=en-in
Re: Axis2: Code Generator BUG? - Create list/Array of objects - IMPORTANT
I have seen that example on the net. But my list/array is of another object. Not a native data type.If I do a complextype then this object is not created.I any case, it creates an array of OMElement[] and not an Object[]. As for creating list vs array, i think it would depend on the tool. If it can create one you can get a list.I am using the nightly build of 08/07/2006. Anybody has got any idea???It is a simple case, I have a manager Class which has member of array of Employee objects who are subordinates to him. On 8/11/06, Ajith Ranabahu [EMAIL PROTECTED] wrote: Hi,As far as generating code is concerned you *cannot* generate a listfield, even if you have a the maxOccurs set to unbound! it is alwaysan array!As for this schema it is not right. What you should be doing is the following xsd:element name=bList type=B minOccurs=1 maxOccurs=unbounded/xsd:complexType name=Bxsd:sequencexsd:element name=str type=xsd:string/ /xsd:sequence/xsd:complexTypeAjithOn 8/11/06, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: All I need an object which contains a member variable, which is list of another object. Class A { //list of object B private java.util.List bList; } Class B { private String str; } How do I represent this in WSDL. I am using WSDL2Java commandline. Since I am using the tool I expect to get a java.util.List This is how my current wsdl looks... xsd:element name=bList type=B minOccurs=1 maxOccurs=unbounded/ xsd:element name=B xsd:complexType xsd:sequence xsd:element name=str type=xsd:string/ /xsd:sequence /xsd:complexType /xsd:element But when I generate the code inside class A, I get protected org.apache.axiom.om.OMElement[] localBList ; why an array, and why OMElement? Can you tell me what I am missing. ___ Debasish Dutta Roy NITAS Ph: 617-871-3033 _ CONFIDENTIALITY NOTICE The information contained in this e-mail message is intended only for the exclusive use of the individual or entity named above and may contain information that is privileged, confidential or exempt from disclosure under applicable law. If the reader of this message is not the intended recipient, or the employee or agent responsible for delivery of the message to the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please notify the sender immediately by e-mail and delete the material from any computer.Thank you.--Ajith Ranabahu-To unsubscribe, e-mail: [EMAIL PROTECTED]For additional commands, e-mail: [EMAIL PROTECTED]
thread-safe problems with Rampart
:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:465) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301) at org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:363) at org.apache.catalina.core.StandardHostValve.status(StandardHostValve.java:284) at org.apache.catalina.core.StandardHostValve.throwable(StandardHostValve.java:228) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:134) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:833) at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:639) at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1285) at java.lang.Thread.run(Thread.java:595) Thanks in advance, / Roy __ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Axis Fault : xxxService not found
Hello all,I am facing an error with axis 1.3. I have deployed an EJB service which works fine. Sometimes without making any changes or redeployments i get this error from the axis engine:?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 faultcodesoapenv:Server.userException/faultcode faultstringjavax.naming.NameNotFoundException: FrssService not found/faultstring detail ns1:hostname xmlns:ns1="http://xml.apache.org/axis/"localhost/ns1:hostname /detail /soapenv:Fault /soapenv:Body /soapenv:EnvelopeThe problem usually solved by restarting the server (sun application server), undeploying and redeploying the application. Do you know the possible causes of this error?Regards,Roy Χρησιμοποιείτε Yahoo! Βαρεθήκατε τα ενοχλητικά μηνύ ματα (spam); Το Yahoo! Mail διαθέτει την καλύτερη δυνατή προστασία κατά των ενοχλητικών μηνυμάτων http://login.yahoo.com/config/mail?.intl=gr
Min lentgh and max length of an input string parameter
Hello all,Does anyone know a way to declare max and min size of a string in a input parameter in a wsdl generated with the Java2WSDL tool? Can i declare something in the deploy.wsdd file?Thanks,Roy Χρησιμοποιείτε Yahoo! Βαρεθήκατε τα ενοχλητικά μηνύ ματα (spam); Το Yahoo! Mail διαθέτει την καλύτερη δυνατή προστασία κατά των ενοχλητικών μηνυμάτων http://login.yahoo.com/config/mail?.intl=gr
Re: [axis2] design issues on client authentication
Hi Bille, Ruchith. I was facing more or less the same issue. I have a Webservice and a client application which should access it securely. I am using rampart and WSS4J, and am using a *keystore* in a similar way to that of the security sample of Axis2 1.0. One thing troubled me though - the keystore is stored in the client secUtil.jar, and if this JAR file becomes available to unwanted parties (JARs seem to be prone to become too broadly available as people view these as executables...) then they can open the keystore easily (as its password is stored in a property file in the JAR itself) and retrieve the keys/certificates from there (as the password of the users is either hard-coded in a Java class or read from a property file). If there is one thing I don't like it's cleartext passwords in property files or in the code (which can easily be decompiled...). I have solved it this way: - In my database (which is available to both the client application and the webservice code) I have created an account table which has as columns a username and a cleartext password. There are 3 rows in this table, for users service, client and keystore. - I have implemented a PasswordStore class which access this table (using hibernate), and then encrypts the cleartext password using the standard JCrypt.java implementation (and a salt string which is hidden somewhere... secret :). - I have implemented a crypto.provider class which inherits from WSS4J Merlin. The only difference is that this class reads the keystore password not from a preperty file but using the PasswordStore (so using the keystore account in the database). - Also the PasswordCallback uses this PasswordStore implementation for the passwords of the client and service users. - of course, the keystores (for both the client and service) were created using the encrypted passwords. So this way, even if my security JAR becomes available to unwanted parties, there is nothing they can do because they still need the passwords. And if on the other hand they get access to the database so the cleartext passwords are compromised, they still need both the keystore AND the salt for the password encryption. It is maybe a slightly paranoidic solution, but it works... Ruchith, Werner - I would be happy to hear your idea about it. If required, I can provide the code mentioned above. Nice weekend all, / Roy --- [EMAIL PROTECTED] wrote: Hi Ruchith, thanks for your advice. I read about rampart (WSS4j) but didn't get in too deep. Using plain text password isn't suitable for my goals. As I said, this password could be directly accessed by other parties, who should definitely not use my service. I thought about using a combination of a password an the hashed URL of the Client as a password-mechanism. But this solution doesn't satisfy me either. Do you have any details for the password digest and the callback solution; it didn't get really clear to me. Any further ideas and / or links are highly appreciated Thanks a lot Bille -Urspr�ngliche Nachricht- Von: axis-user@ws.apache.org Gesendet: 02.06.06 09:55:47 An: axis-user@ws.apache.org Betreff: Re: [axis2] design issues on client authentication Hi Bille, How about using rampart module to enable UsernameToken authentication on that particular service. This will force all your clients to send requests with a UsernameToken. With this approach you can limit your configurations to the service only. If you use a plain text password with the service then you can carryout the authentication at the service impl itself. Or else if you use the PasswordDigest mechanism you can handle handle multiple user auth in the PasswordCallbackHandler that you specify in the configuration. If you are interested in this option and if this you want more clarifications , I can provide you a further explanations. Thanks, Ruchith On 6/2/06, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: Hello to the list, I'm interested how you would deal such a scenario: I have a web service which is meant to run in an Intranet-Environment in our company. There will be different Intranet-Websites and other applications which will use the service. My aim is to limit the use of the service to special clients; say application A and D and WebSite X. How can I achieve this without using some hard coded keys which I register at the service. I'm against those keys because some code is accessable through a Content Management System, so it would be easy to copy the keys und use it in some not registered application. I hope I put it somehow clearly into words. Thanks in adavance for any hints and comments Bille __ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
CORBA UNKNOWN 1398079690 exception
) at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55) at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:161) at java.security.AccessController.doPrivileged(Native Method) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:263) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:225) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:132) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:933) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:185) at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:653) at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:534) at com.sun.enterprise.web.connector.grizzly.ProcessorTask.doTask(ProcessorTask.java:403) at com.sun.enterprise.web.connector.grizzly.WorkerThread.run(WorkerThread.java:55)Caused by: java.lang.ClassCastException at com.sun.corba.ee.impl.presentation.rmi.DynamicMethodMarshallerImpl$14.write(DynamicMethodMarshallerImpl.java:338) at com.sun.corba.ee.impl.presentation.rmi.DynamicMethodMarshallerImpl.writeResult(DynamicMethodMarshallerImpl.java:430) at com.sun.corba.ee.impl.presentation.rmi.ReflectiveTie._invoke(ReflectiveTie.java:127) at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatchToServant(CorbaServerRequestDispatcherImpl.java:648) at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:192) ... 53 more--END server-side stack trace-- vmcid: SUN minor code: 202 completed: Maybe at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:221) at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:128) at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087) at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1712) at org.apache.crimson.parser.Parser2.content(Parser2.java:1963) at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691) at org.apache.crimson.parser.Parser2.content(Parser2.java:1963) at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691) at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:667) at org.apache.crimson.parser.Parser2.parse(Parser2.java:337) at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:448) at javax.xml.parsers.SAXParser.parse(SAXParser.java:345) at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227) at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696) at org.apache.axis.Message.getSOAPEnvelope(Message.java:424) at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62) at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206) at org.apache.axis.client.Call.invokeEngine(Call.java:2765) at org.apache.axis.client.Call.invoke(Call.java:2748) at org.apache.axis.client.Call.invoke(Call.java:2424) at org.apache.axis.client.Call.invoke(Call.java:2347) at org.apache.axis.client.Call.invoke(Call.java:1804) at com.test.testInfoWebServiceSoapBindingStub.getInfoFromtestInfo(testInfoWebServiceSoapBindingStub.java:235) at com.test.client.GetInfo.main(GetInfo.java:19)---When I return a non complex type object i get a right response. This problem occurs only on complex type methods. Have you ever noticed an error like this?Regards,Roy Χρησιμοποιείτε Yahoo! Βαρεθήκατε τα ενοχλητικά μηνύ ματα (spam); Το Yahoo! Mail διαθέτει την καλύτερη δυνατή προστασία κατά των ενοχλητικών μηνυμάτων http://login.yahoo.com/config/mail?.intl=gr
Re: [axis2] design issues on client authentication
Sorry Bille but I don't really understand what you are looking for... The database connection works for all Intranet application, they can in principle all access the database. If you are talking about extranet or internet clients, then if you want your service to to be called from everywhere how do you want to secure it? You can always give your clients some secret (whatever that is, password of certificate or whatever), but if you cannot trust them not to share that secret with others then you can never be sure that you get a message from them. If you can trust them to that extent then you should exchange certificates (like the security sample of Axis2 1.0) - let them sign the message to your service with THEIR private key and encrypt it with YOUR public key (certificate). You will sign the outgoing message with YOUR private key and encrypt it with THEIR public key. But a minimum trust relationship is always required. Security is not a matter of magic... HTH, / Roy --- [EMAIL PROTECTED] wrote: Thanks Roy for your thoughts, in my opinion your solution is of course better than clear passwords. The thing I don't like about it is the DB-connection which is required for all the client-applications. This takes away the smooth thing about the service being called from everywhere. The problem is I don't have a better idea ;) Any other hints are appreciated Bille -Urspr�ngliche Nachricht- Von: Reshef Roy [EMAIL PROTECTED] Gesendet: 02.06.06 15:32:47 An: wss4j-dev@ws.apache.org Betreff: Re: [axis2] design issues on client authentication Hi Bille, Ruchith. I was facing more or less the same issue. I have a Webservice and a client application which should access it securely. I am using rampart and WSS4J, and am using a *keystore* in a similar way to that of the security sample of Axis2 1.0. One thing troubled me though - the keystore is stored in the client secUtil.jar, and if this JAR file becomes available to unwanted parties (JARs seem to be prone to become too broadly available as people view these as executables...) then they can open the keystore easily (as its password is stored in a property file in the JAR itself) and retrieve the keys/certificates from there (as the password of the users is either hard-coded in a Java class or read from a property file). If there is one thing I don't like it's cleartext passwords in property files or in the code (which can easily be decompiled...). I have solved it this way: - In my database (which is available to both the client application and the webservice code) I have created an account table which has as columns a username and a cleartext password. There are 3 rows in this table, for users service, client and keystore. - I have implemented a PasswordStore class which access this table (using hibernate), and then encrypts the cleartext password using the standard JCrypt.java implementation (and a salt string which is hidden somewhere... secret :). - I have implemented a crypto.provider class which inherits from WSS4J Merlin. The only difference is that this class reads the keystore password not from a preperty file but using the PasswordStore (so using the keystore account in the database). - Also the PasswordCallback uses this PasswordStore implementation for the passwords of the client and service users. - of course, the keystores (for both the client and service) were created using the encrypted passwords. So this way, even if my security JAR becomes available to unwanted parties, there is nothing they can do because they still need the passwords. And if on the other hand they get access to the database so the cleartext passwords are compromised, they still need both the keystore AND the salt for the password encryption. It is maybe a slightly paranoidic solution, but it works... Ruchith, Werner - I would be happy to hear your idea about it. If required, I can provide the code mentioned above. Nice weekend all, / Roy --- [EMAIL PROTECTED] wrote: Hi Ruchith, thanks for your advice. I read about rampart (WSS4j) but didn't get in too deep. Using plain text password isn't suitable for my goals. As I said, this password could be directly accessed by other parties, who should definitely not use my service. I thought about using a combination of a password an the hashed URL of the Client as a password-mechanism. But this solution doesn't satisfy me either. Do you have any details for the password digest and the callback solution; it didn't get really clear to me. Any further ideas and / or links are highly appreciated Thanks a lot Bille -Urspr�ngliche Nachricht- Von: axis-user@ws.apache.org Gesendet: 02.06.06 09:55:47 An: axis-user@ws.apache.org
Re: Complex type problem
Dear Anne,I think that i have declared it here: beanMapping xmlns:ns=" http://ejb.test.com/rd" qname="ns:RequestData" languageSpecificType="java:com.test.ejb.rd.RequestData"/I tried to set my complex type only with a String ant an int var. It worked. I tried it with 2 Strings and both Strings take the same value (the value of the first string) when i call the service. In the Soap monitor i can see that both string are sent with different values. Have you ever any similar problems?Anne Thomas Manes [EMAIL PROTECTED] έγραψε: Roy,You have an error in your WSDD:parameter qname="pns:reqData" xmlns:pns=" http://test.com/ejb/" type="ns:RequestData" xmlns:tns="http://www.w3.org/2001/XMLSchema " /You have not declared the "ns" namespace.AnneOn 5/26/06, Suyog Gandhi [EMAIL PROTECTED] wrote: Check out the issue AXIS2-770 , may be it is realted to this. I faced problems about serialization of complex types. 2nd level of nesting is not working. Once I re-structure wsdl for only 1 level of nesting, it started working. e.gfollowing complex type does NOTwork: ( Gives null for Name and Value for the attributes. ) WMemberInfo ---|- ID ---|- Attrbutes [] -|- Name -|- Value Following complex type works. WMemberInfo |- ID |- Attr1Name |- Attr1 Value |- Attr2 Name |- Attr2 Value But this is a crude workaround till the time problem is fixed. Hope this helps. Suyog -Original Message-From: robert lazarski [mailto:[EMAIL PROTECTED]]Sent: Friday, May 26, 2006 9:36 AMTo: axis-user@ws.apache.orgSubject: Re: Complex type problem The other thing is make sure your vendor supports wsdl2java -jboss does not, for example (although they run a modified version of axis 1.2internally). The problem I had was similair, although IIRC correctly I wasgetting ser / deser errors, not null. It was working on simple types butfailing on complex ones. HTH,Roberthttp://www.braziloutsource.com/ On 5/26/06, Roy[EMAIL PROTECTED] wrote:I think that this is not exactly my problem. I can call normally the service from my client when i use simple types. When i try to pass complex types i face the problem.robert lazarski [EMAIL PROTECTED] έγραψε: You'retrying to use a non-ejb client to connect to a Web Service that implementsimplements SessionBean, is that correct? The only way I got that to work -using jboss - was something like...// remote ejb / webserviceprivate CallCentreWebEndpointendpoint;String wsdl_loc = "http://localhost:8080/CallCentreWebServiceJAR?wsdl";// generated by JSWDP wscompile, which jboss insists onusingURL mappinglocation =ClassLoader.getSystemResource("CallCentreWeb_Mapping.xml");assertNotNull(mappinglocation);// bean mappingURL ws4eeMetaData =ClassLoader.getSystemResource("ws4ee-deploy.xml");assertNotNull(ws4eeMetaData);QName qname = new QName("http://localhost/callcentreweb","CallCentreWebService");URL url ="" newURL(wsdl_loc);org.jboss.webservice.client.ServiceFactoryImpl factory=(org.jboss.webservice.client.ServiceFactoryImpl) ServiceFactoryImpl.newInstance();javax.xml.rpc.Service service = factory.createService(url,mappinglocation, ws4eeMetaData, qname,null);endpoint = (CallCentreWebEndpoint)service.getPort(CallCentreWebEndpoint.class);The main idea here isServiceFactoryImpl, which varies by vendor. This may not be your problem,but thought I'd post it in case it helps. HTH,Roberthttp://www.braziloutsource.com/ On 5/26/06, Roy[EMAIL PROTECTED] wrote:I tried the beanmapping too but it didn't work. This is the the complex type i want to send and the deploy.wsdd file:Deploy.wsdd:deployment xmlns="http://xml.apache.org/axis/wsdd/ " xmlns:java=" http://xml.apache.org/axis/wsdd/providers/java" service name="EJBTestService" provider="java:EJB"parameter name="wsdlTargetNamespace" value="http://ejb.test.com"/ parameter name="beanJndiName" value="ejb/TestService"/parameter name="homeInterfaceName" value="com.test.ejb.TestServiceHome"/ parameter name="remoteInterfaceName" value=" com.test.ejb.TestService"/parameter name="allowedMethods" value="*"/ operation name="sendData" qname="operNS:SendData" xmlns:operNS=" http://test.com/ejb/"
Re: Complex type problem
Anna,Thank you a lot for your help.I tried it and i get another error :-). The client can't deserialize correctly the response. I send a request with a RequestData object with this data (x = "Hello", y="User" , num = 10). In the client the object has these values:x="Hello"y="Hello'num=10I tried with 3 and four strings and i get the same results (All string variables get the value of the first String). In the monitor i can see that the request has the right values for each string var.Do you know why this is happening?Thank you,RoyAnne Thomas Manes [EMAIL PROTECTED] wrote: Roy,The problem is that the "ns" namespace declaration is not in scope for the parameter element. Change the parameter definition to this and see if it works: parameter qname="pns:reqData" xmlns:pns=" http://test.com/ejb/" type=" pns:RequestData" xmlns:tns="http://www.w3.org/2001/XMLSchema " /Anne On 5/29/06, Roy [EMAIL PROTECTED] wrote: Dear Anne,I think that i have declared it here: beanMapping xmlns:ns=" http://ejb.test.com/rd" qname="ns:RequestData" languageSpecificType="java:com.test.ejb.rd.RequestData"/I tried to set my complex type only with a String ant an int var. It worked. I tried it with 2 Strings and both Strings take the same value (the value of the first string) when i call the service. In the Soap monitor i can see that both string are sent with different values. Have you ever any similar problems? Anne Thomas Manes [EMAIL PROTECTED] έγραψε: Roy,You have an error in your WSDD:parameter qname="pns:reqData" xmlns:pns=" http://test.com/ejb/" type="ns:RequestData" xmlns:tns=" http://www.w3.org/2001/XMLSchema " /You have not declared the "ns" namespace.AnneOn 5/26/06, Suyog Gandhi [EMAIL PROTECTED] wrote:Check out the issue AXIS2-770 , may be it is realted to this. I faced problems about serialization of complex types. 2nd level of nesting is not working. Once I re-structure wsdl for only 1 level of nesting, it started working. e.gfollowing complex type does NOTwork: ( Gives null for Name and Value for the attributes. ) WMemberInfo ---|- ID ---|- Attrbutes [] -|- Name -|- Value Following complex type works. WMemberInfo |- ID |- Attr1Name |- Attr1 Value |- Attr2 Name |- Attr2 Value But this is a crude workaround till the time problem is fixed.Hope this helps. Suyog -Original Message-From: robert lazarski [mailto: [EMAIL PROTECTED]]Sent: Friday, May 26, 2006 9:36 AMTo: axis-user@ws.apache.org Subject: Re: Complex type problem The other thing is make sure your vendor supports wsdl2java -jboss does not, for example (although they run a modified version of axis 1.2internally). The problem I had was similair, although IIRC correctly I was getting ser / deser errors, not null. It was working on simple types butfailing on complex ones. HTH,Robert http://www.braziloutsource.com/On 5/26/06, Roy[EMAIL PROTECTED] wrote: I think that this is not exactly my problem. I can call normally the service from my client when i use simple types. When i try to pass complex types i face the problem. robert lazarski [EMAIL PROTECTED] έγραψε:You'retrying to use a non-ejb client to connect to a Web Service that implementsimplements SessionBean, is that correct? The only way I got that to work -using jboss - was something like...// remote ejb / webserviceprivate CallCentreWebEndpointendpoint;String wsdl_loc = " http://localhost:8080/CallCentreWebServiceJAR?wsdl";// generated by JSWDP wscompile, which jboss insists onusing URL mappinglocation =ClassLoader.getSystemResource("CallCentreWeb_Mapping.xml"); assertNotNull(mappinglocation);// bean mappingURL ws4eeMetaData =ClassLoader.getSystemResource("ws4ee-deploy.xml");assertNotNull(ws4eeMetaData);QName qname = new QName(" http://localhost/callcentreweb","CallCentreWebService"); URL url ="" newURL(wsdl_loc); org.jboss.webservice.client.ServiceFactoryImpl factory=(org.jboss.webservice.client.ServiceFactoryImpl) ServiceFactoryImpl.newInstance();javax.xml.rpc.Service service = factory.createService(url,mappinglocation, ws4eeMetaData, qname,null);endpoint = (CallCentreWebEndpoint) service.getPort(CallCentreWebEndpoint.class);The main idea here isServiceFactoryImpl, which varies by vendor. This may not be your problem,but thought I'd post it in case it helps. HTH, Roberthttp://www.braziloutsource.com/ On 5/26/06, Roy[EMAIL PROT
Re: Complex type problem
I tried the beanmapping too but it didn't work. This is the the complex type i want to send and the deploy.wsdd file:Deploy.wsdd:deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java" service name="EJBTestService" provider="java:EJB" parameter name="wsdlTargetNamespace" value="http://ejb.test.com"/ parameter name="beanJndiName" value="ejb/TestService"/ parameter name="homeInterfaceName" value="com.test.ejb.TestServiceHome"/ parameter name="remoteInterfaceName" value="com.test.ejb.TestService"/ parameter name="allowedMethods" value="*"/ operation name="sendData" qname="operNS:SendData" xmlns:operNS="http://test.com/ejb/" returnQName="retNS:Result" xmlns:retNS="http://test.com/ejb/" returnType="rtns:int" xmlns:rtns="http://www.w3.org/2001/XMLSchema" parameter qname="pns:reqData" xmlns:pns="http://test.com/ejb/" type="ns:RequestData" xmlns:tns="http://www.w3.org/2001/XMLSchema" / /operation parameter name="allowedMethods" value="*"/ beanMapping xmlns:ns="http://ejb.test.com/rd" qname="ns:RequestData" languageSpecificType="java:com.test.ejb.rd.RequestData"/ /service/deployment---public class RequestData implements java.io.Serializable{private String x;private String y;private int num;public void setX(String x) this.x = x;public void setY(String y) this.y = y;public void setNum(String n) this.num = n;public String getX(){ return x;}public String getY(){ return y;}public int getNum{return num;}}If you see something wrong please tell me...Anne Thomas Manes [EMAIL PROTECTED] έγραψε: I think you need to use a beanmapping element rather than a typemapping element.If that doesn't work, please post more information.AnneOn 5/25/06, Roy [EMAIL PROTECTED] wrote:Hello all, I have deployed an ejb service with a method that takes as input a complex object (it contains 2 Strings and one int var). When i generate the code in the client with WSDL2Java and call the method i can see that this complex type object becomes null. I can see in the monitor that the request object isn't null but in the debug mode i can see that the service receives a null object. This problem doesn't occur when I use simple types to transfer. I tried the same code on a non-ejb service and works normally. In the deploy wsdd i use a typemapping element to describe the object and i use the BeanSerializerFactory and BeanDeSerializer factory as serializer-deserializer. Can someone explain why is this happening?Regards,Roy Χρησιμοποιείτε Yahoo! Βαρεθήκατε τα ενοχλητικά μηνύ ματα (spam); Το Yahoo! Mail διαθέτει την καλύτερη δυνατή προστασία κατά των ενοχλητικών μηνυμάτων http://login.yahoo.com/config/mail?.intl=gr Χρησιμοποιείτε Yahoo! Βαρεθήκατε τα ενοχλητικά μηνύ ματα (spam); Το Yahoo! Mail διαθέτει την καλύτερη δυνατή προστασία κατά των ενοχλητικών μηνυμάτων http://login.yahoo.com/config/mail?.intl=gr
Re: Complex type problem
I think that this is not exactly my problem. I can call normally the service from my client when i use simple types. When i try to pass complex types i face the problem.robert lazarski [EMAIL PROTECTED] έγραψε: You're trying to use a non-ejb client to connect to a Web Service that implements implements SessionBean, is that correct? The only way I got that to work - using jboss - was something like... // remote ejb / web service private CallCentreWebEndpoint endpoint; String wsdl_loc = "http://localhost:8080/CallCentreWebServiceJAR?wsdl"; // generated by JSWDP wscompile, which jboss insists on using URL mappinglocation = ClassLoader.getSystemResource("CallCentreWeb_Mapping.xml"); assertNotNull(mappinglocation); // bean mapping URL ws4eeMetaData = ClassLoader.getSystemResource("ws4ee-deploy.xml"); assertNotNull(ws4eeMetaData); QName qname = new QName("http://localhost/callcentreweb", "CallCentreWebService"); URL url ="" new URL(wsdl_loc); org.jboss.webservice.client.ServiceFactoryImpl factory= (org.jboss.webservice.client.ServiceFactoryImpl) ServiceFactoryImpl.newInstance(); javax.xml.rpc.Service service = factory.createService(url, mappinglocation, ws4eeMetaData, qname, null); endpoint = (CallCentreWebEndpoint) service.getPort(CallCentreWebEndpoint.class); The main idea here is ServiceFactoryImpl, which varies by vendor. This may not be your problem, but thought I'd post it in case it helps. HTH, Robert http://www.braziloutsource.com/On 5/26/06, Roy [EMAIL PROTECTED] wrote:I tried the beanmapping too but it didn't work. This is the the complex type i want to send and the deploy.wsdd file:Deploy.wsdd:deployment xmlns="http://xml.apache.org/axis/wsdd/ " xmlns:java="http://xml.apache.org/axis/wsdd/providers/java" service name="EJBTestService" provider="java:EJB" parameter name="wsdlTargetNamespace" value="http://ejb.test.com"/ parameter name="beanJndiName" value="ejb/TestService"/ parameter name="homeInterfaceName" value="com.test.ejb.TestServiceHome"/ parameter name="remoteInterfaceName" value="com.test.ejb.TestService"/ parameter name="allowedMethods" value="*"/ operation name="sendData" qname="operNS:SendData" xmlns:operNS="http://test.com/ejb/" returnQName="retNS:Result" xmlns:retNS=" http://test.com/ejb/" returnType="rtns:int" xmlns:rtns=" http://www.w3.org/2001/XMLSchema" parameter qname="pns:reqData" xmlns:pns=" http://test.com/ejb/" type="ns:RequestData" xmlns:tns="http://www.w3.org/2001/XMLSchema " / /operation parameter name="allowedMethods" value="*"/ beanMapping xmlns:ns=" http://ejb.test.com/rd" qname="ns:RequestData" languageSpecificType="java:com.test.ejb.rd.RequestData"/ /service/deployment---public class RequestData implements java.io.Serializable{private String x;private String y;private int num;public void setX(String x) this.x = x;public void setY(String y) this.y = y;public void setNum(String n) this.num = n;public String getX(){ return x;}public String getY(){ return y;}public int getNum{return num;}}If you see something wrong please tell me...Anne Thomas Manes [EMAIL PROTECTED] έγραψε: I think you need to use a beanmapping element rather than a typemapping element. If that doesn't work, please post more information.AnneOn 5/25/06, Roy [EMAIL PROTECTED] wrote:Hello all, I have deployed an ejb service with a method that takes as input a complex object (it contains 2 Strings and one int var). When i generate the code in the client with WSDL2Java and call the method i can see that this complex type object becomes null. I can see in the monitor that the request object isn't null but in the debug mode i can see that the service receives a null object. This problem doesn't occur when I use simple types to transfer. I tried the same code on a non-ejb service and works normally. In the deploy wsdd i use a typemapping element to describe the object and i use the BeanSerializerFactory and BeanDeSerializer factory as serializer-deserializer. Can someone explain why is this happening?Regards,Roy Χρησιμοποιείτε Yahoo! Βαρεθήκατε τα ενοχλητικά μηνύ ματα (spam); Το Yahoo! Mail διαθέτει την καλύτερη δυνατή προστασία κατά των ενοχλητικών μηνυμάτων http://login.yahoo.com/config/mail?.intl=gr Χρησιμοποιείτε Yahoo! Βαρεθήκατε τα ενοχλητικά μηνύ ματα (spam); Το Yahoo! Mail διαθέτει την καλύτερη δυνατή προστασία κατά των ενοχλητικών μηνυμάτων http://login.yahoo.com/config/mail?.intl=gr Χρησιμοποιείτε Yahoo! Βαρεθήκατε τα ενοχλητικά μηνύ ματα (spam); Το Yahoo! Mail διαθέτει την καλύτερη δυνατή προστασία κατά των ενοχλητικών μηνυμάτων http://login.yahoo.com/config/mail?.intl=gr
Complex type problem
Hello all,I have deployed an ejb service with a method that takes as input a complex object (it contains 2 Strings and one int var). When i generate the code in the client with WSDL2Java and call the method i can see that this complex type object becomes null. I can see in the monitor that the request object isn't null but in the debug mode i can see that the service receives a null object. This problem doesn't occur when I use simple types to transfer.I tried the same code on a non-ejb service and works normally. In the deploy wsdd i use a typemapping element to describe the object and i use the BeanSerializerFactory and BeanDeSerializer factory as serializer-deserializer.Can someone explain why is this happening?Regards,Roy Χρησιμοποιείτε Yahoo! Βαρεθήκατε τα ενοχλητικά μηνύ ματα (spam); Το Yahoo! Mail διαθέτει την καλύτερη δυνατή προστασία κατά των ενοχλητικών μηνυμάτων http://login.yahoo.com/config/mail?.intl=gr
ejb jndi url exception
Hello,I have deployed an EJB service in a sun application server. I can see normally that the service is deployed in the axis list but when i try to call the method i get this excpetion:AxisFaultfaultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userExceptionfaultSubcode:faultString: java.lang.IllegalArgumentException: rmiURLContext: name is not anRMI URL: corbaname:iiop:localhost:10500#ejb/MyServiceThis is the wsdd file i used for the deployment:service name="EpaisWebService" provider="java:EJB" parameter name="beanJndiName" value="ejb/MyService" /parameter name="homeInterfaceName" value="com.service.MyService"/parameter name="remoteInterfaceName" value="com.service.MyRemoteService"/parameter name="jndiContextClass" value="com.sun.jndi.rmi.registry.RegistryContextFactory"/parameter name="allowedMethods" value="*" /parameter name="jndiURL" value="corbaname:iiop:localhost:10500#ejb/MyService" /When i remove completely the parameter jndi url i get a connection refused exception.Do i have to declare in another way the corba jndi name?Thank you Χρησιμοποιείτε Yahoo! Βαρεθήκατε τα ενοχλητικά μηνύ ματα (spam); Το Yahoo! Mail διαθέτει την καλύτερη δυνατή προστασία κατά των ενοχλητικών μηνυμάτων http://login.yahoo.com/config/mail?.intl=gr
Sax exception:Invalid element in...
Hello,I use axis 1.3 to call a service that is implemented in an uknown language (probably .NET but not Java). I have generated the classes with the wsdl2Java tool from the service's WSDL and i called normally the service with a static stub. In the SOAP monitor i can see the respone with the expected data but i get this SAX exception:org.xml.sax.SAXException:Invalid element in com.advertsoft.APP_Response.USERS - DataValuesat org.apache.axis.encoding.ser.BeanDeserializer.onStartChild(BeanDeserializer.java:258)I have read previous threads and i noticed that probably is a problem in the first character of DataValues(it is capital?) tag in the response.Can anyone please give a way of how to solve this and deserialize the respnse normally?Thanks in advance,Roy Χρησιμοποιείτε Yahoo! Βαρεθήκατε τα ενοχλητικά μηνύ ματα (spam); Το Yahoo! Mail διαθέτει την καλύτερη δυνατή προστασία κατά των ενοχλητικών μηνυμάτων http://login.yahoo.com/config/mail?.intl=gr
Re: Decryption of a complex Axis2 SOAP message fails in WSS4J/XmlSec
Ruchith, Werner. Werner was right! I have switched off MTOM optimization in the services.xml (service-client message), and it works without problems. I did leave MTOM optimization on the client Axis2 repository configuration (client-service), this is also not a problem (the client-service messages - I have two operations - are small and have a rather flat XML structure). If you need any more information, please let me know. Thanks again, / Roy the --- Reshef Roy [EMAIL PROTECTED] wrote: Ruchith, Werner. Thanks for your (again, fast :) replies. Unfortunately I was already celebrating the weekend when I read them :) Monday morning (CET, I'm in Holland), I'll turn off the MTOM optimization and see where it leads. I'll post the results of course. As for thoughts: what Werner says does make some sense to me. I do not know the MTOM optimization mechanism but the client-service SOAP message (see my original post, here it's truncated already) is rather small. It includes actually the identification of the action and one or two parameters only. The service-client message is much larger and depends on the exact data one is querying for (the entities we ask for have children entities and the message can include these ones as well). Again, I am not familiar with the MTOM optimization algorithm but if it resembles other encoding and compression algorithms I do know, maybe it is more forgiving for small amounts of data; or for a a less complex XML strructure? When Brian complained about it in March he also complained about sending a complex XML document. Like him, my original message also included in the first place as a CDATA an embedded XML document (generated by a POJO object) but I have removed that and now I only work with AXIOM to generate the SOAP message. Friday at midnight I don't have any brighter ideas, more will follow Monday :) Nice weekend, / Roy --- Ruchith Fernando [EMAIL PROTECTED] wrote: Werner, Roy, Yes ... I think can give it a try by turning off MTOM optimization ... however the thing that troubles me is that the client - service configuration seems to be the same as service -client config and it (client - service) worked with MTOM optimization, where is seems to be replacing the binary content properly to be decrypted at the service. Thoughts?? Thanks, Ruchith On 5/19/06, Dittmann, Werner [EMAIL PROTECTED] wrote: Roy, Axis2 has a feature that optimizes transmission of binary data, AFAIK it convert base64 into real binary and send it over the wire. That save some bandwith. The problem is that the receiver cannot restore the base64 from the binary in exactly the same way as it was. Thus decryption and also signatuire processing have problems. You may switch off this optimization an try again, no optimizeParts parameter. Regards, Werner -Urspr�ngliche Nachricht- Von: Reshef Roy [mailto:[EMAIL PROTECTED] Gesendet: Freitag, 19. Mai 2006 17:12 An: wss4j-dev@ws.apache.org; axis-user@ws.apache.org Betreff: Decryption of a complex Axis2 SOAP message fails in WSS4J/XmlSec Hello WSS4J and Axis2 folks, I come back here on this issue which was discussed by Brian and Werner on the WSS4J mailing list in March, and has not been resolved. I am facing exactly the same problem. I believe it is a WSS4J/XMLSec issue, but I send it to both Axis2 and WSSS4J mailing lists. The original thread I copied from the mail archive and added at the bottom. My configuration is as follows: - My webservice is running on Axis2 1.0 deployed on Tomcat 5.5.16 - My client application is a standalone Java application using an Axis2 1.0 client repository - jre1.5.0_06 - relevant jar files in the Axis2 lib directory (both the server and the client): wss4j-1.5.0, xmlsec-1.3.0, xalan-2.7.0 (probably not relevant), various javamail-1.4 jars (in case it has to do with the MTOM attachment??). - the security configuration of both the webservice and the Axis2 client repository is similar to the one in the security sample of Axis2 1.0. I send a simple SOAP message from the client to the service, and get a complex, eventually a very complex, SOAP message containing the data back. The client-server message works fine, both when I configure it to be signed and encrypted and when I don't. The server-client message works fine without signature and encryption, but fails on the same exception as Brian's when the client side has to decrypt it. At first I thought the fault was in our code, as the generated XML was a mixture of XML generated by AXIOM and self-made XML Strings in POJO code (however Axis2 does escape the sign). In the past
Re: Sax exception:Invalid element in...
Thank you for your fast response.I compared the wsdl to the returned message and it seems ok(I checked the response objects and have the same names and structures to the ones i get in the response). Is there any other way to check the response i should get ? Can i use a custom deserialiser for the response?Anne Thomas Manes [EMAIL PROTECTED] έγραψε: Compare the return message to the expected schema as defined by the WSDL. It's likely that the service is returning a message that doesn't conform to the schema. If so, you should report the error to the service provider. If they won't fix the error, then you may need to modify the WSDL so that it specifies a schema that matches the actual return message. AnneOn 5/22/06, Roy [EMAIL PROTECTED] wrote: Hello,I use axis 1.3 to call a service that is implemented in an uknown language (probably .NET but not Java). I have generated the classes with the wsdl2Java tool from the service's WSDL and i called normally the service with a static stub. In the SOAP monitor i can see the respone with the expected data but i get this SAX exception: org.xml.sax.SAXException:Invalid element in com.advertsoft.APP_Response.USERS - DataValuesat org.apache.axis.encoding.ser.BeanDeserializer.onStartChild(BeanDeserializer.java:258)I have read previous threads and i noticed that probably is a problem in the first character of DataValues(it is capital?) tag in the response. Can anyone please give a way of how to solve this and deserialize the respnse normally?Thanks in advance,Roy Χρησιμοποιείτε Yahoo! Βαρεθήκατε τα ενοχλητικά μηνύ ματα (spam); Το Yahoo! Mail διαθέτει την καλύτερη δυνατή προστασία κατά των ενοχλητικών μηνυμάτων http://login.yahoo.com/config/mail?.intl=gr Χρησιμοποιείτε Yahoo! Βαρεθήκατε τα ενοχλητικά μηνύ ματα (spam); Το Yahoo! Mail διαθέτει την καλύτερη δυνατή προστασία κατά των ενοχλητικών μηνυμάτων http://login.yahoo.com/config/mail?.intl=gr
Decryption of a complex Axis2 SOAP message fails in WSS4J/XmlSec
/signaturePropFile encryptionPropFilesecurity.properties/encryptionPropFile signatureKeyIdentifierSKIKeyIdentifier/signatureKeyIdentifier encryptionKeyIdentifierSKIKeyIdentifier/encryptionKeyIdentifier encryptionUserdata_service/encryptionUser signatureParts{Element}{http://www.w3.org/2005/08/addressing}To;{Element}{http://www.w3.org/2005/08/addressing}ReplyTo;{Element}{http://www.w3.org/2005/08/addressing}MessageID;{Element}{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd}Timestamp/signatureParts optimizeParts//xenc:EncryptedData/xenc:CipherData/xenc:CipherValue/optimizeParts /action /parameter parameter name=InflowSecurity action itemsTimestamp Signature Encrypt/items passwordCallbackClassnitg.dino.dst.security.PWCallbackHandler/passwordCallbackClass signaturePropFilesecurity.properties/signaturePropFile decryptionPropFilesecurity.properties/decryptionPropFile /action /parameter --- 4. Axis2 service configuration parameter name=OutflowSecurity action itemsTimestamp Signature Encrypt/items userdata_service/user passwordCallbackClassnitg.dino.dst.security.PWCallbackHandler/passwordCallbackClass signaturePropFilesecurity.properties/signaturePropFile encryptionPropFilesecurity.properties/encryptionPropFile signatureKeyIdentifierSKIKeyIdentifier/signatureKeyIdentifier encryptionKeyIdentifierSKIKeyIdentifier/encryptionKeyIdentifier encryptionUserpres_service/encryptionUser signatureParts{Element}{http://www.w3.org/2005/08/addressing}To;{Element}{http://www.w3.org/2005/08/addressing}ReplyTo;{Element}{http://www.w3.org/2005/08/addressing}MessageID;{Element}{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd}Timestamp/signatureParts optimizeParts//xenc:EncryptedData/xenc:CipherData/xenc:CipherValue/optimizeParts /action /parameter parameter name=InflowSecurity action itemsTimestamp Signature Encrypt/items passwordCallbackClassnitg.dino.dst.security.PWCallbackHandler/passwordCallbackClass signaturePropFilesecurity.properties/signaturePropFile decryptionPropFilesecurity.properties/decryptionPropFile /action /parameter Any help would be appreciated! Thanks, / Roy Werner, I got distracted with other issues yesterday evening so didnt get to explore much more. What I have narrowed it down to is this: It will send a simple string as a parameter both securely and unsecurely It will send a simple xml string as a parameter both securely and unsecurely The XML String i need to send, and it is having problems with, is quite complex. It contains a full XML document as a CDATA element of the parent document, where i am interested in sending the parent document. As i said, i have made some headway in narrowing down exxactly what is causing the errors and will repost when I find exactly what is causing it. BTW, there is an embedded axis function that escapes the angle brackets (only the bracket needs to be escaped). This is not an issue as simple XML is working. Regards, Brian. Werner Dittmann wrote: Brian, WSS4J uses a specific Axis method to set the message generated by WSS4J that includes the security header as the new message to send. Maybe there is a problem in that area - I'll test this during the next day (maybe weekend). It would be helpful if you can provide me the message you are going to send (the XML string). Do you escape the angle bracket in your program or is this an embedded Axis function? Regards, Werner Brian Shields wrote: Werner, Yes I have tested it without security in place and is working fine! Angle brackets are modified to lt; to avoid errors! Regards, Brian. Werner Dittmann wrote: Brian, did you test this without security enabled? Sending an XML string may require some modifications to escape angle bracket. Regards, Werner Brian Shields wrote: Hi Guys, I have a secure service established using wss4j and connect to it using a simple client. For testing purposes this is an echo service. It works perfectly when i pass a simple string as the parameter to the call, however when i pass it a string which is generated from an org.jdom.Document using an org.jdom.output.XMLOutputter i get the errors below. Is there something i have to do to the String? or the Document before outputting? Thanks, Brian. org.apache.ws.security.WSSecurityException: Cannot encrypt/decrypt data; nested exception is: org.apache.xml.security.encryption.XMLEncryptionException: Error while decoding Original Exception was org.apache.xml.security.exceptions.Base64DecodingException: Error while decoding at org.apache.ws.security.processor.EncryptedKeyProcessor.decryptDataRef(EncryptedKeyProcessor.java:388
Re: Decryption of a complex Axis2 SOAP message fails in WSS4J/XmlSec
Ruchith, Werner. Thanks for your (again, fast :) replies. Unfortunately I was already celebrating the weekend when I read them :) Monday morning (CET, I'm in Holland), I'll turn off the MTOM optimization and see where it leads. I'll post the results of course. As for thoughts: what Werner says does make some sense to me. I do not know the MTOM optimization mechanism but the client-service SOAP message (see my original post, here it's truncated already) is rather small. It includes actually the identification of the action and one or two parameters only. The service-client message is much larger and depends on the exact data one is querying for (the entities we ask for have children entities and the message can include these ones as well). Again, I am not familiar with the MTOM optimization algorithm but if it resembles other encoding and compression algorithms I do know, maybe it is more forgiving for small amounts of data; or for a a less complex XML strructure? When Brian complained about it in March he also complained about sending a complex XML document. Like him, my original message also included in the first place as a CDATA an embedded XML document (generated by a POJO object) but I have removed that and now I only work with AXIOM to generate the SOAP message. Friday at midnight I don't have any brighter ideas, more will follow Monday :) Nice weekend, / Roy --- Ruchith Fernando [EMAIL PROTECTED] wrote: Werner, Roy, Yes ... I think can give it a try by turning off MTOM optimization ... however the thing that troubles me is that the client - service configuration seems to be the same as service -client config and it (client - service) worked with MTOM optimization, where is seems to be replacing the binary content properly to be decrypted at the service. Thoughts?? Thanks, Ruchith On 5/19/06, Dittmann, Werner [EMAIL PROTECTED] wrote: Roy, Axis2 has a feature that optimizes transmission of binary data, AFAIK it convert base64 into real binary and send it over the wire. That save some bandwith. The problem is that the receiver cannot restore the base64 from the binary in exactly the same way as it was. Thus decryption and also signatuire processing have problems. You may switch off this optimization an try again, no optimizeParts parameter. Regards, Werner -Urspr�ngliche Nachricht- Von: Reshef Roy [mailto:[EMAIL PROTECTED] Gesendet: Freitag, 19. Mai 2006 17:12 An: wss4j-dev@ws.apache.org; axis-user@ws.apache.org Betreff: Decryption of a complex Axis2 SOAP message fails in WSS4J/XmlSec Hello WSS4J and Axis2 folks, I come back here on this issue which was discussed by Brian and Werner on the WSS4J mailing list in March, and has not been resolved. I am facing exactly the same problem. I believe it is a WSS4J/XMLSec issue, but I send it to both Axis2 and WSSS4J mailing lists. The original thread I copied from the mail archive and added at the bottom. My configuration is as follows: - My webservice is running on Axis2 1.0 deployed on Tomcat 5.5.16 - My client application is a standalone Java application using an Axis2 1.0 client repository - jre1.5.0_06 - relevant jar files in the Axis2 lib directory (both the server and the client): wss4j-1.5.0, xmlsec-1.3.0, xalan-2.7.0 (probably not relevant), various javamail-1.4 jars (in case it has to do with the MTOM attachment??). - the security configuration of both the webservice and the Axis2 client repository is similar to the one in the security sample of Axis2 1.0. I send a simple SOAP message from the client to the service, and get a complex, eventually a very complex, SOAP message containing the data back. The client-server message works fine, both when I configure it to be signed and encrypted and when I don't. The server-client message works fine without signature and encryption, but fails on the same exception as Brian's when the client side has to decrypt it. At first I thought the fault was in our code, as the generated XML was a mixture of XML generated by AXIOM and self-made XML Strings in POJO code (however Axis2 does escape the sign). In the past few days I cleaned our POJO code up completely, now the XML message is generated solely by AXIOM. I still get the following exception: [java] org.apache.axis2.AxisFault: WSDoAllReceiver: security processing failed; nested exception is: [java] org.apache.ws.security.WSSecurityException: Cannot encrypt/decrypt data; nested exception is: [java] org.apache.xml.security.encryption.XMLEncryptionException: Error while decoding [java] Original Exception was org.apache.xml.security.exceptions.Base64DecodingException: Error while decoding [java]at org.apache.axis2
Omit SOAPAction from Http header
Hello,I am using AXIS to call a web service with a static stub client.I have a problem with the HttpHeader generated from AXIS. I want to omit completely the SOAPAction field because the web service i want to call isn't able to understand this field. I have have set the SOAPAction value to "" but i had the same results. How can i remove it completely?Thank you. Χρησιμοποιείτε Yahoo! Βαρεθήκατε τα ενοχλητικά μηνύ ματα (spam); Το Yahoo! Mail διαθέτει την καλύτερη δυνατή προστασία κατά των ενοχλητικών μηνυμάτων http://login.yahoo.com/config/mail?.intl=gr
Re: [Axis2 1.0] NullPointerException at StAXOMBuilder.next() when using rampart
Hi Ruchith, Thanks for the fast reaction. I've downloaded your new axiom-dom jar, however I still got the same exception... Then I removed the axiom-dom jar altogether (from both the client respository and the server), and I still got the very same exception (so no ClassNotFoundException...). Further investigation showed that the org.apache.axiom.om.impl.dom.CharacterImpl was used from the axiom-api-1.0.jar, NOT from the axiom-dom jar. I unpacked both jars and compared them, it seems to me that the axiom-dom jar is actually a subset of the classes in the axiom-api jar. And all of these (except for org.apache.axiom.om.impl.dom.CharacterImpl and org.apache.axiom.om.impl.dom.TextImpl) were identical. I cannot imagine that it's meant to be so... I cannot remove the axiom-api-1.0.jar as the startup of Axis2 under Tomcat fails... I can try to mess around with the order in the classpath of both the client repository and the server, but I guess it would be easier (and better) to solve this duplication by either merging the two jars or removing the duplicate classes from the axiom-api jar. Thanks again, / Roy --- Ruchith Fernando [EMAIL PROTECTED] wrote: Hi Roy, Thank you for reporting this problem ... I traced the issue to the org.apache.axiom.om.impl.dom.CharacterImpl of the OM-DOM implementation (DOOM) and this is fixed in SVN revision : 406708 Please replace your axiom-dom-1.0.jar with this [1] and try again. Thanks, Ruchith [1] http://people.apache.org/~ruchithf/axiom-dom-406708.jar On 5/15/06, Reshef Roy [EMAIL PROTECTED] wrote: Hi all, This is maybe a stupid problem resluting from the fact that I am not a WS/SOAP expert, but I've been fighting with it for almost a week now with no results, therefore any kind of help will be appreciated. I am using Axis2 1.0 and jre1.5.0_06. My service is deployed on Tomcat 5.5.16 (Axis2 1.0 WAR distribtion) and my test client is a simple standalone Java application, which uses an Axis2 repository and which is invoked using an ANT build file. On both the client and the server I engage the addressing-1.0 module and the security (rampart-1.0) module; WSS4J version is 1.5.0. Both the client and the server are configured to enable MTOM. When I DO NOT configure any usage of the rampart module (in both axis2.xml of the client repo and services.xml of the AAR service), everything goes well - the SOAP messages are going back and forth and are succesfully consumed by the service and the client, respectively. When I configure the client-server message (OutflowSecurity of the client and InflowSecurity of the service) with the actions Timestamp Signature Encrypt (in a similar manner to the security sample), everything goes well. However, when I configure the server-client message (OutflowSecurity of the service and InflowSecurity of the client) with the actions Timestamp Signature Encrypt (in a similar manner to the security sample), I get the following exception on the server side. As it complains on the SOAP envelope and states soapenv:Codesoapenv:Valuesoapenv:Sender/soapenv:Value/soapenv:Code it seems to me that the problem is in my incoming (client-server) message. I have tried to locate it, but in vain. [rest of message truncated] __ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
Re: [Axis2 1.0] NullPointerException at StAXOMBuilder.next() when using rampart
Hi Ruchith, I've replaced all axiom jars, now I am getting through :) Thanks a lot... I still have problems with parsing the decrypted server-client message, but I first have to verify whether these are not a result of my own code / configuration before I'll bother you guys again... Thanks again, / Roy --- Ruchith Fernando [EMAIL PROTECTED] wrote: Hi Roy, Ah... an issue in packaging the jars... this will be fixed in the next AXIOM release: I hosted all three axiom jars (from svn revision 406919) here : [1] Please try replacing all your axiom-* jars with these. Thanks Ruchith [1] http://people.apache.org/~ruchithf/axiom/ On 5/16/06, Reshef Roy [EMAIL PROTECTED] wrote: Hi Ruchith, Thanks for the fast reaction. I've downloaded your new axiom-dom jar, however I still got the same exception... Then I removed the axiom-dom jar altogether (from both the client respository and the server), and I still got the very same exception (so no ClassNotFoundException...). Further investigation showed that the org.apache.axiom.om.impl.dom.CharacterImpl was used from the axiom-api-1.0.jar, NOT from the axiom-dom jar. I unpacked both jars and compared them, it seems to me that the axiom-dom jar is actually a subset of the classes in the axiom-api jar. And all of these (except for org.apache.axiom.om.impl.dom.CharacterImpl and org.apache.axiom.om.impl.dom.TextImpl) were identical. I cannot imagine that it's meant to be so... I cannot remove the axiom-api-1.0.jar as the startup of Axis2 under Tomcat fails... I can try to mess around with the order in the classpath of both the client repository and the server, but I guess it would be easier (and better) to solve this duplication by either merging the two jars or removing the duplicate classes from the axiom-api jar. Thanks again, / Roy --- Ruchith Fernando [EMAIL PROTECTED] wrote: Hi Roy, Thank you for reporting this problem ... I traced the issue to the org.apache.axiom.om.impl.dom.CharacterImpl of the OM-DOM implementation (DOOM) and this is fixed in SVN revision : 406708 Please replace your axiom-dom-1.0.jar with this [1] and try again. Thanks, Ruchith [1] http://people.apache.org/~ruchithf/axiom-dom-406708.jar [snip] __ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
How to set the soapAction property manually in static stub client
I have a wsdl by which i generate my java classes using the WSDL2Java tool. I use a static stub client to call the service methods. I would like to change the soapAction in the client code. Is this possible and how? I saw a method named setRequestHeader that takes a call object input as a parameter but i get a message that this method is hidden. Χρησιμοποιείτε Yahoo! Βαρεθήκατε τα ενοχλητικά μηνύ ματα (spam); Το Yahoo! Mail διαθέτει την καλύτερη δυνατή προστασία κατά των ενοχλητικών μηνυμάτων http://login.yahoo.com/config/mail?.intl=gr
Server error 500 in AXIS response
Hello,I use an AXIS client application 1.3 to call a service the response i get is this below:?xml version='1.0' ? SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:Body SOAP-ENV:Fault faultcodeSOAP-ENV:Client/faultcode faultstringHttpListeningConnectorUtility.initializeISRequest(): SOAPAction HTTP header value has an invalid format./faultstring detail IBResponse type="error" DefaultTitleIntegration Broker Response/DefaultTitle StatusCode20/StatusCode MessageSet158/MessageSet MessageID10502/MessageID DefaultMessageSOAPAction HTTP header value has an invalid format./DefaultMessage /IBResponse /detail /SOAP-ENV:Fault /SOAP-ENV:Body /SOAP-ENV:EnvelopeIn the java console i see this exception:AxisFaultfaultCode: {http://schemas.xmlsoap.org/soap/envelope/}ClientfaultSubcode: faultString: HttpListeningConnectorUtility.initializeISRequest(): SOAPAction HTTP header value has an invalid format.faultActor: faultNode: faultDetail: {}IBResponse:DefaultTitleIntegration Broker Response/DefaultTitleStatusCode20/StatusCodeMessageSet158/MessageSetMessageID10502/MessageIDDefaultMessageSOAPAction HTTP header value has an invalid format. HttpListeningConnectorUtility.initializeISRequest(): SOAPAction HTTP header value has an invalid format. at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222) at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129) at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087) at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1712) at org.apache.crimson.parser.Parser2.content(Parser2.java:1963) at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)This means that the request message i send contains invalid SOAP header data or that the server can't handle AXIS requests? Which would be a possible solution?Any help would be appreciated.Thanks ,Roy. Χρησιμοποιείτε Yahoo! Βαρεθήκατε τα ενοχλητικά μηνύ ματα (spam); Το Yahoo! Mail διαθέτει την καλύτερη δυνατή προστασία κατά των ενοχλητικών μηνυμάτων http://login.yahoo.com/config/mail?.intl=gr
removing port number from the wsdl file.
Hi, I have a problem regarding the wsdl file. I am using axis 1.3 on tomcat 5.0.28 /redhat linux. I am using rpc encoded literal type of service. wsdl file generation is happening by using admin client form axis.jar. After i run the admin client to install a custom webservice, the service works fine. But when I move it into the www domain this does not work. On further investigation I found out that the soap address location has the port no. 8080 attached with it. as under: wsdl:service name=PublishingServiceProviderImplService wsdl:port binding=impl:InformationPublishingServiceSoapBinding name=InformationPublishingService wsdlsoap:address location=http://www.myguide.gov.uk:8080/axis/services/InformationPublishingService; / How do i remove the port 8080 from the wsdl? The adminservice also has the port 8080 on it. Is there any way of removing the port number from these files?? regards, Roy This e-mail and any attachment is for authorised use by the intended recipient(s) only. It may contain proprietary material, confidential information and/or be subject to legal privilege. It should not be copied, disclosed to, retained or used by, any other party. If you are not an intended recipient then please promptly delete this e-mail and any attachment and all copies and inform the sender. Thank you.
RE: problems in AdminClient
Hi, No i am using java 1.4 but still the problem persists. But if i write it into a simple build.xml file and run through ant it works fine. But since in the production you dont have ant installed so i have to go on with a batch file or an .sh file. regards, Anshuman Roy -Original Message- From: Berner Martin [mailto:[EMAIL PROTECTED] Sent: Monday, January 30, 2006 1:03 PM To: 'axis-user@ws.apache.org' Subject: AW: problems in AdminClient Hi Are you using java 5? Cos i had a similar problem with java 5, can't find the dom-Classes.. Try it with an 1.4X java. mit freundlichen Grüssen Berner Martin _ Martin Berner, EDV Tel.: ++41-(0)41-729 33 46 Schweizer BraunviehzuchtverbandFax : ++41-(0)41-729 33 77 Chamerstrasse 56 http://www.braunvieh.ch 6300 ZugEmail: [EMAIL PROTECTED] _ -Ursprüngliche Nachricht- Von: Roy, Ansuman [mailto:[EMAIL PROTECTED] Gesendet: Montag, 30. Januar 2006 08:02 An: axis-user@ws.apache.org Betreff: problems in AdminClient Hi, When i run my code for admin client for deployment using the following command: java -cp %AXISCLASSPATH% org.apache.axis.client.AdminClient -lhttp://localhost:8080/axis/services/AdminService deploy_webservice.wsdd then i get the following error: Exception in thread main java.lang.NoClassDefFoundError: org/w3c/dom/DOMError at org.apache.xerces.jaxp.DocumentBuilderImpl.init(Unknown Source) at org.apache.xerces.jaxp.DocumentBuilderFactoryImpl.newDocumentB uilder(Unknown Source) at org.apache.axis.utils.XMLUtils$ThreadLocalDocumentBuilder.init ialValue(XMLUtils.java:98) at java.lang.ThreadLocal$ThreadLocalMap.getAfterMiss(ThreadLocal. java:368) at java.lang.ThreadLocal$ThreadLocalMap.get(ThreadLocal.java:341) at java.lang.ThreadLocal$ThreadLocalMap.access$000(ThreadLocal.java:219) at java.lang.ThreadLocal.get(ThreadLocal.java:121) at org.apache.axis.utils.XMLUtils.getDocumentBuilder(XMLUtils.java:237) at org.apache.axis.utils.XMLUtils.newDocument(XMLUtils.java:358) at org.apache.axis.utils.XMLUtils.newDocument(XMLUtils.java:388) at org.apache.axis.configuration.FileProvider.configureEngine(Fil eProvider.java:179) at org.apache.axis.AxisEngine.init(AxisEngine.java:172) at org.apache.axis.AxisEngine.init(AxisEngine.java:156) at org.apache.axis.client.AxisClient.init(AxisClient.java:52) at org.apache.axis.client.Service.getAxisClient(Service.java:104) at org.apache.axis.client.Service.init(Service.java:113) at org.apache.axis.client.AdminClient.initAdminClient(AdminClient .java:148) at org.apache.axis.client.AdminClient.init(AdminClient.java:116) at org.apache.axis.client.AdminClient.main(AdminClient.java:461) I tried to put in all the jar files in the classpath but it's failing. any pointers to this. regards, Anshuman Roy This e-mail and any attachment is for authorised use by the intended recipient(s) only. It may contain proprietary material, confidential information and/or be subject to legal privilege. It should not be copied, disclosed to, retained or used by, any other party. If you are not an intended recipient then please promptly delete this e-mail and any attachment and all copies and inform the sender. Thank you.
problems in AdminClient
Hi, When i run my code for admin client for deployment using the following command: java -cp %AXISCLASSPATH% org.apache.axis.client.AdminClient -lhttp://localhost:8080/axis/services/AdminService deploy_webservice.wsdd then i get the following error: Exception in thread main java.lang.NoClassDefFoundError: org/w3c/dom/DOMError at org.apache.xerces.jaxp.DocumentBuilderImpl.init(Unknown Source) at org.apache.xerces.jaxp.DocumentBuilderFactoryImpl.newDocumentBuilder(Unknown Source) at org.apache.axis.utils.XMLUtils$ThreadLocalDocumentBuilder.initialValue(XMLUtils.java:98) at java.lang.ThreadLocal$ThreadLocalMap.getAfterMiss(ThreadLocal.java:368) at java.lang.ThreadLocal$ThreadLocalMap.get(ThreadLocal.java:341) at java.lang.ThreadLocal$ThreadLocalMap.access$000(ThreadLocal.java:219) at java.lang.ThreadLocal.get(ThreadLocal.java:121) at org.apache.axis.utils.XMLUtils.getDocumentBuilder(XMLUtils.java:237) at org.apache.axis.utils.XMLUtils.newDocument(XMLUtils.java:358) at org.apache.axis.utils.XMLUtils.newDocument(XMLUtils.java:388) at org.apache.axis.configuration.FileProvider.configureEngine(FileProvider.java:179) at org.apache.axis.AxisEngine.init(AxisEngine.java:172) at org.apache.axis.AxisEngine.init(AxisEngine.java:156) at org.apache.axis.client.AxisClient.init(AxisClient.java:52) at org.apache.axis.client.Service.getAxisClient(Service.java:104) at org.apache.axis.client.Service.init(Service.java:113) at org.apache.axis.client.AdminClient.initAdminClient(AdminClient.java:148) at org.apache.axis.client.AdminClient.init(AdminClient.java:116) at org.apache.axis.client.AdminClient.main(AdminClient.java:461) I tried to put in all the jar files in the classpath but it's failing. any pointers to this. regards, Anshuman Roy This e-mail and any attachment is for authorised use by the intended recipient(s) only. It may contain proprietary material, confidential information and/or be subject to legal privilege. It should not be copied, disclosed to, retained or used by, any other party. If you are not an intended recipient then please promptly delete this e-mail and any attachment and all copies and inform the sender. Thank you.
WSDL2Java code generation
Hi, I have a Content Management System(it uses Apache Lenya) that uses WSDL2Java to generate the code of stubs. Now I am doing it manually using eclipse plugin. and put the source inside my Content Management System Code and then i build it using an ant build. I use this generated code inside a java class file. Can you tell me how can i automate this process of generating the stubs via WSDL2Java and to put the import statement automatically onto my java class. I have another problem also : when i generate the WSDL2Java code, it generates the package structure like localhost.axis.services.InformationPublishingService I tried to put the soap end point onto a different machine and call WSDL2Java but it creates the same package structure. Need Help on this thanks in advance regards, Anshuman This e-mail and any attachment is for authorised use by the intended recipient(s) only. It may contain proprietary material, confidential information and/or be subject to legal privilege. It should not be copied, disclosed to, retained or used by, any other party. If you are not an intended recipient then please promptly delete this e-mail and any attachment and all copies and inform the sender. Thank you.
RE: Dynamically Registering Client Side Handlers
Seems to me you are on the right track. I use code similar to the following in the MyServiceSoapBindingStub.java methods: ... Clip ... org.apache.axis.handlers.BasicHandler reqHandler = new com.mycompany.ReqHandler(); org.apache.axis.handlers.BasicHandler respHandler = new com.myCompany.RespHandler(); _call.setClientHandlers(reqHandler, respHandler); java.lang.Object _resp = _call.invoke(new java.lang.Object[] {my arguments}); ... Clip ... And it works well for me. Regards Roy Willy Haug -Original Message- From: Kumar [mailto:[EMAIL PROTECTED] Sent: 5. juli 2005 13:02 To: axis-user@ws.apache.org Subject: Dynamically Registering Client Side Handlers Hi All, Can anyone please tell me how to dynamically (programatically) register a request flow and response flow handler. I tried below code : call object.setClientHandlers(request flow handler object, response flow handler object) but I get an exception like no logfile parameter set. I dont want to use any client_config.wsdd file and put in classpath. Please suggest. Thanks Regards, Kumar.