16684


現在下記のような実装になっております↓

[code]

    tomcat8
    
    ～java
    public class FRGW010S_DispAction extends HttpServlet{
      protected void doGet(HttpServletRequest req, HttpServletResponse resp)throws       
      ServletException,IOException{
        try{
            new FileInputStream("nofile.txt");
        catch(IOException  e){
            throw new ServletException(e);
    ～
    ～web.xml
    <error-page>
        <exception-type>java.lang.Exception</exception-type>
        <location>/error.jsp</location>
    </error-page>
    ～
    
[/code]

エラーをthrowすることで、error.jspに遷移して欲しいのですが、実行すると画面は真っ白で、コンソールには

[code]

    java.io.FileNotFoundException: nofile.txt (指定されたファイルが見つかりません。)・・・
    
[/code]

と出力されているだけです。

原因が掴めないのですが、error-page自体が起動していないように思います(servlet-mapping等は機能している)。error-
pageタグ内のexception-typeを省略し、エラーを発生させても動作しないことから、起動時にerror-
pageを読み込めていないのではないかと思い調査中です。  
また、記述は間違えていないと思うので、おそらく些細な原因なのではないかと考えています。

error.jspに遷移しない原因の分かる方がいましたら、ご教授をお願いします。


CC BY-SA 3.0
2015-09-16T06:18:53.057
16680
2015-09-17T12:03:34.867
2015-09-17T12:03:34.867
8000
7626
question
java tomcat servlet
web.xml <error-page>が機能しない


error-pageの指定が無ければ、  
そもそもデフォルトのエラーページで例外表示されるはずですので、  
error-pageの設定自体が読めていないから白い画面になっているのでは  
ないと考えられます。

そもそもExceptionがどこかでcatchされていて、伝搬していないということはありませんか？  
error-pageのタグごと削除したらデフォルトのエラーページは表示されますか？


CC BY-SA 3.0
2015-09-16T07:17:15.183
16684
2015-09-16T07:17:15.183
10103
16680
answer