You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Tedman Leung <te...@8020solutions.com> on 2007/04/19 21:45:37 UTC

axis2 client + xfire server + axiom

I just encountered an oddity which I couldn't find any information on so I figured I'd post this so other people would know.

I'm using xfire 1.2.5 as the server and I'm using axis2 1.1.1 as the client. When I was making my pom.xml I used axiom 1.2.3 (since it was the newest one) intead of the shipped 1.2.2.

With the above configuration (axiom 1.2.3), when xfire throws exceptions/faults, they don't get parsed on the axis client properly. The client seems to get an error instead. If you change the axiom back to 1.2.2, the client received the exceptions/faults properly. I'm not sure if it's a bug in axiom 1.2.3 or maybe just a bug fix... what ever the case, people might want to be aware of this. (hopefully this will now show up in peoples web searches... took me a while to find the problem).

The following is the error using axiom 1.2.3 and the expected exception using axiom 1.2.2

java.lang.UnsupportedOperationException: getFirstSOAPText() not allowed for SOAP 1.1!
        at org.apache.axiom.soap.impl.llom.soap11.SOAP11FaultReasonImpl.getFirstSOAPText(SOAP11FaultReasonImpl.java:59)
        at org.apache.axis2.AxisFault.<init>(AxisFault.java:152)
        at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:271)
        at org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:202)
        at com.XXX.XXX.api.soap.stubs.AuthenticateServiceStub.login(AuthenticateServiceStub.java:157)
        at com.XXX.XXX.FooTest.authenticate(FooTest.java:45)
        at com.XXX.XXX.FooTest.testMain(FooTest.java:31)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at junit.framework.TestCase.runTest(TestCase.java:168)

v.s. what I was expecting which is below

com.XXX.XXX.api.soap.stubs.AuthenticationFailedExceptionException: AuthenticationFailedExceptionException
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
        at java.lang.Class.newInstance0(Class.java:355)
        at java.lang.Class.newInstance(Class.java:308)
        at com.XXX.XXX.api.soap.stubs.AuthenticateServiceStub.login(AuthenticateServiceStub.java:180)
        at com.XXX.XXX.FooTest.authenticate(FooTest.java:45)
        at com.XXX.XXX.FooTest.testMain(FooTest.java:31)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at junit.framework.TestCase.runTest(TestCase.java:168)