我用 Spring 设置了一个 JAX-WS,除了 log4j 之外,一切都有效:
我正在关注官方的 sping 文档: http ://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/remoting.html#remoting-web-services-jaxws-export-servlet
端点定义如下:
import org.springframework.web.context.support.SpringBeanAutowiringSupport;
@WebService(serviceName="AccountService")
public class AccountServiceEndpoint extends SpringBeanAutowiringSupport {
@Autowired
private AccountService biz;
@WebMethod
public void insertAccount(Account acc) {
biz.insertAccount(acc);
}
然后我尝试在 AccountService 的 impl 中写入日志:
public class AccountServiceImpl implements AccountService {
private static Logger logger = Logger.getLogger(AccountServiceImpl.class.getName());
...
public void insertAccount(Account acc) {
logger.debug("someting... " )
....
}
}
并在 web.xml
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>classpath:my_log4j.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
我已经测试了 my_log4j.xml,配置是绝对正确的,而且我在启动时也得到了显示 my_log4j.xml 在 WebApplicationContext 初始化之前加载的日志
我想知道是否是因为 WebService 用完了 Spring 那么 log4jConfigLocation 不起作用
我使用的服务器是 Websphere Application Server 7.0