0

こんにちは、私は本当に単純なことをしていますが、jboss と jsf 2.0 を使用しています。だから私はドロップダウンメニューのユーザーからの選択に応じていくつかのフィールドを表示するフォームを作成しようとしているので、selectOneMenuを使用しています

<h:panelGrid columns="2" id="formTaxon">
                <h:outputLabel value="Nombre Científico Taxón" for="taxonInput" />
                <p:inputText value="#{taxonDM.taxon.nombreCientificoTaxon}"
                    id="taxonInput" />
                <h:outputLabel value="Nombre Común" for="nombreComunInput" />
                <p:inputText value="#{taxonDM.taxon.nombreComunTaxon}"
                    id="nombreComunInput" />
                <h:outputLabel value="Tipo" for="tipoTaxon" />
                <p:selectOneMenu id="tipoTaxon" value="#{taxonDM.taxon.tipoTaxon}"
                    name="tipoTaxon">
                    <f:selectItem itemLabel="Seleccione uno" itemValue="" />
                    <f:selectItems value="#{tipoTaxonDM.tiposTaxones}" var="txn"
                        itemValue="#{txn.idTipoTaxon}" itemLabel="#{txn.nombreTipo}" />
                    <f:ajax process="@this"
                        listener="#{taxonController.tipoTaxonesXX}" render="formTaxon" />
                </p:selectOneMenu>
                <p:inputText id="test" val="" />
            </h:panelGrid>

私も最初にリスナーなしで試しました

しかし、何も機能しません。サーバーでエラーが発生しません。firebug でスクリプトをチェックするとエラーが発生します。

<?xml version='1.0' encoding='UTF-8'?>
<partial-response><error><error-name>class java.lang.IllegalStateException</error-name><error-message><![CDATA[Parameters processing failed.]]></error-message></error></partial-response>

jboss 7.0.2 および 7.1.1 と firefox でテストしました。これに関連して IE と jboss 7.1.1 の間にバグがあったと読みましたが、そうではないと思います。

p:selectOneMenu の代わりに h:selectOneMenu も試しました。変化はありませんでした。

4

1 に答える 1

1

アイテムの値が の場合、ドロップダウン ボックスの値をtaxon.tipoTaxoninとしてバインドしています。<p:selectOneMenu id="tipoTaxon" value="#{taxonDM.taxon.tipoTaxon}">idTipoTaxon

私たちが得ることができる限り、前者は typeTipoTaxonであり、後者は typeIntegerである可能性が最も高いです。そのため、JSF がこれらの型の間で変換を試みると、失敗します。

送信された文字列をモデル オブジェクトに変換する方法を JSF が認識できるように を提供するかConverter(スタック オーバーフローで多くの例を見つけることができます)、ドロップダウン値を のように整数としてバインドする必要がありますvalue="#{taxonDM.taxon.idTipoTaxon}"

于 2013-04-29T21:56:30.160 に答える