ManagedBean的JSF映射

时间:2014-06-15 12:28:48

标签: jsf facelets managed-bean

我正试图通过

访问我的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");
    }
...

1 个答案:

答案 0 :(得分:1)

  

因为我决定用德语做我的项目,所以我想   将名称更改为“RezeptBean”,最终重构为   Java-Class为“RezeptBean”,我在xhtml中调整为

为什么要更改Bean名称并重新重构代码。?

您可以使用name [link] 注释中的@ManagedBean属性。

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

示例:

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