-1
自动完成工作正常,我的意思是当我写一些东西时,它从数据库和自动完成获取值,但是当我选择值时,它显示selectedParty为null。通过我使用selectOneMenu的转换器工作正常,我可以很容易地获得选定的值,但是自动完成组件存在问题。
我的看法;primefaces自动完成选择返回null
<p:autoComplete id="partySearchAutoId" value="#{myController.selectedParty}"
var="party" itemLabel="#{party.partyName}"
itemValue="#{party}" converter="genericConverter"
forceSelection="true"
completeMethod="#{myController.searchParty}">
<p:ajax event="itemSelect" update="soaInputTextId"/>
</p:autoComplete>
我的控制器;
private Party selectedParty;
public List<Party> searchParty(String query) {
List<Party> partyList = genericService.getByTemplate(new Party(), "partyName", query);
return partyList;
}
public Party getSelectedParty() {
return selectedParty;
}
public void setSelectedParty(Party selectedParty) {
this.selectedParty = selectedParty;
}
这是我的转换器;
@FacesConverter("genericConverter")
public class GenericConverter extends SelectItemsConverter {
@Override
public String getAsString(FacesContext context, UIComponent component, Object value) {
return value.toString();
}
@Override
public Object getAsObject(FacesContext context, UIComponent component, String value) {
return super.getAsObject(context, component, value); //To change body of generated methods, choose Tools | Templates.
}
}
提供更多信息。发布您的控制器代码。 – Makky 2013-05-09 12:13:30
@Makky当我调试项目时,setSelectedParty方法执行,但参数selectedParty具有空值。 – 2013-05-09 12:32:41
SelectItemsConverter从哪里来?这是第三方课吗?如果不是,你可以发布源代码? – 2013-05-09 12:37:27