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 xedus <so...@gmail.com> on 2009/06/21 10:29:32 UTC

axis2 on webshpere response != axis2 on glassfish response........ why?

i have a web service deployed to axis2 on websphere and the same web service
deployed to axis2 on glassfish v2.

the client is a desktop application generated and written in C# using
VS2003.

the client works well with the service on websphere which it was originally
designed for. but not with the service on glassfish.
the WSDL generated for both services is exactly the same.

i noticed that the response generated from the service on web sphere has the
xmlns on every attribute 
this is not true for the same service on axis2 on glassfish.

this is the response message from the service on axis2 on websphere:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
 <soapenv:Body>
 <ns:getPrintJobResponse xmlns:ns="http://myService/xsd">
 <ns:return>
  <bookingRef xmlns="http://myService/xsd">XXXXXX7730000010001</bookingRef> 
  <jobID xmlns="http://myService/xsd">209572</jobID> 
  <printerName xmlns="http://myService/xsd">NAME</printerName> 
  <qty xmlns="http://myService/xsd">3</qty> 
  </ns:return>
  </ns:getPrintJobResponse>
  </soapenv:Body>
</soapenv:Envelope>
  


notice that xmlns value appears in all the properties (bookingRef, jobID,
printerName, qty).

and here is the same response from axis2 on glassfish

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
 <soapenv:Body>
 <ns:getPrintJobResponse xmlns:ns="http://myService/xsd">
 <ns:return>
  <bookingRef xmlns="http://myService/xsd">XXXXXX7730000010001</bookingRef> 
  <jobID>209552</jobID> 
  <printerName>NAME</printerName> 
  <qty>15</qty> 
  </ns:return> 
  </ns:getPrintJobResponse>
</soapenv:Body>
  </soapenv:Envelope>


notice that only the bookingRef has the xmlns


my service is a POJO without any annotations. it is wrapped as .aar


my questions...

A. why is this happening although i'm deploying to a common denominator on
both app. servers which is the axis2.war ?
B. how do i make the response from glassfish matches the one from webshpere?
where do i have to change and what?

  please note that i can't change he client code so my only bid is to make
it work on glassfish as it was working on websphere.
-- 
View this message in context: http://www.nabble.com/axis2-on-webshpere-response-%21%3D-axis2-on-glassfish-response........-why--tp24132443p24132443.html
Sent from the Axis - User mailing list archive at Nabble.com.


Re: axis2 on webshpere response != axis2 on glassfish response........ why?

Posted by ibrahim demir <ib...@yahoo.com>.
So your exception shows that the class javax.xml.namespace.QName is loaded from an old library .Do you hvae chance to see from which jar this class is loaded. If so remove it from classpath and use the libraries coming with axis2.war. That will solve the problem.

Yours

 Ibrahim DEMIR
CyberSoft Yazilim Muh.
http://www.ibrahimdemir.org

     
           
     




________________________________
From: jeffty <je...@gmail.com>
To: axis-user@ws.apache.org
Cc: some2002@gmail.com
Sent: Sunday, June 21, 2009 4:39:54 PM
Subject: Re: axis2 on webshpere response != axis2 on glassfish response........ why?

Hello xedus,

    I wonder how do you deploy axis2 in websphere. I've tried to deploy the war file of axis2 1.3, 1.4 and 1.41 on Websphere 5.1 and failed every time.

    I only got such exceptions:

javax.servlet.ServletException: javax.xml.namespace.QName: method <init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V not found
at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doInit(StrictServletInstance.java:99)
at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._init(StrictLifecycleServlet.java:147)
at com.ibm.ws.webcontainer.servlet.PreInitializedServletState.init(StrictLifecycleServlet.java:270)
at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.init(StrictLifecycleServlet.java:113)
at com.ibm.ws.webcontainer.servlet.ServletInstance.init(ServletInstance.java:189)
at javax.servlet.GenericServlet.init(GenericServlet.java:258)
....

    I set parent last setting on the axis2.war file in the server. But it doesn't work.

    Any information is appreciated, thanks a lot.


Regards
Jeffty


----- Original Message ----- 
From: "xedus" <so...@gmail.com>
To: <ax...@ws.apache.org>
Sent: Sunday, June 21, 2009 4:29 PM
Subject: axis2 on webshpere response != axis2 on glassfish response........ why?


> 
> i have a web service deployed to axis2 on websphere and the same web service
> deployed to axis2 on glassfish v2.
> 
> the client is a desktop application generated and written in C# using
> VS2003.
> 
> the client works well with the service on websphere which it was originally
> designed for. but not with the service on glassfish.
> the WSDL generated for both services is exactly the same.
> 
> i noticed that the response generated from the service on web sphere has the
> xmlns on every attribute 
> this is not true for the same service on axis2 on glassfish.
> 
> this is the response message from the service on axis2 on websphere:
> 
> 
> <soapenv:Body>
> 
> <ns:return>
>  <bookingRef xmlns="http://myService/xsd">XXXXXX7730000010001</bookingRef> 
>  <jobID xmlns="http://myService/xsd">209572</jobID> 
>  <printerName xmlns="http://myService/xsd">NAME</printerName> 
>  <qty xmlns="http://myService/xsd">3</qty> 
>  </ns:return>
>  </ns:getPrintJobResponse>
>  </soapenv:Body>
> </soapenv:Envelope>
>  
> 
> 
> notice that xmlns value appears in all the properties (bookingRef, jobID,
> printerName, qty).
> 
> and here is the same response from axis2 on glassfish
> 
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
> <soapenv:Body>
> <ns:getPrintJobResponse xmlns:ns="http://myService/xsd">
> <ns:return>
>  <bookingRef xmlns="http://myService/xsd">XXXXXX7730000010001</bookingRef> 
>  <jobID>209552</jobID> 
>  <printerName>NAME</printerName> 
>  <qty>15</qty> 
>  </ns:return> 
>  </ns:getPrintJobResponse>
> </soapenv:Body>
>  </soapenv:Envelope>
> 
> 
> notice that only the bookingRef has the xmlns
> 
> 
> my service is a POJO without any annotations. it is wrapped as .aar
> 
> 
> my questions...
> 
> A. why is this happening although i'm deploying to a common denominator on
> both app. servers which is the axis2.war ?
> B. how do i make the response from glassfish matches the one from webshpere?
> where do i have to change and what?
> 
>  please note that i can't change he client code so my only bid is to make
> it work on glassfish as it was working on websphere.
> -- 
> View this message in context: http://www.nabble.com/axis2-on-webshpere-response-%21%3D-axis2-on-glassfish-response........-why--tp24132443p24132443.html 
> Sent from the Axis - User mailing list archive at Nabble.com.
>


      

Re: axis2 on webshpere response != axis2 on glassfish response........ why?

Posted by Davanum Srinivas <da...@gmail.com>.
jeffty,

try removing the commons-logging and log4j jars from the axis2 war and stick to PARENT_LAST

-- dims

On 06/21/2009 11:00 AM, jeffty wrote:
> Hi dims,
>
>      I've tried set parent_last for the applications->axis2->web module->axis2.war->PARENT_LAST, after that I got the exception:
>
> java.lang.ExceptionInInitializerError
>   at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>   at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:79)
>   at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java(Compiled Code))
>   at java.lang.reflect.Constructor.newInstance(Constructor.java(Compiled Code))
>   at java.lang.Class.newInstance3(Class.java(Compiled Code))
>   at java.lang.Class.newInstance(Class.java(Compiled Code))
>   at java.beans.Beans.instantiate(Beans.java:218)
>   at java.beans.Beans.instantiate(Beans.java:62)
> .....
> Caused by: org.apache.commons.logging.LogConfigurationException: The chosen LogFactory implementation does not extend LogFactory. Please check your configuration. (Caused by java.lang.ClassCastException: The application has specified that a custom LogFactory implementation should be used but Class 'com.ibm.ws.commons.logging.TrLogFactory' cannot be converted to 'org.apache.commons.logging.LogFactory'. The conflict is caused by the presence of multiple LogFactory classes in incompatible classloaders. Background can be found in http://commons.apache.org/logging/tech.html. If you have not explicitly specified a custom LogFactory then it is likely that the container has set one without your knowledge. In this case, consider using the commons-logging-adapters.jar file or specifying the standard LogFactory from the command line. Help can be found @http://commons.apache.org/logging/troubleshooting.html.)
>   at org.apache.commons.logging.LogFactory.createFactory(LogFactory.java:1271)
>   at org.apache.commons.logging.LogFactory$2.run(LogFactory.java:1065)
>   at java.security.AccessController.doPrivileged(Native Method)
>   at org.apache.commons.logging.LogFactory.newFactory(LogFactory.java:1062)
>   at org.apache.commons.logging.LogFactory.getFactory(LogFactory.java:612)
>   at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:685)
>   at  at org.apache.axis2.transport.http.AxisServlet.<clinit>(AxisServlet.java:78).null(Unknown Source)
>   ... 61 more
> Caused by: java.lang.ClassCastException: The application has specified that a custom LogFactory implementation should be used but Class 'com.ibm.ws.commons.logging.TrLogFactory' cannot be converted to 'org.apache.commons.logging.LogFactory'. The conflict is caused by the presence of multiple LogFactory classes in incompatible classloaders. Background can be found in http://commons.apache.org/logging/tech.html. If you have not explicitly specified a custom LogFactory then it is likely that the container has set one without your knowledge. In this case, consider using the commons-logging-adapters.jar file or specifying the standard LogFactory from the command line. Help can be found @http://commons.apache.org/logging/troubleshooting.html.
>   at org.apache.commons.logging.LogFactory.createFactory(LogFactory.java:1220)
>   ... 67 more
>
>
>      And if I reset it as PARENT_FIRST, I got the exception I mentioned before:
>
> javax.servlet.ServletException: javax.xml.namespace.QName: method<init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V not found
>   at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doInit(StrictServletInstance.java:99)
>   at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._init(StrictLifecycleServlet.java:147)
>   at com.ibm.ws.webcontainer.servlet.PreInitializedServletState.init(StrictLifecycleServlet.java:270)
>   at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.init(StrictLifecycleServlet.java:113)
>   at com.ibm.ws.webcontainer.servlet.ServletInstance.init(ServletInstance.java:189)
> .....
>
>
> Thanks.
>
> Regards
> Jeffty
>
> ----- Original Message -----
> From: "Davanum Srinivas"<da...@gmail.com>
> To:<ax...@ws.apache.org>
> Cc:<so...@gmail.com>
> Sent: Sunday, June 21, 2009 10:36 PM
> Subject: Re: axis2 on webshpere response != axis2 on glassfish response........ why?
>
>
>> Jeffty,
>>
>> Did you try PARENT_LAST?
>>
>> You may want to try asking websphere specific questions on this forum:
>> http://www.ibm.com/developerworks/forums/forum.jspa?forumID=266&start=0
>>
>> -- dims
>>
>> On 06/21/2009 09:39 AM, jeffty wrote:
>>> Hello xedus,
>>>
>>>       I wonder how do you deploy axis2 in websphere. I've tried to deploy the war file of axis2 1.3, 1.4 and 1.41 on Websphere 5.1 and failed every time.
>>>
>>>       I only got such exceptions:
>>>
>>> javax.servlet.ServletException: javax.xml.namespace.QName: method<init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V not found
>>>    at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doInit(StrictServletInstance.java:99)
>>>    at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._init(StrictLifecycleServlet.java:147)
>>>    at com.ibm.ws.webcontainer.servlet.PreInitializedServletState.init(StrictLifecycleServlet.java:270)
>>>    at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.init(StrictLifecycleServlet.java:113)
>>>    at com.ibm.ws.webcontainer.servlet.ServletInstance.init(ServletInstance.java:189)
>>>    at javax.servlet.GenericServlet.init(GenericServlet.java:258)
>>> ....
>>>
>>>       I set parent last setting on the axis2.war file in the server. But it doesn't work.
>>>
>>>       Any information is appreciated, thanks a lot.
>>>
>>>
>>> Regards
>>> Jeffty
>>>
>>>
>>> ----- Original Message -----
>>> From: "xedus"<so...@gmail.com>
>>> To:<ax...@ws.apache.org>
>>> Sent: Sunday, June 21, 2009 4:29 PM
>>> Subject: axis2 on webshpere response != axis2 on glassfish response........ why?
>>>
>>>
>>>> i have a web service deployed to axis2 on websphere and the same web service
>>>> deployed to axis2 on glassfish v2.
>>>>
>>>> the client is a desktop application generated and written in C# using
>>>> VS2003.
>>>>
>>>> the client works well with the service on websphere which it was originally
>>>> designed for. but not with the service on glassfish.
>>>> the WSDL generated for both services is exactly the same.
>>>>
>>>> i noticed that the response generated from the service on web sphere has the
>>>> xmlns on every attribute
>>>> this is not true for the same service on axis2 on glassfish.
>>>>
>>>> this is the response message from the service on axis2 on websphere:
>>>>
>>>> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>>>> <soapenv:Body>
>>>> <ns:getPrintJobResponse xmlns:ns="http://myService/xsd">
>>>> <ns:return>
>>>>    <bookingRef xmlns="http://myService/xsd">XXXXXX7730000010001</bookingRef>
>>>>    <jobID xmlns="http://myService/xsd">209572</jobID>
>>>>    <printerName xmlns="http://myService/xsd">NAME</printerName>
>>>>    <qty xmlns="http://myService/xsd">3</qty>
>>>>    </ns:return>
>>>>    </ns:getPrintJobResponse>
>>>>    </soapenv:Body>
>>>> </soapenv:Envelope>
>>>>
>>>>
>>>>
>>>> notice that xmlns value appears in all the properties (bookingRef, jobID,
>>>> printerName, qty).
>>>>
>>>> and here is the same response from axis2 on glassfish
>>>>
>>>> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>>>> <soapenv:Body>
>>>> <ns:getPrintJobResponse xmlns:ns="http://myService/xsd">
>>>> <ns:return>
>>>>    <bookingRef xmlns="http://myService/xsd">XXXXXX7730000010001</bookingRef>
>>>>    <jobID>209552</jobID>
>>>>    <printerName>NAME</printerName>
>>>>    <qty>15</qty>
>>>>    </ns:return>
>>>>    </ns:getPrintJobResponse>
>>>> </soapenv:Body>
>>>>    </soapenv:Envelope>
>>>>
>>>>
>>>> notice that only the bookingRef has the xmlns
>>>>
>>>>
>>>> my service is a POJO without any annotations. it is wrapped as .aar
>>>>
>>>>
>>>> my questions...
>>>>
>>>> A. why is this happening although i'm deploying to a common denominator on
>>>> both app. servers which is the axis2.war ?
>>>> B. how do i make the response from glassfish matches the one from webshpere?
>>>> where do i have to change and what?
>>>>
>>>>    please note that i can't change he client code so my only bid is to make
>>>> it work on glassfish as it was working on websphere.
>>>> --
>>>> View this message in context: http://www.nabble.com/axis2-on-webshpere-response-%21%3D-axis2-on-glassfish-response........-why--tp24132443p24132443.html
>>>> Sent from the Axis - User mailing list archive at Nabble.com.
>>> >

Re: axis2 on webshpere response != axis2 on glassfish response........ why?

Posted by Davanum Srinivas <da...@gmail.com>.
jeffty,

There's some additional information in the websphere infocenter:
http://www-01.ibm.com/support/docview.wss?uid=swg27004610&aid=1

http://www.google.com/#hl=en&q=commons-logging+PARENT_LAST+site%3Aibm.com

thanks,
dims

On 06/21/2009 11:00 AM, jeffty wrote:
> Hi dims,
>
>      I've tried set parent_last for the applications->axis2->web module->axis2.war->PARENT_LAST, after that I got the exception:
>
> java.lang.ExceptionInInitializerError
>   at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>   at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:79)
>   at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java(Compiled Code))
>   at java.lang.reflect.Constructor.newInstance(Constructor.java(Compiled Code))
>   at java.lang.Class.newInstance3(Class.java(Compiled Code))
>   at java.lang.Class.newInstance(Class.java(Compiled Code))
>   at java.beans.Beans.instantiate(Beans.java:218)
>   at java.beans.Beans.instantiate(Beans.java:62)
> .....
> Caused by: org.apache.commons.logging.LogConfigurationException: The chosen LogFactory implementation does not extend LogFactory. Please check your configuration. (Caused by java.lang.ClassCastException: The application has specified that a custom LogFactory implementation should be used but Class 'com.ibm.ws.commons.logging.TrLogFactory' cannot be converted to 'org.apache.commons.logging.LogFactory'. The conflict is caused by the presence of multiple LogFactory classes in incompatible classloaders. Background can be found in http://commons.apache.org/logging/tech.html. If you have not explicitly specified a custom LogFactory then it is likely that the container has set one without your knowledge. In this case, consider using the commons-logging-adapters.jar file or specifying the standard LogFactory from the command line. Help can be found @http://commons.apache.org/logging/troubleshooting.html.)
>   at org.apache.commons.logging.LogFactory.createFactory(LogFactory.java:1271)
>   at org.apache.commons.logging.LogFactory$2.run(LogFactory.java:1065)
>   at java.security.AccessController.doPrivileged(Native Method)
>   at org.apache.commons.logging.LogFactory.newFactory(LogFactory.java:1062)
>   at org.apache.commons.logging.LogFactory.getFactory(LogFactory.java:612)
>   at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:685)
>   at  at org.apache.axis2.transport.http.AxisServlet.<clinit>(AxisServlet.java:78).null(Unknown Source)
>   ... 61 more
> Caused by: java.lang.ClassCastException: The application has specified that a custom LogFactory implementation should be used but Class 'com.ibm.ws.commons.logging.TrLogFactory' cannot be converted to 'org.apache.commons.logging.LogFactory'. The conflict is caused by the presence of multiple LogFactory classes in incompatible classloaders. Background can be found in http://commons.apache.org/logging/tech.html. If you have not explicitly specified a custom LogFactory then it is likely that the container has set one without your knowledge. In this case, consider using the commons-logging-adapters.jar file or specifying the standard LogFactory from the command line. Help can be found @http://commons.apache.org/logging/troubleshooting.html.
>   at org.apache.commons.logging.LogFactory.createFactory(LogFactory.java:1220)
>   ... 67 more
>
>
>      And if I reset it as PARENT_FIRST, I got the exception I mentioned before:
>
> javax.servlet.ServletException: javax.xml.namespace.QName: method<init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V not found
>   at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doInit(StrictServletInstance.java:99)
>   at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._init(StrictLifecycleServlet.java:147)
>   at com.ibm.ws.webcontainer.servlet.PreInitializedServletState.init(StrictLifecycleServlet.java:270)
>   at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.init(StrictLifecycleServlet.java:113)
>   at com.ibm.ws.webcontainer.servlet.ServletInstance.init(ServletInstance.java:189)
> .....
>
>
> Thanks.
>
> Regards
> Jeffty
>
> ----- Original Message -----
> From: "Davanum Srinivas"<da...@gmail.com>
> To:<ax...@ws.apache.org>
> Cc:<so...@gmail.com>
> Sent: Sunday, June 21, 2009 10:36 PM
> Subject: Re: axis2 on webshpere response != axis2 on glassfish response........ why?
>
>
>> Jeffty,
>>
>> Did you try PARENT_LAST?
>>
>> You may want to try asking websphere specific questions on this forum:
>> http://www.ibm.com/developerworks/forums/forum.jspa?forumID=266&start=0
>>
>> -- dims
>>
>> On 06/21/2009 09:39 AM, jeffty wrote:
>>> Hello xedus,
>>>
>>>       I wonder how do you deploy axis2 in websphere. I've tried to deploy the war file of axis2 1.3, 1.4 and 1.41 on Websphere 5.1 and failed every time.
>>>
>>>       I only got such exceptions:
>>>
>>> javax.servlet.ServletException: javax.xml.namespace.QName: method<init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V not found
>>>    at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doInit(StrictServletInstance.java:99)
>>>    at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._init(StrictLifecycleServlet.java:147)
>>>    at com.ibm.ws.webcontainer.servlet.PreInitializedServletState.init(StrictLifecycleServlet.java:270)
>>>    at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.init(StrictLifecycleServlet.java:113)
>>>    at com.ibm.ws.webcontainer.servlet.ServletInstance.init(ServletInstance.java:189)
>>>    at javax.servlet.GenericServlet.init(GenericServlet.java:258)
>>> ....
>>>
>>>       I set parent last setting on the axis2.war file in the server. But it doesn't work.
>>>
>>>       Any information is appreciated, thanks a lot.
>>>
>>>
>>> Regards
>>> Jeffty
>>>
>>>
>>> ----- Original Message -----
>>> From: "xedus"<so...@gmail.com>
>>> To:<ax...@ws.apache.org>
>>> Sent: Sunday, June 21, 2009 4:29 PM
>>> Subject: axis2 on webshpere response != axis2 on glassfish response........ why?
>>>
>>>
>>>> i have a web service deployed to axis2 on websphere and the same web service
>>>> deployed to axis2 on glassfish v2.
>>>>
>>>> the client is a desktop application generated and written in C# using
>>>> VS2003.
>>>>
>>>> the client works well with the service on websphere which it was originally
>>>> designed for. but not with the service on glassfish.
>>>> the WSDL generated for both services is exactly the same.
>>>>
>>>> i noticed that the response generated from the service on web sphere has the
>>>> xmlns on every attribute
>>>> this is not true for the same service on axis2 on glassfish.
>>>>
>>>> this is the response message from the service on axis2 on websphere:
>>>>
>>>> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>>>> <soapenv:Body>
>>>> <ns:getPrintJobResponse xmlns:ns="http://myService/xsd">
>>>> <ns:return>
>>>>    <bookingRef xmlns="http://myService/xsd">XXXXXX7730000010001</bookingRef>
>>>>    <jobID xmlns="http://myService/xsd">209572</jobID>
>>>>    <printerName xmlns="http://myService/xsd">NAME</printerName>
>>>>    <qty xmlns="http://myService/xsd">3</qty>
>>>>    </ns:return>
>>>>    </ns:getPrintJobResponse>
>>>>    </soapenv:Body>
>>>> </soapenv:Envelope>
>>>>
>>>>
>>>>
>>>> notice that xmlns value appears in all the properties (bookingRef, jobID,
>>>> printerName, qty).
>>>>
>>>> and here is the same response from axis2 on glassfish
>>>>
>>>> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>>>> <soapenv:Body>
>>>> <ns:getPrintJobResponse xmlns:ns="http://myService/xsd">
>>>> <ns:return>
>>>>    <bookingRef xmlns="http://myService/xsd">XXXXXX7730000010001</bookingRef>
>>>>    <jobID>209552</jobID>
>>>>    <printerName>NAME</printerName>
>>>>    <qty>15</qty>
>>>>    </ns:return>
>>>>    </ns:getPrintJobResponse>
>>>> </soapenv:Body>
>>>>    </soapenv:Envelope>
>>>>
>>>>
>>>> notice that only the bookingRef has the xmlns
>>>>
>>>>
>>>> my service is a POJO without any annotations. it is wrapped as .aar
>>>>
>>>>
>>>> my questions...
>>>>
>>>> A. why is this happening although i'm deploying to a common denominator on
>>>> both app. servers which is the axis2.war ?
>>>> B. how do i make the response from glassfish matches the one from webshpere?
>>>> where do i have to change and what?
>>>>
>>>>    please note that i can't change he client code so my only bid is to make
>>>> it work on glassfish as it was working on websphere.
>>>> --
>>>> View this message in context: http://www.nabble.com/axis2-on-webshpere-response-%21%3D-axis2-on-glassfish-response........-why--tp24132443p24132443.html
>>>> Sent from the Axis - User mailing list archive at Nabble.com.
>>> >

Re: axis2 on webshpere response != axis2 on glassfish response........ why?

Posted by jeffty <je...@gmail.com>.
Hi dims,

    I've tried set parent_last for the applications->axis2->web module->axis2.war->PARENT_LAST, after that I got the exception:

java.lang.ExceptionInInitializerError
 at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
 at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:79)
 at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java(Compiled Code))
 at java.lang.reflect.Constructor.newInstance(Constructor.java(Compiled Code))
 at java.lang.Class.newInstance3(Class.java(Compiled Code))
 at java.lang.Class.newInstance(Class.java(Compiled Code))
 at java.beans.Beans.instantiate(Beans.java:218)
 at java.beans.Beans.instantiate(Beans.java:62)
.....
Caused by: org.apache.commons.logging.LogConfigurationException: The chosen LogFactory implementation does not extend LogFactory. Please check your configuration. (Caused by java.lang.ClassCastException: The application has specified that a custom LogFactory implementation should be used but Class 'com.ibm.ws.commons.logging.TrLogFactory' cannot be converted to 'org.apache.commons.logging.LogFactory'. The conflict is caused by the presence of multiple LogFactory classes in incompatible classloaders. Background can be found in http://commons.apache.org/logging/tech.html. If you have not explicitly specified a custom LogFactory then it is likely that the container has set one without your knowledge. In this case, consider using the commons-logging-adapters.jar file or specifying the standard LogFactory from the command line. Help can be found @http://commons.apache.org/logging/troubleshooting.html.)
 at org.apache.commons.logging.LogFactory.createFactory(LogFactory.java:1271)
 at org.apache.commons.logging.LogFactory$2.run(LogFactory.java:1065)
 at java.security.AccessController.doPrivileged(Native Method)
 at org.apache.commons.logging.LogFactory.newFactory(LogFactory.java:1062)
 at org.apache.commons.logging.LogFactory.getFactory(LogFactory.java:612)
 at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:685)
 at  at org.apache.axis2.transport.http.AxisServlet.<clinit>(AxisServlet.java:78).null(Unknown Source)
 ... 61 more
Caused by: java.lang.ClassCastException: The application has specified that a custom LogFactory implementation should be used but Class 'com.ibm.ws.commons.logging.TrLogFactory' cannot be converted to 'org.apache.commons.logging.LogFactory'. The conflict is caused by the presence of multiple LogFactory classes in incompatible classloaders. Background can be found in http://commons.apache.org/logging/tech.html. If you have not explicitly specified a custom LogFactory then it is likely that the container has set one without your knowledge. In this case, consider using the commons-logging-adapters.jar file or specifying the standard LogFactory from the command line. Help can be found @http://commons.apache.org/logging/troubleshooting.html.
 at org.apache.commons.logging.LogFactory.createFactory(LogFactory.java:1220)
 ... 67 more


    And if I reset it as PARENT_FIRST, I got the exception I mentioned before:

javax.servlet.ServletException: javax.xml.namespace.QName: method <init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V not found
 at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doInit(StrictServletInstance.java:99)
 at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._init(StrictLifecycleServlet.java:147)
 at com.ibm.ws.webcontainer.servlet.PreInitializedServletState.init(StrictLifecycleServlet.java:270)
 at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.init(StrictLifecycleServlet.java:113)
 at com.ibm.ws.webcontainer.servlet.ServletInstance.init(ServletInstance.java:189)
.....


Thanks.

Regards
Jeffty

----- Original Message ----- 
From: "Davanum Srinivas" <da...@gmail.com>
To: <ax...@ws.apache.org>
Cc: <so...@gmail.com>
Sent: Sunday, June 21, 2009 10:36 PM
Subject: Re: axis2 on webshpere response != axis2 on glassfish response........ why?


> Jeffty,
> 
> Did you try PARENT_LAST?
> 
> You may want to try asking websphere specific questions on this forum:
> http://www.ibm.com/developerworks/forums/forum.jspa?forumID=266&start=0
> 
> -- dims
> 
> On 06/21/2009 09:39 AM, jeffty wrote:
>> Hello xedus,
>>
>>      I wonder how do you deploy axis2 in websphere. I've tried to deploy the war file of axis2 1.3, 1.4 and 1.41 on Websphere 5.1 and failed every time.
>>
>>      I only got such exceptions:
>>
>> javax.servlet.ServletException: javax.xml.namespace.QName: method<init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V not found
>>   at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doInit(StrictServletInstance.java:99)
>>   at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._init(StrictLifecycleServlet.java:147)
>>   at com.ibm.ws.webcontainer.servlet.PreInitializedServletState.init(StrictLifecycleServlet.java:270)
>>   at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.init(StrictLifecycleServlet.java:113)
>>   at com.ibm.ws.webcontainer.servlet.ServletInstance.init(ServletInstance.java:189)
>>   at javax.servlet.GenericServlet.init(GenericServlet.java:258)
>> ....
>>
>>      I set parent last setting on the axis2.war file in the server. But it doesn't work.
>>
>>      Any information is appreciated, thanks a lot.
>>
>>
>> Regards
>> Jeffty
>>
>>
>> ----- Original Message -----
>> From: "xedus"<so...@gmail.com>
>> To:<ax...@ws.apache.org>
>> Sent: Sunday, June 21, 2009 4:29 PM
>> Subject: axis2 on webshpere response != axis2 on glassfish response........ why?
>>
>>
>>> i have a web service deployed to axis2 on websphere and the same web service
>>> deployed to axis2 on glassfish v2.
>>>
>>> the client is a desktop application generated and written in C# using
>>> VS2003.
>>>
>>> the client works well with the service on websphere which it was originally
>>> designed for. but not with the service on glassfish.
>>> the WSDL generated for both services is exactly the same.
>>>
>>> i noticed that the response generated from the service on web sphere has the
>>> xmlns on every attribute
>>> this is not true for the same service on axis2 on glassfish.
>>>
>>> this is the response message from the service on axis2 on websphere:
>>>
>>> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>>> <soapenv:Body>
>>> <ns:getPrintJobResponse xmlns:ns="http://myService/xsd">
>>> <ns:return>
>>>   <bookingRef xmlns="http://myService/xsd">XXXXXX7730000010001</bookingRef>
>>>   <jobID xmlns="http://myService/xsd">209572</jobID>
>>>   <printerName xmlns="http://myService/xsd">NAME</printerName>
>>>   <qty xmlns="http://myService/xsd">3</qty>
>>>   </ns:return>
>>>   </ns:getPrintJobResponse>
>>>   </soapenv:Body>
>>> </soapenv:Envelope>
>>>
>>>
>>>
>>> notice that xmlns value appears in all the properties (bookingRef, jobID,
>>> printerName, qty).
>>>
>>> and here is the same response from axis2 on glassfish
>>>
>>> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>>> <soapenv:Body>
>>> <ns:getPrintJobResponse xmlns:ns="http://myService/xsd">
>>> <ns:return>
>>>   <bookingRef xmlns="http://myService/xsd">XXXXXX7730000010001</bookingRef>
>>>   <jobID>209552</jobID>
>>>   <printerName>NAME</printerName>
>>>   <qty>15</qty>
>>>   </ns:return>
>>>   </ns:getPrintJobResponse>
>>> </soapenv:Body>
>>>   </soapenv:Envelope>
>>>
>>>
>>> notice that only the bookingRef has the xmlns
>>>
>>>
>>> my service is a POJO without any annotations. it is wrapped as .aar
>>>
>>>
>>> my questions...
>>>
>>> A. why is this happening although i'm deploying to a common denominator on
>>> both app. servers which is the axis2.war ?
>>> B. how do i make the response from glassfish matches the one from webshpere?
>>> where do i have to change and what?
>>>
>>>   please note that i can't change he client code so my only bid is to make
>>> it work on glassfish as it was working on websphere.
>>> --
>>> View this message in context: http://www.nabble.com/axis2-on-webshpere-response-%21%3D-axis2-on-glassfish-response........-why--tp24132443p24132443.html
>>> Sent from the Axis - User mailing list archive at Nabble.com.
>>>

Re: axis2 on webshpere response != axis2 on glassfish response........ why?

Posted by Davanum Srinivas <da...@gmail.com>.
Jeffty,

Did you try PARENT_LAST?

You may want to try asking websphere specific questions on this forum:
http://www.ibm.com/developerworks/forums/forum.jspa?forumID=266&start=0

-- dims

On 06/21/2009 09:39 AM, jeffty wrote:
> Hello xedus,
>
>      I wonder how do you deploy axis2 in websphere. I've tried to deploy the war file of axis2 1.3, 1.4 and 1.41 on Websphere 5.1 and failed every time.
>
>      I only got such exceptions:
>
> javax.servlet.ServletException: javax.xml.namespace.QName: method<init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V not found
>   at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doInit(StrictServletInstance.java:99)
>   at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._init(StrictLifecycleServlet.java:147)
>   at com.ibm.ws.webcontainer.servlet.PreInitializedServletState.init(StrictLifecycleServlet.java:270)
>   at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.init(StrictLifecycleServlet.java:113)
>   at com.ibm.ws.webcontainer.servlet.ServletInstance.init(ServletInstance.java:189)
>   at javax.servlet.GenericServlet.init(GenericServlet.java:258)
> ....
>
>      I set parent last setting on the axis2.war file in the server. But it doesn't work.
>
>      Any information is appreciated, thanks a lot.
>
>
> Regards
> Jeffty
>
>
> ----- Original Message -----
> From: "xedus"<so...@gmail.com>
> To:<ax...@ws.apache.org>
> Sent: Sunday, June 21, 2009 4:29 PM
> Subject: axis2 on webshpere response != axis2 on glassfish response........ why?
>
>
>> i have a web service deployed to axis2 on websphere and the same web service
>> deployed to axis2 on glassfish v2.
>>
>> the client is a desktop application generated and written in C# using
>> VS2003.
>>
>> the client works well with the service on websphere which it was originally
>> designed for. but not with the service on glassfish.
>> the WSDL generated for both services is exactly the same.
>>
>> i noticed that the response generated from the service on web sphere has the
>> xmlns on every attribute
>> this is not true for the same service on axis2 on glassfish.
>>
>> this is the response message from the service on axis2 on websphere:
>>
>> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>> <soapenv:Body>
>> <ns:getPrintJobResponse xmlns:ns="http://myService/xsd">
>> <ns:return>
>>   <bookingRef xmlns="http://myService/xsd">XXXXXX7730000010001</bookingRef>
>>   <jobID xmlns="http://myService/xsd">209572</jobID>
>>   <printerName xmlns="http://myService/xsd">NAME</printerName>
>>   <qty xmlns="http://myService/xsd">3</qty>
>>   </ns:return>
>>   </ns:getPrintJobResponse>
>>   </soapenv:Body>
>> </soapenv:Envelope>
>>
>>
>>
>> notice that xmlns value appears in all the properties (bookingRef, jobID,
>> printerName, qty).
>>
>> and here is the same response from axis2 on glassfish
>>
>> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>> <soapenv:Body>
>> <ns:getPrintJobResponse xmlns:ns="http://myService/xsd">
>> <ns:return>
>>   <bookingRef xmlns="http://myService/xsd">XXXXXX7730000010001</bookingRef>
>>   <jobID>209552</jobID>
>>   <printerName>NAME</printerName>
>>   <qty>15</qty>
>>   </ns:return>
>>   </ns:getPrintJobResponse>
>> </soapenv:Body>
>>   </soapenv:Envelope>
>>
>>
>> notice that only the bookingRef has the xmlns
>>
>>
>> my service is a POJO without any annotations. it is wrapped as .aar
>>
>>
>> my questions...
>>
>> A. why is this happening although i'm deploying to a common denominator on
>> both app. servers which is the axis2.war ?
>> B. how do i make the response from glassfish matches the one from webshpere?
>> where do i have to change and what?
>>
>>   please note that i can't change he client code so my only bid is to make
>> it work on glassfish as it was working on websphere.
>> --
>> View this message in context: http://www.nabble.com/axis2-on-webshpere-response-%21%3D-axis2-on-glassfish-response........-why--tp24132443p24132443.html
>> Sent from the Axis - User mailing list archive at Nabble.com.
>>

Re: axis2 on webshpere response != axis2 on glassfish response........ why?

Posted by jeffty <je...@gmail.com>.
Hello xedus,

    I wonder how do you deploy axis2 in websphere. I've tried to deploy the war file of axis2 1.3, 1.4 and 1.41 on Websphere 5.1 and failed every time.

    I only got such exceptions:

javax.servlet.ServletException: javax.xml.namespace.QName: method <init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V not found
 at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doInit(StrictServletInstance.java:99)
 at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._init(StrictLifecycleServlet.java:147)
 at com.ibm.ws.webcontainer.servlet.PreInitializedServletState.init(StrictLifecycleServlet.java:270)
 at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.init(StrictLifecycleServlet.java:113)
 at com.ibm.ws.webcontainer.servlet.ServletInstance.init(ServletInstance.java:189)
 at javax.servlet.GenericServlet.init(GenericServlet.java:258)
....

    I set parent last setting on the axis2.war file in the server. But it doesn't work.

    Any information is appreciated, thanks a lot.


Regards
Jeffty


----- Original Message ----- 
From: "xedus" <so...@gmail.com>
To: <ax...@ws.apache.org>
Sent: Sunday, June 21, 2009 4:29 PM
Subject: axis2 on webshpere response != axis2 on glassfish response........ why?


> 
> i have a web service deployed to axis2 on websphere and the same web service
> deployed to axis2 on glassfish v2.
> 
> the client is a desktop application generated and written in C# using
> VS2003.
> 
> the client works well with the service on websphere which it was originally
> designed for. but not with the service on glassfish.
> the WSDL generated for both services is exactly the same.
> 
> i noticed that the response generated from the service on web sphere has the
> xmlns on every attribute 
> this is not true for the same service on axis2 on glassfish.
> 
> this is the response message from the service on axis2 on websphere:
> 
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
> <soapenv:Body>
> <ns:getPrintJobResponse xmlns:ns="http://myService/xsd">
> <ns:return>
>  <bookingRef xmlns="http://myService/xsd">XXXXXX7730000010001</bookingRef> 
>  <jobID xmlns="http://myService/xsd">209572</jobID> 
>  <printerName xmlns="http://myService/xsd">NAME</printerName> 
>  <qty xmlns="http://myService/xsd">3</qty> 
>  </ns:return>
>  </ns:getPrintJobResponse>
>  </soapenv:Body>
> </soapenv:Envelope>
>  
> 
> 
> notice that xmlns value appears in all the properties (bookingRef, jobID,
> printerName, qty).
> 
> and here is the same response from axis2 on glassfish
> 
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
> <soapenv:Body>
> <ns:getPrintJobResponse xmlns:ns="http://myService/xsd">
> <ns:return>
>  <bookingRef xmlns="http://myService/xsd">XXXXXX7730000010001</bookingRef> 
>  <jobID>209552</jobID> 
>  <printerName>NAME</printerName> 
>  <qty>15</qty> 
>  </ns:return> 
>  </ns:getPrintJobResponse>
> </soapenv:Body>
>  </soapenv:Envelope>
> 
> 
> notice that only the bookingRef has the xmlns
> 
> 
> my service is a POJO without any annotations. it is wrapped as .aar
> 
> 
> my questions...
> 
> A. why is this happening although i'm deploying to a common denominator on
> both app. servers which is the axis2.war ?
> B. how do i make the response from glassfish matches the one from webshpere?
> where do i have to change and what?
> 
>  please note that i can't change he client code so my only bid is to make
> it work on glassfish as it was working on websphere.
> -- 
> View this message in context: http://www.nabble.com/axis2-on-webshpere-response-%21%3D-axis2-on-glassfish-response........-why--tp24132443p24132443.html
> Sent from the Axis - User mailing list archive at Nabble.com.
>

Re: axis2 on webshpere response != axis2 on glassfish response........ why?

Posted by jeffty <je...@gmail.com>.
Hello xedus,

    Thank you and Jack Sprat very much for your help!

    I copy all jars from axis2 to Websphere's lib folder and it works because setting parent_last and single gets the servlet init exception again and again.l

    Thank you again!

Regards
Jeffty

----- Original Message ----- 
From: "xedus" <so...@gmail.com>
To: <ax...@ws.apache.org>
Sent: Monday, June 22, 2009 2:06 PM
Subject: Re: axis2 on webshpere response != axis2 on glassfish response........ why?


> 
> did you just completely hijacked my thread ?   :)
> now make it up for me and  help me solve my issue
> -- 
> View this message in context: http://www.nabble.com/axis2-on-webshpere-response-%21%3D-axis2-on-glassfish-response........-why--tp24132443p24142133.html
> Sent from the Axis - User mailing list archive at Nabble.com.
>

Re: axis2 on webshpere response != axis2 on glassfish response........ why?

Posted by xedus <so...@gmail.com>.
did you just completely hijacked my thread ?   :)
now make it up for me and  help me solve my issue
-- 
View this message in context: http://www.nabble.com/axis2-on-webshpere-response-%21%3D-axis2-on-glassfish-response........-why--tp24132443p24142133.html
Sent from the Axis - User mailing list archive at Nabble.com.