Tag: jsf

使用相同的辅助bean将数据从page1传递到page2的最佳方法是什么?

我正在第1页和第2页创建一个简单的搜索表单,我将显示结果。 我想知道使用@ViewScoped支持bean的最佳方法是什么。 以前我必须使用@SessionScope来实现这一目标。 第1页 – 搜索页面: Documents Search 第2页 – 结果页面: @ViewScoped Backing Bean: @ManagedBean @ViewScoped public class DocumentBacking { private Document document = new Document(); private List results = new ArrayList(); public Document getDocument() { return document; } public void setDocument(Document document) { this.document = document; } public List getResults() { return results; } […]

对于JSF 2.0,是否有比Icefaces更好的Ajax推送

我处于这样一种情况:我希望在基于Java的Web应用程序中实现Ajax Push,以更新网页上库存项目的数量,因为它们在没有用户交互的情况下进行更改。 我知道执行此操作所需的技术称为Ajax Push。 我也有一些JSF 2.0的经验,这是首选,但不是必需的。 首先我们需要一个演示,在几周内展示这个,但如果演示被接受,我们将有足够的时间来做正确的。 我环顾四周,发现Icefaces显然做得很好,我会调查一下。 我想知道是否碰巧存在其他可能更适合我们使用的东西? 请不要“这些是来自谷歌的三大热门”答案。 我想根据经验听取意见。

禁用时为InputText值null为true

我的JSF页面上有一个inputText,并附加了一个JavaScript日历弹出窗口。 有条件地我将inputText disabled属性设置为true和false。 当我设置disabled = true并且然后我将JSF值写入数据库时​​,inputText中的值为null。 我相信这是由于disabled = true 。 有没有办法保留inputText框中的值,即使disabled = true ? 我正在使用JSF 1.1。

具有可定制内容的JSF迭代复合组件

我想创建一个复合组件,其中迭代元素的实际布局可以传递给复合。 这是一个简化的示例,有效: 但是我不希望h:outputText在组件中被硬编码。 使用组件时,我试图让这样的东西: 假设我必须使用var ,但我不知道如何在我的组件中处理它并正确访问子 。

无法找到类’com.sun.facelets.FaceletViewHandler’

我有Richfaces应用程序,我部署到Glassfish v3。 好几个星期(差不多)一切正常,但今天突然出现了以下错误。 我的pom.xml中有jsf-facelets-1.1.14.jar依赖项。 我不知道如何解决这个问题。 帮帮我!! Source Document: jndi:/server/swmind.rcp.web/WEB-INF/faces-config.xml Cause: Unable to find class ‘com.sun.facelets.FaceletViewHandler’ at com.sun.faces.config.processor.AbstractConfigProcessor.createInstance(AbstractConfigProcessor.java:275) at com.sun.faces.config.processor.ApplicationConfigProcessor.setViewHandler(ApplicationConfigProcessor.java:527) at com.sun.faces.config.processor.ApplicationConfigProcessor.processViewHandlers(ApplicationConfigProcessor.java:847) at com.sun.faces.config.processor.ApplicationConfigProcessor.process(ApplicationConfigProcessor.java:331) at com.sun.faces.config.processor.AbstractConfigProcessor.invokeNext(AbstractConfigProcessor.java:114) at com.sun.faces.config.processor.LifecycleConfigProcessor.process(LifecycleConfigProcessor.java:116) at com.sun.faces.config.processor.AbstractConfigProcessor.invokeNext(AbstractConfigProcessor.java:114) at com.sun.faces.config.processor.FactoryConfigProcessor.process(FactoryConfigProcessor.java:223) at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:335) at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:223) at org.apache.catalina.core.StandardContext.contextListenerStart(StandardContext.java:4591) at com.sun.enterprise.web.WebModule.contextListenerStart(WebModule.java:535) at org.apache.catalina.core.StandardContext.start(StandardContext.java:5193) at com.sun.enterprise.web.WebModule.start(WebModule.java:499) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:928) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:912) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:694) at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1933) at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1605) at com.sun.enterprise.web.WebApplication.start(WebApplication.java:90) […]

是否可以使用密码腌制的容器管理身份validation?

我知道如何设置使用表单身份validation并使用消化密码(例如,SHA-256)的vanilla容器管理安全性。 像这样的东西: web.xml中 FORM jdbc /login.jsf /login-error.jsf login.xhtml Username: Password: Submit 非常简单 – 但我真正希望能够做的是用全局盐和用户名加密密码。 是的,我知道这不是理想的,但现在,我只是在构建一个概念validation。 容器(GlassFish 3,在这种情况下)可以为我做这个,还是我必须编写自己的登录filter ? 我之前已经完成了(对于J2EE应用程序),但我的直觉告诉我,现在我必须采用更紧凑的方式来使用Java EE 6。

JSF中MVC的矛盾解释

我开始学习JSF,但首先我想了解它作为MVC框架的大局。 有许多答案,许多upvotes解释了JSF中的MVC层,但它们通常自相矛盾。 BalusC的回答: JSF MVC框架中的MVC是什么组件? 在大型架构图片中,您自己的JSF代码是V : M – 业务域/服务层(例如EJB / JPA / DAO) V – 您的JSF代码 C – FacesServlet 在开发人员图片中,建筑V依次可分为如下: M – 实体 V – Facelets / JSP页面 C – 管理的bean Jigar Joshi在同一主题中的答案: M ManagedBean将是您的ManagedBean View将是jsp , XHTML (你可以在这里容纳各种视图) C ontroller将是FacesServlet 这里 ,关于问题的另一种观点: 在JSF中,您没有实现控制器。 因此,支持bean或任何其他类型的托管bean 不是控制器。 还有一个 ,这次不是来自Stackoverflow: 在JSF中,主控制器始终是FacesServlet。 子控制器被合并到各种控制元件标签实现中。 你几乎从不在JSF中编写控制器代码,因为它都是预先提供的。 因此,您只需提供视图模板(xhtml)和模型(支持bean)。 很多人认为支持bean的动作逻辑使它们成为控制器。 这是不正确的。 […]

页面上包含JSF中的的错误消息

我在JSF上创建了一个简单的例子。 这是一个小的登录应用程序。 我的问题是我的页面上有重复的错误消息: 我的页面上有两个h:message (用于用户名和密码)标签和一个h:messages (全局消息): 我的支持bean中的操作方法login() : public String login() { FacesContext facesContext = FacesContext.getCurrentInstance(); if (“admin”.equals(username) && “pass”.equals(password)) { return “success”; } else { facesContext.addMessage(“loginForm”, new FacesMessage(“Username or password is incorrect”)); return null; } } 我想在这些字段旁边显示关于空用户名或密码的消息 ,而不是在全局消息中的我的按钮下。 如果密码或用户名不正确,我想在全局消息中从我的操作方法打印我的错误消息 。 我该如何解决这个问题? 我尝试使用属性globalOnly : 但它并没有完全解决我的问题,因为在这种情况下根本不显示全局消息。 提前致谢!

使用JSF下载CSV文件

我不知道如何下载CSV文件。 CSV将在运行时生成。 我是否需要先将文件保存在tomcat WEB-INF目录中? 我正在使用JSF 1.2。 顺便说一下,这种任务最受欢迎的JSF组件是什么? 编辑(05.05.2012 – 15:53) 我尝试了BalusC在他的第一个链接中说明的解决方案,但如果我点击我的commandButton,该文件的内容将显示在网页上。 也许mimetype存在问题? XHTML文件: 主豆: public String doDataExport() { try { export.downloadFile(); } catch (SurveyException e) { hasErrors = true; } return “”; } 出口豆类: public void downloadFile() throws SurveyException { try { String filename = “analysis.csv”; FacesContext fc = FacesContext.getCurrentInstance(); HttpServletResponse response = (HttpServletResponse) fc.getExternalContext().getResponse(); […]

每个Ajax调用的Javascript(之前和之后)

由于我正在使用TinyMCE (请不要进入“Primefaces有一个编辑器”或类似的东西)我需要在每个Ajax -call之前和之后执行一小段Javascript 。 我不想编辑每个Ajax -call,因为有很多(这样做对于任何未来的维护都是不好的做法)。 什么是在页面上任何Ajax -call之前和之后执行Javascript的最优雅的解决方案? 注意:我正在为TinyMCE -textarea使用自定义composite 。 任何事件也是这个对象也足够了。 虽然请记住,实际的Ajax -trigger可能会被一个完全不同的对象调用(尽管可能会重新渲染composite )。