2017-08-02 16 views
0

私はJboss JBoss EAP 6.4.5.GA (AS 7.5.5.Final-redhat-3)と一緒に作業しており、web.xmlに問題があります。 は、ここで私が持っているのweb.xmlの一部です:時々Servlet2はServelt1前に開始しますので Jbossがサーブレットを間違った順序で起動する

<servlet> 
    <servlet-name>Servlet1</servlet-name> 
    <servlet-class>classPath.servlet1</servlet-class> 
    <load-on-startup>0</load-on-startup> 
</servlet> 
<servlet> 
    <servlet-name>Servlet2</servlet-name> 
    <servlet-class>classPath.servlet2</servlet-class> 
    <load-on-startup>1</load-on-startup> 
</servlet> 

私はJBOSSサーバを起動

が、私は、私の設定が保存されていないことがわかり、これは起こるべきではありません。 データを削除してカタログをログに記録してからJBOSSを起動すると、Servlet1はServlet2より前に起動しますが、JBOSSを再起動すると、Servlet2がServlet1より前に実行されています。

このような状況に遭遇したことがありましたか?ことができますが、「JBOSSは「にservlet1後exaclly Servelet2を開始」し、それが'load-on-startup'ないように指示します。

* EDIT * 私はこのような状況についての興味深い情報を追加する必要があります。デバッグモードでは、新鮮で特殊なタグがあるMaybyeこれらのカタログを削除します。これらのカタログを削除します。最初のinit()メソッドはServlet1以降でServlet2で起動しますが、JBOSSを再起動するとServlet2のinit()だけが起動し、理由はわかりません...

+0

@WebFilterアノテーションを使用してこれを行うことができます – sForSujit

+0

@WebFilterはServletではなくFilterに使用していませんか? – Kacu

+0

プログラムでは、サーブレット2の起動を抑止できます。つまり、セッション変数の有無をチェックし、設定されている場合はservlet2部分を起動するので、セッション変数条件のチェックによってservlet2が開始しようとしたとき、フローは停止します –

答えて

0

"<load-on-startup>0</load-on-startup>"はweb.xmlに正確に を意味しますか

私はこのattrib uteはシーケンスだけでなく、特に0のときに他のものも意味します。

+0

あなたはこれをまったく記憶していません... –