1

JSF1.2ベースのサーブレットがあります。ユーザーがしばらくアイドル状態のままである場合、セッションの無効化を行っています。セッションの無効化が発生する1分前に、ユーザーにJqueryダイアログボックスを表示し、ユーザーが続行するかログアウトするかを尋ねる必要があります。

xhtmlページ(session.xhtml)にJqueryダイアログボックスのコードがあります。Webアプリケーションには15〜20ページ近くあります。ユーザーは、これらの15〜20ページのいずれかでアイドル状態を維持できます。したがって、すべてのxhtmlページにsession.xhtmlページを含める必要があります。私のすべてのページで以下のコードを使用してこれを行っています。

<ui:insert>
<ui:include src="/session.xhtml" />
</ui:insert>

ここに2つの問題があります。

a)Webアプリケーションのページ数が増えるにつれて、各ページに上記のコードを追加し続ける必要があります

b)コードの保守性:将来的に、他の誰かが私のWebアプリケーションでいくつかのページを開発する必要がある場合、彼は上記のコードを含めることを覚えていない可能性があります

したがって、問題は、このページ(たとえば、web.xmlまたはいくつかのxmlファイルのどこかに)を配置して、デフォルトでこのsession.xhtmlをWebアプリケーションのすべてのページで使用できるようにする方法はありますか?

4

1 に答える 1

1

ビューファイルにはテンプレートが含まれている場合があります(これは良い習慣です)。

<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:a="http://richfaces.org/a4j"
                ...
                template="../layout/maintemplate.xhtml">

共通論理をmaintemplate.xhtmlに入れることができます。お役に立てれば。

于 2012-10-10T13:28:56.537 に答える