私はprimefacesのselectOneMenuで作業しており、他のselectOneMenuからのsalect値の後に1つのselectOneMenuを更新しようとしています。このコードでは、すべてが正常に機能しており、selectOnemenu で更新値を取得しています。しかし、問題は、更新された selectOneMenu から値を選択したときに、ボタンをクリックした後に Bean のメニューに反映されないことです
。このコードでは、Bean クラスで null 値を取得しています。 ID「manufectureName」。ただし、id「deviceosName」のselectOneMenuから値を選択した後、Beanクラスに反映されません。私は問題を理解することができません。誰かが私を助けることができますか?
<h:form>
<p:growl id="messages" showDetail="true" autoUpdate="true" />
<p:panel id="os_version_panel" header="Os Version">
<h:panelGrid columns="3" title="Os Version"
style="width:40%;height:20%;padding:10%;padding-left:30%">
<h:outputLabel for="manufectureName" value="Manufecture Name:*"
style="float:right;font-size:15px;width:200px" />
<p:spacer width="20" height="50" />
<p:selectOneMenu id="manufectureName"
value="#{deviceRegistration.selectedManufacture}" effect="fade"
converter="deviceManufactureConverter" style="width:200px">
<f:selectItem itemLabel="Select One" itemValue="" />
<f:selectItems value="#{deviceRegistration.manufactureNameList}"
var="manufacturer" itemLabel="#{manufacturer.manufacturersName}"
itemValue="#{manufacturer}" />
<p:ajax update="deviceosName"
listener="#{deviceRegistration.updateOSName}" />
</p:selectOneMenu>
<h:outputLabel for="deviceosName" value="Device OS Name:*"
style="float:right;font-size:15px;width:200px" />
<p:spacer width="20" height="50" />
<p:selectOneMenu id="deviceosName"
value="#{deviceRegistration.selectedOsName}" effect="fade"
converter="deviceOsNameConverter" style="width:200px">
<f:selectItem itemLabel="Select One" itemValue="" />
<f:selectItems value="#{deviceRegistration.osNamesList}"
var="name" itemLabel="#{name.osName}" itemValue="#{name}" />
</p:selectOneMenu>
<f:facet name="footer">
<p:spacer width="20" height="80" />
<p:commandButton id="addOsVersion" value="Add OS Version"
update="messages" process="os_version_panel"
actionListener="#{deviceRegistration.addOsVersion}"
style="float:right;" />
</f:facet>
</h:panelGrid>
</p:panel>
</h:form>