我们如何使用Camel控制Jetty Websocket中的错误页面

时间:2019-05-31 13:01:18

标签: websocket apache-camel jetty jetty-8

我们正在将Apache Camel Jetty Websocket 2.17.1与码头8配合使用。

我们进行了PCI扫描,结果发现它返回了404页,其中包含

       <html>
         <head>
             <meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1"/>
             <title>Error 404 Not Found</title>
         </head>
         <body>
             <h2>HTTP ERROR: 404</h2>
             <p>Problem accessing /TOKENIZE.. Reason:

                 <pre>    Not Found</pre>
             </p>
             <hr />
             <i>
                 <small>Powered by Jetty://</small>
             </i>
         </body>
     </html>

我使用errorHandler为Jetty Apache Camel组件更改了此设置。但是无法更改或跟踪通过HTTP / GET响应时返回的错误页面内容。

PCI家伙尝试发送/ GET作为websocket端口,并且应用返回了404内容以上。

仅供参考。我还在 ServletContextHandler 中设置了错误处理程序。但是我的错误处理程序仍然没有被拾取。

1 个答案:

答案 0 :(得分:0)

Jetty 8 (now EOL/End of Life)未正确连接ErrorHandler以应对诸如HTTP升级专用路径(码头8中的websocket)之类的奇怪行为。

Jetty 9.x已对ErrorHandler进行了大修,以解决与ErrorHandler到达相同上下文路径的所有请求错误。

这意味着,当前在Jetty 9.x +中没有通过ErrorHandler的唯一错误是未到达上下文的错误。例如错误的HTTP请求导致出现400个状态代码或代理请求。