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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to