15

セッションのタイムアウトを適切に処理するようにアプリの一部を作成しようとしていますが、テストのためにタイムアウトが発生するまでの期間を制御できないようです。

JBoss 5.1を使用しており、セッションが1分後にタイムアウトするようにWeb記述子(web.xml)のsession-configを変更しています(テスト用)

<session-config>
  <session-timeout>1</session-timeout>
</session-config>

ただし、ログインしてセッションを作成した後は、タイムアウトになることはありません。設定しないとタイムアウトになります。

Tomcat環境では、この問題は発生していません。誰かがJBossで同様の問題を抱えていましたか?

4

3 に答える 3

19

JBoss 5では、次の場所ですべてのアプリケーションのセッションタイムアウトを定義できます。

deployers/jbossweb.deployer/web.xml

web.xmlの設定を上書きしている可能性があります。すべきではありませんが、あなたは知っています...

それが機能しているかどうかを確認してください。そうでない場合は、テスト用にプログラムでタイムアウトを設定できます。

HttpSession.setMaxInactiveInterval(int seconds)

そうすれば、特定のセッションでタイムアウトを強制できます。

于 2010-07-09T08:37:29.967 に答える
8

残念ながら、JBoss EAP 6.1.0.Alpha1(AS 7.2.0.Alpha1-redhat-4)では、web.xmlのWebアプリごとに設定する必要があります。JBossのドキュメントを参照してください

これを使用すると言う:

<session-config>
    <session-timeout>30</session-timeout>
</session-config>
于 2013-10-11T17:27:13.970 に答える
0

一部の設定の場合、JBossはweb.xmlで指定した設定を上書きします。この設定を適用するには、「jboss-web.xml」という名前の設定ファイルで同じものを指定する必要があります。このファイルは、同じフォルダー内のweb.xmlの横に配置できます。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xml>
<jboss-web>  
  <session-config>
    <session-timeout>1</session-timeout>
  </session-config>
</jboss-web>
于 2020-10-19T15:05:44.643 に答える