0

我的 jboss 版本是 Jboss EAP 6.3

当 Jboss 发回任何类型的错误响应时,它会将服务器信息添加到响应中。以下是示例行响应:

HTTP/1.1 400 错误请求 服务器:Apache-Coyote/1.1 内容类型:text/html;charset=utf-8 内容长度:2391 日期:2016 年 7 月 19 日星期二 09:30:46 GMT 连接:关闭

JBoss Web/7.4.8.Final-redhat-4 - JBWEB000064:错误报告

JBWEB000065:HTTP 状态 400 - org.codehaus.jackson.map.JsonMappingException:无法从字符串值“XYZ”构造 mybean.type 的实例:值不是 [来源:org.jboss.resteasy.core 中声明的枚举实例名称之一.interception.MessageBodyReaderContextImpl$InputStreamWrapper@5e421c2b; 行:14,列:26](通过引用链:RequestArgs["request"])

JBWEB000309:输入JBWEB000067:状态报告

JBWEB000068:消息org.codehaus.jackson.map.JsonMappingException:无法从字符串值“XYZ”构造 mybean.type 的实例:值不是 [来源:org.jboss.resteasy.core.interception 中声明的枚举实例名称之一。 MessageBodyReaderContextImpl$InputStreamWrapper@5e421c2b; 行:14,列:26](通过引用链:RequestArgs["request"])

JBWEB000069:描述JBWEB000120:客户端发送的请求在语法上不正确。

JBoss Web/7.4.8.Final-redhat-4


在这里,服务器版本可以在启动服务器时使用“-Dorg.apache.coyote.http11.Http11Protocol.SERVER=MyServer”参数替换为任何服装名称。但是如何替换标题和页脚中指定的“JBoss Web/7.4.8.Final-redhat-4”?

通过创建自定义错误页面(对于每个错误,例如 error_400.html、error_500.html 等),可以解决此问题,但需要动态包含的实际错误消息具有挑战性。

是否有任何简单的方法可以从使用 Jboss 发送的所有响应中抑制任何与 jboss 版本相关的信息?

4

1 回答 1

0

对于这个问题,您需要在 JBoss EAP 级别配置自定义错误页面。

  1. 创建自定义 ROOT App 以提供自定义错误页面,如下所示:

    • 在standalone-*.xml 或domain.xml 中设置enable-welcome-root="false" 然后在web 子系统中。
    • 使用包含所有 http 错误的错误页面的 web.xml 部署基本 ROOT.war 存档。

当 enable-welcome-root="true" 时,页面为 EAP 6 中的欢迎内容文件夹提供服务,当您点击例如 localhost:8080 时,您可以看到欢迎中存在的 index.html 页面-文件夹。现在,如果您部署自定义 ROOT.war,您将看到您提供的自定义错误页面。

于 2016-07-24T14:26:31.503 回答