繁体   English   中英

jsf托管bean的行为可以像servlet一样吗?

[英]Can a jsf managed bean behave like a servlet?

通常,servlet具有doGet()doPost()方法。 它们被用于捕获传入的request parameters ,如果开发人员愿意,则可以在应用程序的任何部分中使用它们。

现在,如果开发人员希望使用jsf managed bean而不是使用servlet,是否有办法在bean本身中获取请求参数? 如果是这样,怎么办?

我看过这个POST ,它显示了一种从JSF的请求中获取内容的方法。 这样可以用来在托管bean中获取请求参数吗?

HttpServletRequest origRequest = (HttpServletRequest)FacesContext.getCurrentInstance().getExternalContext().getRequest();
String myReqQuery1 = origRequest.getParameter("ReqQuery1");

在这种情况下,应用程序将遵循jsf life cycle还是servlet life cycle或者同时遵循这两者?

JSF并不是真的那样工作。 视图中的表单字段(.jsf或其他内容)由Bean中的字段和属性进行镜像。 当在栈中进一步调用servlet时,它们将由JSF自动填充。

这使得需要读取HTTP参数是多余的,除非浏览器从非基于JSF的表单登陆到JSF页面上。 为此,诸如Spring-MVC之类的东西可以接受目标URI,并在将浏览器重定向到JSF支持的URL之前建立与ManagedBean实例的连接。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM