5

奇妙な問題に取り組んでいます: localhost JBoss インスタンスで POJO または Seam コンポーネントを変更し、再起動してページをロードすると、変更が表示されます。ただし、同じバージョンの JBoss を実行しているサーバーでインスタンスを停止し、WAR ファイルを削除し、最新バージョンをアップロードして JBoss を再起動すると、サーバー側の新しい機能の一部が表示されません。

具体的には、javax.faces.validator.Validator クラスを実装する POJO クラスへの変更です。次に、XHTML Facelet で次のように使用されます。

<h:inputText value="#{outsideaccount.accountOrganizationEmail}" maxlength="50"
  id="txtOrganizationSupportEmail" 
  validatorMessage="Organization Support Email is not valid. It must be in the pattern 'some_id@some_domain.com'.">
  <f:validator validatorId="AnyEmailValidator"/>
</h:inputText>  

localhost JBoss で電子メールバリデーターを正しく使用できます。開発サーバーでは、同じページで同じ電子メールを使用して検証エラーをスローします。非常に奇妙な。JBoss はクラス ファイルをどこかにキャッシュしていますか? JBoss 開発サーバーのキャッシュからすべてをクリアするにはどうすればよいですか?

ローカルで Win XP Pro を使用しています。開発サーバーは、Unix SunOS 5.10 を搭載した JVM バージョン 1.5.0_16-b02 で JBoss 4.2.3.GA を使用しています。ありがとう。

4

1 に答える 1

7

JBoss には、すべてがクリーンであることを確認するために削除できる work および tmp ディレクトリがあります。物事はそこにキャッシュされる可能性があるため、問題が発生した場合は展開時にそれらをクリアできます。JBoss 側で自動的に実行するよう強制する設定もあります。問題がキャッシュのクリアの問題である場合、これは解決に役立ちます。

もう 1 つの可能性は、その war の 2 つのコピーが JBoss にデプロイされていることです。ただし、本番環境にデプロイするとエラーが発生するはずです。

于 2009-10-14T20:09:18.400 に答える