StatusCode 似乎 Servelt API中,无论是 Filter Wrapper Reponse,都没有提供 get的方法。

以下是一个从网上找到的解决方案。

1.先实现一个对Response的包装器:

public class StatusExposingServletResponse extends HttpServletResponseWrapper {

private int httpStatus;

public StatusExposingServletResponse(HttpServletResponse response) {

super(response);

}

@Override

public void sendError(int sc) throws IOException {

httpStatus = sc;

super.sendError(sc);

}

@Override

public void sendError(int sc, String msg) throws IOException {

httpStatus = sc;

super.sendError(sc, msg);

}

@Override

public void setStatus(int sc) {

httpStatus = sc;

super.setStatus(sc);

}

public int getStatus() {

return httpStatus;

}

}

2, 然后实现一个Filter来替换原始的HttpServletResponse,这样你就可以在Filter里面取到statusCode了

public class StatusReportingFilter implements Filter {

public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {

StatusExposingServletResponse response = new StatusExposingServletResponse((HttpServletResponse)res);

chain.doFilter(req, response);

int status = response.getStatus();

// report 在这儿你就得到状态码了。

}

public void init(FilterConfig config) throws ServletException {

//empty

}

public void destroy() {

// empty

}

}

取消

评论

为什么运行了java文件老是404_哪位能帮助一下,JAVA中我运行页面时不能打开,总是出现404错误,为什么;用的是Tomcat7.0,win7的系统,...相关推荐

  1. 只不过是R.java文件的特性-----出错信息:R.java was modified manually! Reverting to generated version!...

    出错信息:R.java was modified manually! Reverting to generated version! 出错原因:今天在res下建立了一个drawable的文件夹存放图片 ...

  2. java 文件流读取文本_如何在Java 8中处理流和读取文本文件

    java 文件流读取文本 我已经使用最新的Java8转换了一个旧的实用程序类. 我经常使用它来打印清单文件的内容,以检查任何神秘的jar文件的版本等.只需运行" java ztools.Pr ...

  3. 能打开java文件的软件有哪些_使用JAVA打开本地应用程序相关的文件

    在该项目中需要运行本地文件或应用程序,JDK6添加后Desktop类别.可以直接使用.这使得有可能在程序中无论什么应用程序可以打开的.例:打开pdf文件,当地福昕是默认打开.执行程序将使用福昕开放pd ...

  4. IDEA创建java文件失败,但是new选项中有java class选项,设置中file and Code Templates中有对应模板

    1.一大早发现我的IDEA无法创建java文件了 2.new里边什么都有 3.设置里边模板什么的都有 4.想起来昨天重新安装的IDEA,修改了文件头注释 5.发现还真是注释没补全,结尾忘了加,改好就o ...

  5. java文件全是数字编码_批量将Java源代码文件的编码从GBK转为UTF-8

    最近在做一个项目,需要从以前的另外一个项目迁移大量源代码过来,但是由于另一个项目采用GBK编码格式,而新项目采用的UTF-8编码格式,如果直接把Java源代码复制到Eclipse中所有的中文信息都出现 ...

  6. java文件的路径怎么设置,如何在Java中设置路径

    本文概要 是必需的路径使用工具,如javac的,Java等要被设置 如果要保存的JDK / bin目录中的Java源文件,不需要路径设置,因为所有的工具将在当前目录中可用. 但是,如果你有你的Java ...

  7. .jar文件还原java文件_从jar包还原出java源码(项目文件)

    原文转载至:https://blog.csdn.net/mxmxz/article/details/73043156 上周接到个新任务,一个遗留的接口工程需要改造,然而根据前任开发留下的文档看,这个工 ...

  8. maven项目编译不了java文件_无法使用Maven编译简单的Java 10 / Java 11项目

    我有一个简单的Maven项目: src └── main └── java └── module-info.java pom.xml pom.xml中: org.example example 1.0 ...

  9. 为什么运行了java文件老是404_java – 为什么Spring MVC用404响应并报告“在...

    您的标准Spring MVC应用程序将通过您在Servlet容器中注册的DispatcherServlet提供所有请求. DispatcherServlet查看其ApplicationContext, ...

最新文章

  1. NLP - 15 分钟搭建中文文本分类模型
  2. Verilog以及VHDL所倡导的的代码准则
  3. 配置linux服务器做简单的路由器
  4. SAP Spartacus Set Active BaseSite action执行的时间点 - Route路由触发方式
  5. math.atan2_带有Python示例的math.atan2()方法
  6. Python总结:RuntimeError: matplotlib does not support generators as input
  7. SSH框架之Spring4专题3:Spring与AOP
  8. 乐视网1354项商标1.3亿元成交,接盘的是这家公司
  9. 【Vue2.0】— 全局事件总线GlobalEventBus(十九)
  10. 绿米开关如何重置_开个灯还带音效?跟我学简单改装智能开关,保证按上瘾!...
  11. 创建Allegro差分对
  12. [gdc17]寒霜引擎的HDR渲染探索
  13. C++(数据结构与算法):55---无权图与有权图的描述(邻接矩阵、邻接链表、邻接数组、十字链表、邻接多重表)
  14. 多媒体——音频——使用录音机录制音频
  15. 某x动漫app逆向分析
  16. 抠图扣发丝ps修图扣证件照p图扣毛发
  17. 增删改查操作下锁的相关情况_查询时的锁分析
  18. Android 自带的返回键功能
  19. 2023年英语二大作文押题猜想(达立易考)
  20. cmake命令之foreach

热门文章

  1. Linux aptget 参数,ubuntu下apt-get 命令参数大全
  2. eclipse 新建maven项目报错Could not resolve archetype org.apache.maven.archetype修改配置
  3. 生信人的linux考试
  4. t-SNE algorithm(t-分布邻域嵌入算法)
  5. java 邮件 内容_JAVA怎么获取邮件内容
  6. linux 多路径重启,(linux多路径连接iScsi存储重启自动连接.docx
  7. php 去掉img,php如何删除img标签
  8. leetcode第二题java_LeetCode第二题,Java实现
  9. python比较两个xml_python比较2个xml内容的方法
  10. 【矩阵运算c++实现】矩阵封装实现Matrix类