相关疑难解决方法(0)

为什么要使用@PostConstruct?

在托管bean中,@PostConstruct在常规Java对象构造函数之后调用.

我为什么要使用@PostConstructbean初始化,而不是常规构造函数本身?

java dependency-injection jsr299 java-ee cdi

274
推荐指数
4
解决办法
20万
查看次数

96
推荐指数
2
解决办法
4万
查看次数

将JSF理解为MVC框架

我正在阅读JSF,我觉得为什么JSF是一个MVC框架(或者至少哪个部分属于哪个"字母")我感到很困惑.

我看了一下这个问题:JSF MVC框架中哪些组件是MVC?

我在那里阅读如果你不在聚合视图中查看模型是你的实体,视图是你的XHTML代码而控制器是托管bean.嗯......好的,但视图通常不依赖于执行进一步的业务逻辑调用,这些调用返回一组实体,例如,描述是否仍然适合?

我读过的一本书将其描述为托管bean,是Faces Servlet(Controller)用于调用业务层(Model)的某种"消息"bringer,然后XHTML代码就是视图.

有太多的解释和差异,所以我不知道哪个或如何理解它.

java model-view-controller jsf java-ee

54
推荐指数
3
解决办法
5万
查看次数

从请求范围的bean访问会话范围的bean

我正在尝试使用在IceFaces页面上找到的模式.(我没有使用IceFaces,使用PrimeFaces)

在这种情况下,我有两个豆:

UserControllerUsermodel

在我的UserModel上,我有一个UserVO实例(由另一个程序员创建).在我的UserController上我有这个:

@ManagedBean
@RequestScoped
public class UserController implements Serializable
{

    private static final long serialVersionUID = 1L;
    private UserBO bo;
    private UserModel model;

    public UserController()
    {
        bo = new UserBO();
        model = new UserModel();
    }

    public void Login() throws IOException
    {
        model.setUserVo(bo.executeLogin(model.getUserVo()));
        ExternalContext externalContent = FacesContext.getCurrentInstance().getExternalContext();
        if (!model.getUserVo().isError())
        {
            model.setLoggedIn(true);
            externalContent.getSessionMap().put("userSession", model);
            externalContent.redirect(externalContent.getRequestContextPath() + "/views/request/search.html");
        } else
        {
            model.setLoggedIn(false);
            FacesMessage facesMessage = new FacesMessage(FacesMessage.SEVERITY_ERROR, model.getUserVo().getMessage(), model.getUserVo().getLogin());
            FacesContext.getCurrentInstance().addMessage(null, facesMessage);
        }
    } …
Run Code Online (Sandbox Code Playgroud)

jsf session-scope jsf-2

4
推荐指数
2
解决办法
1万
查看次数