解决方案 »
- httpclient总是提示java.lang.NoSuchMethodError: org.apache.http.protocol.BasicHttpCon
- Hibernate级联操作请教
- JAVA中如何将表转换成JSON格式?
- request的setAttribute()
- 求助:JBuilder中的.JSP文件只能打开,不能运行
- 简单问题? 急!
- javabean中的scope=application?
- 如何在鼠标双击某一个table的tr时将该tr的某一个td的值放到一个全局变量里?
- 能否提供一些标记库的简单例子?
- 记得在<head></head>中间加一个代码可以对页面进行刷新和跳转这个代码是怎么写的?<meta refe......>
- js异步调用和struts1
- 百度地图API有没获取城市列表的api,方便城市间的切换
比如Object x = new Integer(0);
System.out.println((String)x);我想一个正常的系统,报错肯定会影响某一部分的功能,楼主可以检查下代码所在的逻辑层,看看是否出现功能的缺失。。
对,是类型转换异常,但是在tomcat下一切正常!而且错误中所指的类型转换是将ServletRequest强转为HttpServletRequest为啥会出现这个异常?
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain filterChain) throws IOException, ServletException { if(response.isCommitted())
return;
try {
filterChain.doFilter(request, response); HttpServletRequest req = (HttpServletRequest) request;
HttpServletResponse rep = (HttpServletResponse) response;
HttpSession session = req.getSession(true);
String contextPath = req.getContextPath();
RequestDispatcher dispatcher = null;
filterChain.doFilter(request, response);
是否应该放到 HttpServletRequest req = (HttpServletRequest) request;
HttpServletResponse rep = (HttpServletResponse) response;
HttpSession session = req.getSession(true);
String contextPath = req.getContextPath();
RequestDispatcher dispatcher = null;
...的下面呢
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain filterChain) throws IOException, ServletException { if(response.isCommitted())
return;
try {
filterChain.doFilter(request, response); HttpServletRequest req = (HttpServletRequest) request;
HttpServletResponse rep = (HttpServletResponse) response;
HttpSession session = req.getSession(true);
String contextPath = req.getContextPath();
RequestDispatcher dispatcher = null; //调用这个方法将skin放入session中
String skin = SkinUtils.getSkin(req, rep);
req.setAttribute("skin", skin); // 检查用户登录信息
String uri = req.getRequestURI();
if(!NOFILTER_PAGES.containsKey(uri))
{
log.debug("过滤检查【" + uri + "】");
// 取session,如果取不到session则提示用户重新登录
Object obj = session.getAttribute(Constant.SESSION_AUTH);
if(obj == null)
{
log.error("过滤检查【" + uri + "】"+",未通过检查!没有登陆信息。");
String msg = ResourceUtils.getResource(
"enp.WebMessage", "filter_nosession");
session.setAttribute("message", msg);
dispatcher = req.getRequestDispatcher(contextPath +
"/enpadmin/common/messages.jsp");
if (!rep.isCommitted())
dispatcher.forward(req, rep);
}
}
else
{
log.debug("过滤检查被挑过【" + uri + "】");
}
} catch (ServletException sx) {
log.error("",sx);
} catch (IOException iox) {
log.error("",iox);
}
}