You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Deepal Jayasinghe (JIRA)" <ji...@apache.org> on 2007/07/27 12:00:18 UTC
[jira] Resolved: (AXIS2-2989) ServiceTCCL=service but
org.apache.commons.logging.LogFactory uses WebappClassLoader
[ https://issues.apache.org/jira/browse/AXIS2-2989?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Deepal Jayasinghe resolved AXIS2-2989.
--------------------------------------
Resolution: Won't Fix
I do not think that Axis2 can switch back to 1.0.4 so , I have to mark this as wont fix.
Thanks
Deepal
> ServiceTCCL=service but org.apache.commons.logging.LogFactory uses WebappClassLoader
> ------------------------------------------------------------------------------------
>
> Key: AXIS2-2989
> URL: https://issues.apache.org/jira/browse/AXIS2-2989
> Project: Axis 2.0 (Axis2)
> Issue Type: Bug
> Affects Versions: 1.2
> Environment: Linux (unknown) i386 2.6.5-7.282-bigsmp
> Java(TM) 2 Runtime Environment, Standard Edition 1.5.0_12-b04 Java HotSpot(TM) Server VM)
> Apache Tomcat/5.5.23
> Reporter: Fred Hauschel
>
> I'd like to use a commons-logging (log4j) for each service in axis2 container. But SimpleLog for the axis2 stuff.
> In "apache-tomcat-5.5.23/webapps/axis2/WEB-INF/classes/commons-logging.propertiesI've aktivated: org.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog. In the root of my aar there is a "commons-logging.properties" with "org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JLogger".
> The commons-logging LogFactory:
> sample: private static final Log LOG = LogFactory.getLog(ReportServiceMessageReceiver.class.getName());
> Uses the SimpleLog and not the Log4j! The following Code is from LogFactory.getContextClassLoader():
> Method method = Thread.class.getMethod("getContextClassLoader", null);
> classLoader = (ClassLoader)method.invoke(Thread.currentThread(), null);
> It returns me the "WebappClassLoader" not your axis classloader. I think it should be somethink like DeploymentClassLoader?!
> I found this blog: http://wso2.org/blog/dims/1131 and understand it like <parameter name="ServiceTCCL">service</parameter> should set the axis classloader as TCCL. So the code above should return the axis classloader, shouldn't it?
> Thanks Fredy
> There is my services.xml:
> <!-- This file was auto-generated from WSDL -->
> <!-- by the Apache Axis2 version: #axisVersion# #today# -->
> <serviceGroup name="ReportService">
> <service name="ReportServiceInitializer"
> class="de.xyz.reporting.startup.ServiceLifeCycle">
> <parameter name="ServiceClass">
> de.xyz.reporting.startup.ServiceLifeCycle
> </parameter>
> <parameter name="ServiceTCCL">composite</parameter>
> <operation name="springInit">
> <messageReceiver
> class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver" />
> </operation>
> </service>
> <service name="ReportService">
> <useOriginalwsdl>true</useOriginalwsdl>
> <parameter name="ServiceTCCL">service</parameter>
> <parameter name="ServiceObjectSupplier">
> org.apache.axis2.extensions.spring.receivers.SpringAppContextAwareObjectSupplier
> </parameter>
> <parameter name="SpringBeanName">
> ReportService
> </parameter>
> <operation name="yourMethod">
> <messageReceiver mep="http://www.w3.org/ns/wsdl/in-out"
> class="de.xyz.reporting.glue.ReportServiceMessageReceiver" />
> </operation>
> <operation name="getServiceInfo">
> <messageReceiver mep="http://www.w3.org/ns/wsdl/in-out"
> class="de.xyz.reporting.glue.ReportServiceMessageReceiver" />
> </operation>
> </service>
> </serviceGroup>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org