views:

309

answers:

0

I have created a simple axis2 webservice to understand logging functionality in a webservice. in this sample webservice, when a client calls this webservice, first it reads the log4j.property file. then i can see the logs being printed on console. but i have included file appender too into the property file. but i can not file the log file any where in my sample webapplication. i am using tomcat to run the webservice. following is webservice interface method called by client. thanx in advance for any help

package test;

import java.io.IOException;

import java.io.InputStream;

import java.util.Properties;

import org.apache.log4j.BasicConfigurator;

import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;

public class WSInterface {

static final Logger logger = Logger.getLogger(WSInterface.class);

public String log4jTest(String input){

    InputStream inputStream = this.getClass().getClassLoader()  
                     .getResourceAsStream(input);  

    Properties properties = new Properties();  

    System.out.println("InputStream is: " + inputStream);  

    //load the inputStream using the Properties  
    try {
        properties.load(inputStream);
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    PropertyConfigurator.configure(properties);
    logger.debug("Hello World!");


    Class myclass = WSInterface.class;
    String url =  myclass.getResource("WSInterface.class").toString();   

    String output = "";
    return url;
}

}