WebSphereApplicationServer:servlet部署描述符的web.xml位置和过滤器servlet将记录的日志文件位置
我在Tomcat中部署了一个过滤器,它记录所有servlet的URL和请求参数。 现在,我想在websphereapplicationserver中部署相同的组件。 1.在哪里复制我的筛选器类文件? 2.web.xml的位置,我必须在其中输入筛选器类部署描述符xml标记。 3.筛选器类将在其中记录URL和请求参数的日志文件 下面是我的过滤器类的代码WebSphereApplicationServer:servlet部署描述符的web.xml位置和过滤器servlet将记录的日志文件位置,websphere,web.xml,logfile,Websphere,Web.xml,Logfile,我在Tomcat中部署了一个过滤器,它记录所有servlet的URL和请求参数。 现在,我想在websphereapplicationserver中部署相同的组件。 1.在哪里复制我的筛选器类文件? 2.web.xml的位置,我必须在其中输入筛选器类部署描述符xml标记。 3.筛选器类将在其中记录URL和请求参数的日志文件 下面是我的过滤器类的代码 import java.io.*; import javax.servlet.*; import javax.servlet.http.*; imp
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.text.SimpleDateFormat;
import java.util.Date;
public class T24RequestTime implements Filter {
private FilterConfig config = null;
Date dt = new Date();
public void init(FilterConfig config) throws ServletException {
this.config = config;
}
public void destroy() {
config = null;
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
long before = System.currentTimeMillis();
chain.doFilter(request, response);
long after = System.currentTimeMillis();
SimpleDateFormat dateFormat = new SimpleDateFormat("[dd/MMM/yyyy:HH:mm:ss]");
String endDate = dateFormat.format(new Date());
String name = "";
if (request instanceof HttpServletRequest) {
name = ((HttpServletRequest)request).getRequestURI();
}
config.getServletContext().log("T24: !Date-Time: !"+endDate+ "! Total Elapsed Time: !" + (after - before) + "!ms!"+"! Company: !"+((HttpServletRequest)request).getParameter("companyId")+"! User: !"+((HttpServletRequest)request).getParameter("user")+"! Version: !"+((HttpServletRequest)request).getParameter("version")+"! Application: !"+((HttpServletRequest)request).getParameter("application")+"! Routine Name: !"+((HttpServletRequest)request).getParameter("routineName")+"! Timing: !"+((HttpServletRequest)request).getParameter("timing")+"! URL: !"+ name );
System.out.println("fsfsfsd");
}
}
在WebSphere中,您应该真正部署整个EAR文件。不要在部署后尝试修改部署描述符(web.xml等)。更改部署描述符后,应构建并重新部署。相信我,其他一切都不会起作用,至少会在操作中产生麻烦 默认情况下,WebSphere将日志记录到
/logs/
到SystemOut.log
或trace.txt
。日志记录配置取决于您的环境
顺便说一句:您应该看看
StringBuilder
来创建日志语句。