使用jsf从Managedbean转发到另一个Managedbean

时间:2014-05-27 17:47:42

标签: jsf java-ee

我想知道如何从托管bean中的函数重定向到另一个

bean 1,函数A()------->调用bean 2,函数B()------>函数B()将在最后调用jsf页面。

1 个答案:

答案 0 :(得分:0)

我真的不确定你到底想要什么..看看方法,这个方法可以通过String给你一个bean实例...所以当你在Bean A中时你可以得到Bean B并使用它的方法..

我的建议只是将Utils与静态方法一起使用..如果这是你的意思。

public static Object getManagedBean(final String beanName) {
    FacesContext fc = FacesContext.getCurrentInstance();
    Object bean;

    try {
        ELContext elContext = fc.getELContext();
        bean = elContext.getELResolver().getValue(elContext, null, beanName);
    } catch (RuntimeException e) {
        throw new FacesException(e.getMessage(), e);
    }

    if (bean == null) {
        throw new FacesException("Managed bean with name '" + beanName
            + "' was not found. Check your faces-config.xml or @ManagedBean annotation.");
    }

    return bean;
    }