JSF mapping of ManagedBean



我试图通过

访问我的xhtml文件中的Bean
<h:commandButton value="Add Recipe" action="#{recipeBean.newres}"/>

,它运行良好(managedbean类名也是"RecipeBean")。因为我决定用德语做我的项目,我想把名字改成"RezeptBean",这最终导致java类重构为"RezeptBean",我在xhtml中调整为

<h:commandButton value="Add Recipe" action="#{rezeptBean.newres}"/>

我真的很困惑,因为现在单击按钮以"目标不可达,标识符解析为null"结束,而使用"recipeBean"。"新闻"仍在工作。我认为可能存在一个将被管理bean名称映射到它们的html-pendant的映射。有人能给我点线索吗?

顺便说一下,这是Managedbean-Class:

@SessionScoped
@ManagedBean
public class RezeptBean {
    private Recipe recipe;
    public RezeptBean(){
        recipe = new Recipe();
    }
    public String review(){
        return("recipe");
    }
...

既然我决定用德语做我的项目,我想将名称更改为"RezeptBean",最终重构了java类到"RezeptBean"和我在xhtml调整到

为什么要更改Bean名称并再次重构代码?

可以在@ManagedBean [link]注释上使用name属性。

这样,您可以保持BeanName为实体,并在需要时随时更改Exposed ManagedBean名称。

的例子:

@SessionScoped
@ManagedBean(name="rezeptBean")
public class RecipeBean{
....
....
}

相关内容

  • 没有找到相关文章

最新更新