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"<[email protected]>
To:<[email protected]>
Cc:<[email protected]>
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"<[email protected]>
To:<[email protected]>
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.
>

Reply via email to