Tag: jsf

Eclipse + Maven + JavaServer Faces – > ClassNotFoundException:StartupServletContextListener

概要 当我尝试从Eclipse(在Tomcat 7.0上)运行JSF 2.0应用程序时,我得到以下exception: Problem: SEVERE: Error configuring application listener of class org.apache.myfaces.webapp.StartupServletContextListener java.lang.ClassNotFoundException: org.apache.myfaces.webapp.StartupServletContextListener 细节 我正在学习使用Eclipse开发JSF应用程序。 我从一个预先配置的Eclipse项目开始:File-> New-> Dynamic Web Project-> JavaServer Face v2.0 Project。 使用此方法Eclipse提供所有依赖项。 但我想真正了解一切是如何运作的。 我想删除“魔术”,所以我将我的项目转换为Maven项目:Configure-> Convert to Maven project。 然后我创建了我的pom.xml(基于http://myfaces.apache.org/build-tools/archetypes/myfaces-archetype-helloworld20/index.html ),它包含以下内容: jsf-facelets-tutorial org.apache.maven.plugins maven-war-plugin WebContent/WEB-INF/web.xml org.apache.maven.plugins maven-compiler-plugin 1.6 1.6 javax.el el-api 1.0 provided junit junit 4.0 test org.apache.myfaces.core myfaces-api 2.0.5 compile […]

JSF和表达式语言:仅在存在时绑定属性

将数据列绑定到数据源中可能存在或可能不存在的属性的最佳方法是什么? 例如,如果您有一个类层次结构,其中某些子项可能是具有该属性的子类型,则会发生这种情况。 数据源包含各种子类类型。 当其中一个子类中不存在该属性时,始终会产生一个PropertyNotFoundException。 我不想在基类中包含该属性,因为根据业务规则它不应该存在。 你怎么解决这个问题?

:getXxx()被调用了很多次,为什么?

关于dataTable简单代码。 CentralFeed是SessionScoped Bean, PostComment是RequestScoped Bean 在CentralFeed.java private List profileComments = null; public List getProfileComments() { PhaseId currentPhaseId = FacesContext.getCurrentInstance().getCurrentPhaseId(); profileComments = scholarBean.findProfileCommentsByUserId(getSelectedUser().getId()); //model = new ListDataModel(profileComments); return profileComments; } 我的问题是getProfileComments()被调用很多。 currentPhaseId将告诉我们该方法被调用的阶段。 当页面首次加载时, getProfileComment会在第6阶段getProfileComment调用5次左右。 该页面有一个inputTextarea ,所以我输入了一些内容,然后单击Post (commandButton)。 然后通过阶段1-> 4再次调用getProfileComment 12次 。 每个阶段调用此方法3-4次 。 然后,属性newComment的setter方法得到调用(所以setNewComment()得到调用), getProfileComment在phase 5再次调用get。 然后postReply()得到调用,然后getProfileComment在phase 6再次调用5次 。 到底是怎么回事? 这是假设是这样的吗? 如果你看看我的getProfileComment ,通过我的EJB scholarBean ,我实际上是在查询数据库,所以不得不像这样查询数据库20次这是一个非常糟糕的主意。

用户使用JSF 2.0登录

我正在尝试 – 使用JSF 2.0 – 以一种巧妙的方式实现登录/记住我/注销管理。 由于传统的<form action="j_security_check" …方式缺乏灵活性,我决定采用不同的路径,但我发现了一个问题。 通过在应用程序服务器中以及通过 , 和在web.xml中正确设置声明性安全性。 登录页面: 简单的LoginBean#login(): public String login( ) { HttpServletRequest request = (HttpServletRequest)FacesContext.getCurrentInstance( ).getExternalContext( ).getRequest( ); try { request.login( username, password ); } catch ( ServletException e ) { FacesContext.getCurrentInstance().addMessage( “Unknown login… return null; } return “i_dont_know_where_you_were_going”; } 一切正常,但成功登录后我不知道如何将用户转发到其原始请求。 由于登录页面自动插入客户端请求和“任何”安全资源之间,因此我需要一种方法来了解重定向操作的位置。 request.getRequestURL( )没有帮助,可能是因为RequestDispatcher#forward() (它覆盖了请求url)干预。 您认为这是管理登录过程的合适方式吗? 如果是这样,任何关于这个问题的暗示? […]

从JSF请求中检索会话ID值

如何在JSF托管bean中检索会话ID值?

JSF State最初保存到服务器和会话超时转移到客户端?

是否有任何状态保存方法允许JSF应用程序在服务器上初始保存状态数据但在会话到期时间间隔之后,该状态将转移到客户端,以便即使在服务器和内存上的会话超时更好之后应用程序始终响应在服务器上管理? 或者任何可以实现的方式? 但我希望这应该是JSF规范的一部分! 编辑 在BalusC提出建议之后,我对Stateless JSF原则及其当前的实现印象深刻。 如果此处的任何其他人也对将无状态JSF添加到JSF规范感兴趣,请考虑查看或投票此问题 。 无状态JSF为某些支付提供了巨大的性能提升,例如无法动态创建视图(例如通过绑定,JSTL标记等)或修改它。 无状态JSF操作模式对于高负载应用程序和体系结构非常有用: http://industrieit.com/blog/2011/11/stateless-jsf-high-performance-zero-per-request-memory-overhead/#comment-4 雅各布此前曾提出过这一点: http : //weblogs.java.net/blog/jhook/archive/2006/01/experiment_goin.html 这将有助于JSF放弃“慢速和记忆力”的耻辱,并帮助跟上当前的技术趋势(无状态架构)。

JSF vs Stripes,哪个最好?

哪个最好,换句话说,最简单易用? 条纹或JSF。 虽然我没有在愤怒中使用这两者,但我需要评估什么是开始新项目和转换现有Struts项目的最佳选择。 我担心JSF不会像我想的那样渲染,但是其他经历是什么? 似乎条纹更直接,我在这个假设中是否正确?

JSF。 需要URL重写解决方案

假设以下应用程序格局: +—————–+ | App server | +—————–+ | | +——-+ | ear1 | | | | +-web1 (/ctx1) +–<– http://localhost/ctx1/xxx/ –+ +–<– http://www.domain.com/xxx/ | | | | | | | proxy | | ear2 | | | | +-web2 (/ctx2) +–<– http://localhost/ctx2/yyy/ –+ +–<– http://abc.domain.com/yyy/ | | | | +—————–+ +——-+ 正如您所看到的,代理(在我的情况下是nginx )是将请求转发到单个应用程序服务器实例,而后者又有多个具有不同上下文路径的Web模块。 当然我不希望我的公共服务器暴露内部上下文根和代理它的工作做得好,包装和解包http请求等等。但仍然有一个大问题:JSF生成的HTML代码(链接,css,js资源,表单actions)包含上下文路径,在我的例子中是/ctx1和/ctx2 。 […]

输入按键的行为类似于JSF中的提交

如何使Enter Key Press的行为类似于JSF中的Submit。 它适用于InputBoxes; 但不是inputSecret框

如何在JSF 2.0中获取选项卡式窗格组件(Sun Mojarra)

我现在正在学习/使用JSF 2.0(Sun Mojarra),我希望在我的webapp中有一个选项卡式窗格(单个选项卡可以命名为General,Detail1,Detail2,…)。 我该如何实现这一目标? 到目前为止,我还没有找到任何文件:(