java - servlet java 抛出的自定义 503 错误页面

标签 java servlets weblogic-10.x http-status-code-503

这非常简单明了。我想从 servlet 端抛出 503 错误。

response.sendError(503); 

当抛出此错误时,我需要它来访问自定义错误页面。基本上是一个 503 错误页面,但有一些修改。

假设我有 503.html,并且我添加了

<error-page>
    <error-code>503</error-code>
    <location>/503.html</location>
</error-page>

web.xml中。

我创建了一个 war 文件,其中包含一个抛出 503 错误的 servlet,以及包含此内容的 web.xml。我将 503.html 保留在父文件夹位置。 (我应该把它放在别处吗?)

我在 WLS 中部署了该应用程序,但此自定义 503.html 未命中。我收到通用 503 错误。

我错过了什么吗?

我的代码如下:

webapp1.war

->web-inf

->web-inf->classes->prject4->Class1.class

->web-inf->jsp->error->custom.html

web.xml

<?xml version="1.0"?>
<!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>

     <servlet>
      <servlet-name>Class1</servlet-name>
      <servlet-class>project2.Class1</servlet-class>
   </servlet>   

   <servlet-mapping>
      <servlet-name>Class1</servlet-name>
      <url-pattern>/*</url-pattern>
   </servlet-mapping>

   <error-page>
    <error-code>503</error-code>
    <location>/WEB-INF/jsp/error/custom.html</location>
</error-page>

</web-app>

class1.java

public class Class1 extends HttpServlet
{   
  private ServletConfig config;

  public void init(ServletConfig config)throws ServletException
  {
   this.config=config;
  }

   public void service (HttpServletRequest request, HttpServletResponse response)
      throws IOException
   {

     response.setContentType("text/html");     
     ServletOutputStream l_out = response.getOutputStream();     

     response.sendError(503); 
   }
}

最佳答案

好吧,这是一个小错误,我一开始没有意识到。

在我的 web.xml 中,servlet 映射被指定为 /*,这导致了无限循环条件,因为它抛出了与之前相同的代码。映射。因此,我必须调整 servlet 映射,以便 Class1 不会映射到任何错误页面 - 例如 /images/*

然后一切开始正常。 :)

关于java - servlet java 抛出的自定义 503 错误页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5431657/

相关文章:

java - 无法加载依赖类 com/jcraft/jsch/Logger

java - 基本递归回溯(机器人二维寻路)

jsp - Servlet 处理多个 post 请求

java - 发布到 Servlet 后重新显示 JSP

java - 唯一 JMSMessageID 的最大大小

java.net.ConnectException : after adding weblogic-application. xml

java - JSOUP 解析表格中的表单字段和标签

Java获取分数的方法

java - 使用对象数组获取数据

java - Weblogic集群401(未授权)