Struts2.0ライブラリを使用していたjboss4.2.3にJavaWebアプリケーションをデプロイしています。最近、Struts 2.3.4にアップグレードし、新しいバージョンを使用するようにすべてのコードを更新しました。
ローカルワークステーションで、古いバージョンのStrutsに依存して削除したコードを参照してエラーが発生し始めました。これらのエラーは、次の場所にあるJBossプリコンパイル済みJBSSフォルダーの内容をクリアすると消えました。
jboss\server\<name_of_my_instance>\work\jboss.web\localhost\_\org\apache\jsp
今日、私は新しいバージョンを本番Webサーバーにデプロイしました。JSPプリコンパイルディレクトリ(上記のリスト)の内容をクリアし、Webサーバーを再起動しました。
ユーザーがStruts2.0タグを削除するために変更した(そしてStruts 2.3.4に置き換えた)ページにアクセスするたびに、StrutsがStruts2.0ファイルを見つけられないというサーバーエラーが発生します。これらのエラーをローカルインスタンスで再現できません。
ローカルWebサーバーと本番Webサーバーで何が異なって構成されているかについて誰かが何か考えを持っていますか?デプロイした新しいWebアプリを本番サーバーに強制的に読み取らせるにはどうすればよいですか?
注-私は(WARではなく)展開展開を使用しており、問題のあるページはインクルードファイルを使用しています。次に例を示します。
myInclude.inc
<s:if test="%{userIsAdmin}">
<%-- Show some toolbar --%>
</s:if>
myFile.jsp
<%@ include file="myInclude.inc"%>
myInclude.incファイルが変更されたことをJBossが検出していないように見えるため、myFile.jspにアクセスするとスタックトレースが生成されます。myInclude.incの古いバージョンは古いStruts2.0に依存していますが、新しいバージョンは依存していません。