Spring JSF应用程序流程

时间:2013-01-24 14:31:09

标签: spring jsf

我之前编写过Spring MVC Web应用程序,其中有一个前端控制器,我们在每个方法中都有一个请求映射,而这个方法又调用一个服务实现,最后将一个视图返回给UI。现在,当我设计JSF应用程序时,我无法理解流程 - 这就是我目前在申请中的内容:

  1. 初始index.html重定向到登录页面。

  2. 用于填充标签值的登录页面的辅助bean。由于它是输入形式,因此不涉及其他逻辑。

  3. 用户点击提交后 - >在action方法中,我有一个逻辑,它将调用服务(No.1)进行身份验证过程,并通过返回页面名称将用户重定向到主页

  4. 主页显示绑定到辅助bean的各个字段,其字段必须由另一个Web服务调用(No.2)填充。

  5. 在步骤(3)和(4)之间,我有一个困惑。以前在Spring中我有一个显式映射,我可以“实际”控制前端控制器方法中的逻辑。在JSF中,我不知道No.2 Web服务调用的逻辑是否应该与身份验证调用结合起来,因为我没有一个方法来填充bean。

    就好像我没有对流程的明确控制。我读过很多文章试图理解这一点但却无法理解。请提供我的指示以及一些可以更好地解释这一点的参考资料。

1 个答案:

答案 0 :(得分:0)

为什么不能控制JSF bean中的逻辑?使用EJB的示例

@ManagedBean
@RequestScoped
public class LoginBean {

    @EJB
    private AuthBean authBean;
    @EJB
    private UserSettings settingsBean;

    private String name, password;

    @PostConstruct
    private void init() {
        //do your initialization here
    }

    public String loginAction() {
        User user = authBean.authenticate(user, password);
        if(user != null) {
            UserSetting settings = settingsBean.getSettings(user.getId());
            return "home";
        }
    }
    //setters and getters
}