我正试图通过
访问我的xhtml文件中的Bean<h:commandButton value="Add Recipe" action="#{recipeBean.newres}"/>
,工作正常(managedbean类名也是“RecipeBean”)。 由于我决定用德语完成我的项目,我想将名称更改为“RezeptBean”,最终将Java-Class重构为“RezeptBean”,然后我在xhtml中调整为
<h:commandButton value="Add Recipe" action="#{rezeptBean.newres}"/>
我真的很困惑,因为现在单击按钮最终会出现“Target unreacheable,identifier resolved to null”,而“recipeBean.newres”的使用仍然有效。 我想可能有一个将managedbean名称映射到他们的xhtml-pendant。有没有人对我有任何线索?
不过,这是Managedbean-Class:@SessionScoped
@ManagedBean
public class RezeptBean {
private Recipe recipe;
public RezeptBean(){
recipe = new Recipe();
}
public String review(){
return("recipe");
}
...
答案 0 :(得分:1)
因为我决定用德语做我的项目,所以我想 将名称更改为“RezeptBean”,最终重构为 Java-Class为“RezeptBean”,我在xhtml中调整为
为什么要更改Bean名称并重新重构代码。?
您可以使用name
[link] 注释中的@ManagedBean
属性。
这样,您可以保持BeanName可靠,并在您需要时随时更改Exposed ManagedBean名称。
示例:
@SessionScoped
@ManagedBean(name="rezeptBean")
public class RecipeBean{
....
....
}