私のプロジェクトでは、JSF 1.2とJBOSS 5を使用してプロジェクトを開発しました。新しい要件の一部として、Websphere 7に移行する必要があります。しかし、私は、JavaランタイムWASによって内部的に使用されています。 autobox int/Integersにはできません。暗黙のうちに文字列をlong型にキャストします。最終的に必要なチェックを行った後、次の検証例外が発生しました。Websphere 7 JSF
/Star/employeeFormP1.jsp(226,4) '#{StarEmployeeApplicationFormBean.medicalHMO}'クラスに 'medicalHMO'プロパティを設定できません'com.idea.app.bean.StarEmployeeApplicationFormBean'を 'true'に設定します。
関連する次のコード:
<h:selectBooleanCheckbox id="checkbox1"
value="#{StarEmployeeApplicationFormBean.medicalHMO}"
title="click it to select or deselect"
immediate="true"
valueChangeListener="#{StarEmployeeApplicationFormBean.listHMOMedProducts}"
onchange="return submit()" />
誰もがこの検証例外に私を助けていただけますか?
StarEmployeeApplicationFormBean.medicalHMOのゲッター/セッターのタイプは何ですか? – McDowell
@McDowell beanのmedicalHMO属性はString型です。私はそれがselectBooleanCheckboxのブール値でなければならないが、すべての開発者はそうではないことを知っている。 :P これをブール値に変更すると、そのトリックが実行されました。しかし、不思議なことに、問題なくJBossで正常に動作していました。値は文字列として "true"/"false"として設定されていました。それがJBossでうまくいく理由についての手掛かりはありますか? JSFの異なるバージョンが関係していますか? – Barun