1

この質問への回答としてBalusCによって提案されたように、私は次のような管理プロパティを作成したいと思います。

@ManagedProperty("#{paramValues.freetext}")
private String[] ftValues;

public String[] getFtValues(){ 
    return ftValues;
}

public void setFtValues(String[] values){
    ftValues = values;
}

私のプロジェクトでは、すべてのマネージドBeanの宣言と設定がfaces-config.xmlファイルで行われています。提案されているようにコードに注釈を付けても、結果は得られません。1つ以上ある場合でも、ftValuesは常にnull<input name="freetext"> です。メインの構成手法でXMLファイルを使用しているため、注釈が考慮されていない可能性はありますか?

ManagedProperty宣言をに入れるにはどうすればよいfaces-config.xmlですか?追加してみました

<managed-property>
    <property-name>ftValues</property-name>
    <property-class>java.lang.String[]</property-class>
    <value>#{paramValues.freetext}</value>
</managed-property>

適切なマネージドBeanセクションにありますが、このエラーでクラッシュします

管理対象BeanmyBeanのBeanまたはプロパティクラスjava.lang.String[]が見つかりません。

4

1 に答える 1

2

実際、でBeanを宣言するときは常に、アノテーションは無視されますfaces-config.xml。不明な理由でBeanを削除することfaces-config.xmlが実際にはオプションではない場合は<property-class>、問題を修正するためにを削除する必要があります。JSFはそれ自体で完全に理解できます。

于 2011-11-09T15:21:42.473 に答える