Questions tagged «jsf»

JavaServer Faces(JSF)是一个模型视图呈现器框架,通常用于创建基于HTML表单的Web应用程序。使用标准组件和渲染工具包,可以使用Facelets或JSP标签定义有状态的HTML视图,并通过后备bean连接到模型数据和应用程序逻辑。





9
为什么JSF多次调用getter
假设我指定了一个outputText组件,如下所示: <h:outputText value="#{ManagedBean.someProperty}"/> 如果在someProperty调用getter for时打印一条日志消息并加载页面,则很容易注意到每个请求多次调用getter(在我的情况中是两次或三次): DEBUG 2010-01-18 23:31:40,104 (ManagedBean.java:13) - Getting some property DEBUG 2010-01-18 23:31:40,104 (ManagedBean.java:13) - Getting some property 如果someProperty计算的值昂贵,则可能存在问题。 我在Google上搜索了一下,发现这是一个已知问题。一种解决方法是包括检查并查看是否已经计算出: private String someProperty; public String getSomeProperty() { if (this.someProperty == null) { this.someProperty = this.calculatePropertyValue(); } return this.someProperty; } 这样做的主要问题是,您获得了大量样板代码,更不用说您可能不需要的私有变量了。 有什么替代方法?没有太多不必要的代码,有没有办法实现这一目标?有没有办法阻止JSF以这种方式运行? 感谢您的输入!
256 performance  jsf  el  getter 

13
Java Server Faces 2.0的主要缺点是什么?
昨天,尽管我目前是一名快乐的ASP.NET MVC / jQuery开发人员,但我看到了有关Java Server Faces 2.0的演示,该演示看上去确实令人印象深刻。我最喜欢JSF的地方是大量支持AJAX的UI组件,这些组件似乎使开发速度比使用ASP.NET MVC快得多,尤其是在AJAX繁重的网站上。集成测试也看起来非常不错。 由于演示文稿仅强调了JSF的优点,因此我也想听听另一面的信息。 所以我的问题是: Java Server Faces 2.0的主要缺点是什么? 是什么让JSF开发人员考虑使用ASP.NET MVC而不是JSF?
234 asp.net-mvc  jsf  jsf-2 

1
JSF资源库有什么功能,应如何使用?
在JSF <h:outputStylesheet>,<h:outputScript>和<h:graphicImage>组件具有library属性。这是什么,应该如何使用?网上有很多示例,它们使用以下示例,它们具有常见的内容/文件类型css,js并且img(或image)作为库名,具体取决于所使用的标签: <h:outputStylesheet library="css" name="style.css" /> <h:outputScript library="js" name="script.js" /> <h:graphicImage library="img" name="logo.png" /> 有什么用?library这些示例中的值似乎只是重复标记名称已经表示的内容。对于<h:outputStylesheet>它来说,它基于已经很明显的标签名称,它表示一个“ CSS库”。与以下相同的方式有什么区别? <h:outputStylesheet name="css/style.css" /> <h:outputScript name="js/script.js" /> <h:graphicImage name="img/logo.png" /> 同样,生成的HTML输出也有些不同。给定的上下文路径/contextname和FacesServletURL模式的映射*.xhtml,前者生成以下HTML,并将库名称作为请求参数: <link rel="stylesheet" type="text/css" href="/contextname/javax.faces.resource/style.css.xhtml?ln=css" /> <script type="text/javascript" src="/contextname/javax.faces.resource/script.js.xhtml?ln=js"></script> <img src="/contextname/javax.faces.resource/logo.png.xhtml?ln=img" alt="" /> 后者使用URI路径中的库名称生成以下HTML: <link rel="stylesheet" type="text/css" href="/contextname/javax.faces.resource/css/style.css.xhtml" /> <script type="text/javascript" src="/contextname/javax.faces.resource/js/script.js.xhtml"></script> <img src="/contextname/javax.faces.resource/img/logo.png.xhtml" alt="" …
228 jsf  jsf-2  resources 


4
了解PrimeFaces流程/更新和JSF f:ajax执行/渲染属性
究竟是什么process,并update在PrimeFaces p:commandXxx组件和execute和render的f:ajax标签? 验证时哪个有效?update属性是做什么的,而不是从后端更新组件的值?难道process属性绑定值模型?究竟做什么@this,@parent,@all并@form在这两个属性? 下面的示例工作正常,但是我对基本概念有些困惑。 <p:commandButton process="@parent" update="@form" action="#{bean.submit}" value="Submit" />

1
javax.faces.application.ViewExpiredException:无法还原视图
我编写了具有容器管理的安全性的简单应用程序。问题是当我登录并打开另一个要注销的页面时,然后回到第一页,然后单击任何链接等或刷新页面,我得到了此异常。我想这是正常的(或者可能不是:)),因为我注销了,会话被破坏了。我应该怎么做才能将用户重定向到例如index.xhtml或login.xhtml并使他免于看到该错误页面/消息? 换句话说,注销后如何自动将其他页面重定向到索引/登录页面? 这里是: javax.faces.application.ViewExpiredException: viewId:/index.xhtml - View /index.xhtml could not be restored. at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:212) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:110) at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:312) at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1523) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:215) at filter.HttpHttpsFilter.doFilter(HttpHttpsFilter.java:66) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:277) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:641) at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:97) at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:85) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:185) at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:325) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:226) …

3
JSF2 Facelets中的JSTL有意义吗?
我想有条件地输出一些Facelets代码。 为此,JSTL标记似乎可以正常工作: <c:if test="${lpc.verbose}"> ... </c:if> 但是,我不确定这是否是最佳做法?还有另一种方法可以实现我的目标吗?
163 jsf  jsf-2  jstl  facelets 

4
使用j_security_check在Java EE / JSF中执行用户身份验证
我想知道当前的方法是关于使用JSF 2.0(以及是否存在任何组件)和Java EE 6核心机制(登录/检查许可权/注销)的Web应用程序的用户身份验证,并且将用户信息保存在JPA中实体。Oracle Java EE教程对此有点稀疏(仅处理servlet)。 这并没有使用诸如Spring-Security(acegi)或Seam之类的其他框架,而是尽可能地希望使用新的Java EE 6平台(Web Profile)。


5
如何找出要进行Ajax更新/渲染的组件的客户端ID?找不到从“ bar”引用的表达式为“ foo”的组件
下面的代码是从PrimeFaces的DataGrid + DataTable的教程启发和放入<p:tab>一个的<p:tabView>居住在<p:layoutUnit>的<p:layout>。这是代码的内部(从p:tab组件开始);外部是微不足道的。 <p:tabView id="tabs"> <p:tab id="search" title="Search"> <h:form id="insTable"> <p:dataTable id="table" var="lndInstrument" value="#{instrumentBean.instruments}"> <p:column> <p:commandLink id="select" update="insTable:display" oncomplete="dlg.show()"> <f:setPropertyActionListener value="#{lndInstrument}" target="#{instrumentBean.selectedInstrument}" /> <h:outputText value="#{lndInstrument.name}" /> </p:commandLink> </p:column> </p:dataTable> <p:dialog id="dlg" modal="true" widgetVar="dlg"> <h:panelGrid id="display"> <h:outputText value="Name:" /> <h:outputText value="#{instrumentBean.selectedInstrument.name}" /> </h:panelGrid> </p:dialog> </h:form> </p:tab> </p:tabView> 当我单击时<p:commandLink>,代码停止工作并显示以下消息: 找不到从“ tabs:insTable:select”引用的表达式为“ insTable:display”的组件。 …
140 ajax  jsf  jsf-2  primefaces  clientid 

5
从JSF 1.2迁移到JSF 2.0
我正在使用一个用JSF 1.2编写的相当大的应用程序。JSF 1.2大约已有6年历史了。我需要升级到JSF 2.0。这将有多痛苦?我注意到自定义标签中的某些属性已更改等。
136 java  jsf  migration  jsf-2 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.