私は奇妙な問題に直面しています、私はah:selectOneListbox:のフォームを持っています
<h:selectOneListbox value="#{webHostingServicesActions.customPackage.storage}" size="1">
<f:selectItem itemLabel="None" itemValue="#{null}" />
<f:selectItems value="#{webHostingServicesActions.storagesChoices}" var="item" itemLabel="#{item.name}" />
<f:converter converterId="productConverter" />
<a4j:ajax event="valueChange" render="lblTotal" />
</h:selectOneListbox>
f:selectItemsから1つのアイテムを選択すると、セッターwebHostingServicesActions.customPackage.storageが呼び出されません。しかし、f:selectItemからアイテムを選択すると、セッターが正しく呼び出されます。
もちろん、私はカスタムコンバーターを使用していますが、テストされ、正しく応答します。
f:selectItemsのアイテムが選択されると、フォーム内の他のすべてのajaxアクションがブロックされているように見えます。サーバー側でエラーは発生しません。また、デバッグでa4j:logを使用する場合もエラーは発生しません。
編集1 : f:selectItemsからアイテムを選択すると、リクエスト値を適用するサーバー側のコードが実行されますが、セッターの前のどこかでブロックされます。何が起こっているのかを確認するのに十分な距離をたどることができませんでした。
編集2:BalusCLifeCycleListenerを追加しました...
f:selectItemからアイテムを選択すると
START PHASE RESTORE_VIEW 1
END PHASE RESTORE_VIEW 1
START PHASE APPLY_REQUEST_VALUES 2
END PHASE APPLY_REQUEST_VALUES 2
START PHASE PROCESS_VALIDATIONS 3
END PHASE PROCESS_VALIDATIONS 3
START PHASE UPDATE_MODEL_VALUES 4
END PHASE UPDATE_MODEL_VALUES 4
START PHASE INVOKE_APPLICATION 5
END PHASE INVOKE_APPLICATION 5
START PHASE RENDER_RESPONSE 6
END PHASE RENDER_RESPONSE 6
f:selectItemsからアイテムを選択すると
START PHASE RESTORE_VIEW 1
END PHASE RESTORE_VIEW 1
START PHASE APPLY_REQUEST_VALUES 2
END PHASE APPLY_REQUEST_VALUES 2
START PHASE PROCESS_VALIDATIONS 3
END PHASE PROCESS_VALIDATIONS 3
START PHASE RENDER_RESPONSE 6
END PHASE RENDER_RESPONSE 6
valueChangeの代わりに変更もテストしましたが、何も違いはありませんでした。
助けてくれてありがとう!
アレクサンドル。