0

次のようなBeanクラスの値を持つdataTableがあります。

public class myBean {
    private List<SelectItem> depList;

ゲッターとセッター付き。

私のゲッターはbuildDepList()、データベースから部門名を取得し、depListを埋めるメソッドを呼び出します。

私のJSPファイルは次のようになります。

<ice:dataTable id="specializationTable" style="height: 216px; left: 134px; top: 62px; position: absolute"
    value="#{AdmissionApplication$Application.specBean}" var="specRow" width="480">
    <ice:column id="column2">
        <ice:outputText id="outputText9" value="#{specRow.choiceNum}" visible="true"/>
        <f:facet name="header">
            <ice:outputText id="outputText3" value="#{msg.Choice_Number}"/>
        </f:facet>
    </ice:column>
    <ice:column id="column4">
        <f:facet name="header">
            <ice:outputText id="outputText8" value="#{msg.Department}"/>
        </f:facet>
        <ice:selectOneMenu id="selectOneMenu2" partialSubmit="true" value="#{specRow.departmentName}">
            <f:selectItems id="selectOneMenu2selectItems" value="#{specRow.departmentItems}"/>
        </ice:selectOneMenu>
    </ice:column>
    <ice:column id="column5">
        <f:facet name="header">
            <ice:outputText id="outputText10" value="#{msg.Specialization}"/>
        </f:facet>
        <ice:selectOneMenu id="collegesSelectOneMenu" partialSubmit="true" style="width: 118px" value="#{specRow.specializationName}">
            <f:selectItems id="selectOneMenu3selectItems22" value="#{specRow.specializationItems}"/>
        </ice:selectOneMenu>
    </ice:column>
</ice:dataTable> -->

selectOneMenu( )の値はStringセッションBeanに含まれている必要がありますよね?

myBeanクラスは実際にはアプリケーションスコープです。値が設定されているJSPコードでわかるようにList<myBean>、このオブジェクトのリストがあります。specBeandataTable

セッションで保存するnの名前に異なる変数を設定する必要がありますか?selectOneMenuどのようにそれを提案しますか?

4

1 に答える 1

0

selectOneMenu(文字列)の値はセッションBeanに含まれている必要がありますよね?

依存します。これをセッションスコープのBeanに入れると、値の変更が同じセッション内の複数のブラウザウィンドウ/タブに反映/影響されます。これにより、直感的でないWebアプリの動作が発生し、ユーザーエクスペリエンスが低下する可能性があります。スコープ指定されたリクエスト(または、すでにJSF 2.0を使用している場合は、スコープ指定されたビュー)Beanの方が適しています。

myBeanクラスは、実際にはアプリケーションスコープです。dataTable値がそれに設定されているJSPコードでわかるように、specBeanと呼ばれるこのオブジェクトリストのリストがあります。

セッションに保存するselectOneMenuの名前にn個の異なる変数を設定する必要がありますか?どのようにそれを提案しますか?

ここで何について話しているのかは不明ですが、データはアプリケーション全体で一定であり、List<SelectItem>forなどのさまざまなセッション/リクエスト間で共有できるためf:selectItems、アプリケーションスコープのBeanに配置することをお勧めします。

于 2010-06-23T14:10:31.733 に答える