我收到以下错误:Conversion Error setting value 'home' for 'null Converter'.
Home
是正在显示的字符串表示形式。
对我来说,这没有意义。这是JSF代码:
<h:selectOneMenu value="#{createResourceDialogController.selectedDir}">
<f:selectItems value="#{createResourceDialogController.dirs}" />
</h:selectOneMenu>
这是 ManagedBean 代码:
public Map<String,IDir> getDirs()
{
Map<String,IDir> retVal = new LinkedHashMap<String, IDir>();
List<IDir> dirs;
if(isCompanyResource)
{
dirs = convertToIDir(getCompanyDir());
}
else
{
dirs = convertToIDir(getUserDir());
}
for(IDir iDir : dirs)
{
retVal.put(iDir.getDir(),iDir);
}
return retVal;
}
public IDir getSelectedDir()
{
return selectedDir;
}
public void setSelectedDir(IDir selectedDir)
{
this.selectedDir = selectedDir;
}
对我来说,似乎所有类型都匹配,甚至不需要转换器。getDirs()
返回一个值为 的地图IDir
。当 setter 被调用时,它应该得到IDir
? 有任何想法吗?