1

この Bean を facesconfig.xml にマップしたい

public class VisualizationBean {

    private BitSet results;

    public BitSet getResults() {
        return results;
    }

    public void setResults(BitSet results) {
        this.results = results;
    }

}

いくつかの記事や例で見たように、マップやその他のフィールドを初期化することは可能ですが、このフィールドを初期化する方法がわかりません。私は何かに似ていると思います

 <managed-bean>
        <managed-bean-name>visualizationBean</managed-bean-name>
        <managed-bean-class>path.bean.VisualizationBean</managed-bean-class>
        <managed-bean-scope>request</managed-bean-scope>
        <managed-property>
            <property-name>results</property-name>
            <map-entries>
                <map-entry>
                    <key>true</key>
                    <value>6</value>
                </map-entry>
                <map-entry>
                    <key>false</key>
                    <value>12</value>
                </map-entry>
                <map-entry>
                    <key>false</key>
                    <value>24</value>
                </map-entry>                
            </map-entries>
        </managed-property>        
    </managed-bean>

しかし、これは正しくありません。何か助けて?? 前もって感謝します

4

1 に答える 1

1

できません。はBitSet実装されておらず、JSF はまたはMap以外の管理プロパティ データ構造を事前設定する機能を提供していません。ListMap

基本的に 2 つのオプションがあります。

  1. 代わりにaを使用しMap<Object, Boolean>ます ( のキー/値を逆にする必要があることに注意してくださいfaces-config.xml。キーは一意である必要があります!)

  2. BitSetファイルなどの他の外部ファイルに基づいて、Bean の (ポスト) 構築中に自分自身を埋め.propertiesます。

于 2011-03-01T13:11:10.083 に答える