jsf 相关问题

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

如何添加监听器到p:fileUpload中的Choose按钮

是否可以为FileUpload组件中的“选择”按钮添加监听器? 我在高级模式下使用 p:fileUpload 。 我浏览了文档,它只支持 fileUploadListener

回答 3 投票 0

未捕获的引用错误:当 javax.faces.PROJECT_STAGE 为 Production 时,未定义 mojarra

免责声明 尽管这个问题被问了好几次,但没有人能够解决我的问题。 以下是示例代码: 网络.xml 免责声明 虽然这个问题被问了好几次,但他们都无法解决我的问题。 以下是示例代码: web.xml <?xml version='1.0' encoding='UTF-8'?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> <display-name>MyApp</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> </welcome-file-list> <context-param> <param-name>javax.faces.STATE_SAVING_METHOD</param-name> <param-value>client</param-value> </context-param> <context-param> <param-name>javax.faces.PROJECT_STAGE</param-name> <param-value>Production</param-value> </context-param> <servlet> <servlet-name>Faces Servlet</servlet-name> <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>Faces Servlet</servlet-name> <url-pattern>*.xhtml</url-pattern> </servlet-mapping> </web-app> 模板.xhtml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml" xmlns:f="http://xmlns.jcp.org/jsf/core" xmlns:h="http://xmlns.jcp.org/jsf/html" xmlns:ui="http://xmlns.jcp.org/jsf/facelets"> <f:view locale="en_US"> <ui:insert name="fmetadata" /> <h:head> <ui:include src="/includes/head.xhtml" /> <title> <ui:insert name="title" /> </title> </h:head> <h:body> <ui:insert name="content" /> </h:body> </f:view> </html> 包含/head.xhtml <ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://xmlns.jcp.org/jsf/html" xmlns:ui="http://xmlns.jcp.org/jsf/facelets"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <meta http-equiv="Pragma" content="no-cache"/> <h:outputStylesheet name="style/style.css" /> </ui:composition> 登录.xhtml <ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://xmlns.jcp.org/jsf/html" xmlns:ui="http://xmlns.jcp.org/jsf/facelets" template="/templates/template.xhtml"> <ui:define name="fmetadata" /> <ui:define name="title"> <h:outputText value="Login" /> </ui:define> <ui:define name="content"> <div id="login"> <h2> <h:outputText value="Login" escape="false" /> </h2> <h:messages styleClass="errorMessage" /> <h:form> <label> <h:outputText value="Login" escape="false" /> </label> <br /> <h:inputText value="#{authenticationController.view.login}" required="true" requiredMessage="Please enter a User Name" styleClass="inputText" /> <br /> <label> <h:outputText value="Password" escape="false" /> </label> <br /> <h:inputSecret value="#{authenticationController.view.password}" required="true" requiredMessage="Please enter a password" styleClass="inputText" /> <div class="inputButton"> <h:commandLink value="Login" action="#{authenticationController.authenticate}" /> </div> </h:form> </div> </ui:define> </ui:composition> 身份验证控制器 import java.io.Serializable; import javax.annotation.PostConstruct; import javax.ejb.EJB; import javax.faces.application.ConfigurableNavigationHandler; import javax.faces.application.FacesMessage; import javax.faces.bean.ManagedBean; import javax.faces.bean.SessionScoped; import javax.faces.context.FacesContext; import javax.faces.event.ComponentSystemEvent; @SessionScoped @ManagedBean(name = "authenticationController") public class AuthenticationController implements Serializable { private static final long serialVersionUID = -6685652208738725676L; @EJB private UserServiceRemote userService; private LoginView view; public AuthenticationController() { } @PostConstruct public void init() { view = new LoginView(); } public String authenticate() { String login = view.getLogin(); String password = view.getPassword(); boolean isAuthenticated = userService.authenticate(login,password); if(isAuthenticated) { return "home.xhtml?faces-redirect=true"; } else { FacesContext.getCurrentInstance().addMessage(null,new FacesMessage("Invalid User Name / Password")); return "login.xhtml?faces-redirect=true"; } } public LoginView getView() { return view; } public void setView(LoginView view) { this.view = view; } } 登录查看 public class LoginView implements Serializable { private static final long serialVersionUID = -9139791962440768607L; private String login; private String password; public LoginView() { } public String getLogin() { return login; } public void setLogin(String login) { this.login = login; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } } 当我点击登录h:commandLink时出现的错误是: jsf.js 在 HTML 中呈现,URL:http://localhost:6180/myapp/javax.faces.resource/jsf.js.xhtml?ln=javax.faces 也可访问: 当我将 context-param javax.faces.PROJECT_STAGE 的值更改为 Development 时,错误消失。在这种情况下,jsf.js的URL呈现为:http://localhost:6180/myapp/javax.faces.resource/jsf.js.xhtml?ln=javax.faces&stage=Development: 环境: JSF 莫哈拉 - 2.2.17 Java - 1.8.0_181 TomEE - 7.0.4 我认为你实际上并没有使用 Mojarra: TomEE 附带 MyFaces 您发布的第一个屏幕截图(jsf.js)充满了 MyFaces 引用 所以我的赌注是与你的(Maven 定义的?)Mojarra(如果你的类路径中的任何地方都有它)和你的应用程序服务器附带的 Myfaces 发生冲突。 您可以强制使用 Mojarra 版本的 jsf.js 或者,您可以通过将 lib 文件夹中必要的 jar 替换为 Mojarra 提供的内容来强制在 TomEE 上使用 Mojarra 只需在您的 xhtml 代码中添加 即可! Head 标签将 Faces javascript 添加到您的代码中!

回答 2 投票 0

jQuery UI 图标精灵在 <p:column selectionMode="multiple">

我有一个 和 。 我有一个 <p:dataTable> 和 <p:column selectionMode="multiple">。 <p:dataTable id="someAppDto" var="someAppDto" widgetVar="someAppDtoWV" value="#{someBean.requestedApplList}" style="width:96%" rows="100" paginator="true" scrollable="true" scrollHeight="300" selection="#{someBean.dvoList}" rowSelectMode="checkbox" rowKey="#{someAppDto.m_nDVOId}" paginatorTemplate="{FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}" filteredValue="#{someBean.requestedApplListFltr}" rowsPerPageTemplate="10,50,100" resizableColumns="true" liveResize="true"> ... <p:column selectionMode="multiple" style="width:10px;"/> ... </p:dataTable> 相同的代码自过去 10 年以来一直运行,没有出现任何问题。然而,自过去 3-4 周以来,我们在复选框中看到了这些奇怪的图标。它不会影响任何功能,只会造成混乱。所以我们的最终用户想要修复它。 选中复选框后,奇怪的字符就消失了。但是当取消选中时,它会再次出现。我尝试为此创建一个 jsfiddle,但无法重现。因此,在 chrome 浏览器中发布 Inspect Element 的屏幕截图。 是的,我确实删除了浏览器缓存并尝试过,但没有成功。 我在某种程度上同意你们关于浏览器升级的看法。但我想知道为什么 Edge 和 Chrome 浏览器都会出现这种情况???过去 4-5 个月以来没有部署任何代码。无论代码发生什么变化,都是在 4-5 个月之前发生的,与此无关。 好的,现在这就是我所做的,它正在我的本地工作。我还没有在 Dev/UAT 中部署。 .ui-chkbox .ui-chkbox-box{ height: 12px; width: 12px; background: #ffffff none !important; text-shadow : none; box-shadow: none; -moz-box-shadow: none; -webkit-box-shadow: none; } 之后: .ui-chkbox .ui-chkbox-box{ height: 13px; width: 13px; background: #ffffff none !important; text-shadow : none; box-shadow: none; -moz-box-shadow: none; -webkit-box-shadow: none; } 仅将高度和宽度从 12px 更改为 13px。 仅供参考:上面的 CSS 代码位于我们的全局 .css 文件中 我知道这不是一个好的解决方案,但就目前而言,它正在发挥作用,用户也很满意。我仍然会寻找更好的解决方案

回答 1 投票 0

通过链接或后退按钮打开时强制 JSF 刷新页面/视图/表单

我有一个 JSF 页面,它将数据发布到外部页面。 数据从 JSF 托管 Bean 加载,该 Bean 在发布数据中生成唯一的 ID。 我遇到一个问题,用户点击结帐按钮...

回答 3 投票 0

托管bean为空的问题,但系统无法工作

我有一个带有 JSF 和 PrimeFaces 的 Java EE Web 应用程序。一切正常,但我在特定页面上遇到错误,指出托管 bean 为空,好像无法注入...

回答 0 投票 0

Primefaces 11 jakarta 在 commandButton 的操作属性上抛出 jakarta.el.PropertyNotFoundException

我正在从使用 J2ee6 和 Primefaces 3.5 的 jboss 迁移到使用 Jakarta EE 10 和 Jakarta 版本的 Primefaces 11 的 OpenLiberty。 我现有的代码工作正常,但现在当我尝试加载我的 xhtml 文件时......

回答 0 投票 0

/error500.xhtml作为资源

我尝试在 JSF-Java EE 项目中显示自定义异常消息。当出现 500 错误时,我尝试重定向到 error500.xhtml 页面。页面显示错误 在ExternalCont中找不到/error500.xhtml...

回答 0 投票 0

“空转换器”错误的转换错误设置值“”

我想创建一个应用程序,将书籍列表显示为 h:selectOneRadio 元素。当用户提交表单时,将用户的选择存储在 @SessionScoped 托管 bean 中。允许...

回答 0 投票 0

Primefaces 对话框位置问题

我正在使用 primefaces v 8.0 我遇到了 p:dialog 组件的问题,它的位置不在顶部,并且未显示对话框的一半我已经尝试了很多方法也尝试更改 CSS,如下所示...

回答 2 投票 0

Primefaces:如何解决DraggableRows抛出IndexOutOfBoundException

我已经使用 primefaces onRowReorder 事件实现了可拖动行。当我拖动行时,我收到 IndexOutOfBoundException。我不知道为什么会发生这种情况,希望得到一些帮助。 控制...

回答 0 投票 0

如何创建模块化 JSF 3.0 应用程序?

这是几年前这个经典主题的 jakarta 9 和 jsf 3 版本: 如何创建模块化 JSF 2.0 应用程序? 上下文是我正在将一个 Web 应用程序迁移到 tomcat 10.0.x,jaka...

回答 0 投票 0

我的 xhtml 和 ManagedBeans 没有使用 JSF 绑定

我正在尝试创建一个 jsf 网络应用程序。 我定义了一个 xhtml 文件和一个 ManagedBean,但它们没有绑定。 我正在使用带有 jdk 17 和 glassfish 服务器、jsf4 和 maven 的 netbeans 17。 这是我的 index.xh...

回答 0 投票 0

ManagedBeans 未使用 NetBeans 17 和 JSF4 进行绑定

我正在使用 netbeans 17、glassfish 7、sdk 17、jsf 4 我使用 glassfish 创建了一个 Maven Web 应用程序。我通过转到属性-> 框架-> 添加 jsf4 服务器库来添加 jsf 4。 cli之后...

回答 0 投票 0

如何处理Quarkus OIDC cookie过期和JSF Ajax请求?

我有一个使用 Quarkus OIDC 集成的 Quarkus + Primefaces(服务器端呈现)网络应用程序。 配置如下: quarkus.oidc.auth-server-url=${oidc_serverUrl} quarkus.oidc.client-id=我的-...

回答 0 投票 0

如何在 JSF 中使用 Spring boot 3?

我正在尝试创建一个由 Spring boot 3.0 管理的 JSF 项目。但不管我怎么做都行不通。我在网上找不到任何例子。 我的依赖项: 实施'org.springframework.b ...

回答 1 投票 0

关闭应用程序(即所有打开的窗口)时注册用户注销时间

我需要注册用户从我的 JEE Web 应用程序注销的时间,可以手动使用注销按钮,也可以关闭用户打开的所有窗口(浏览器)。 管理登录/注销...

回答 0 投票 0

在 javascript 文件 (jsf.ajax) 中找不到 Jsf ajax

你好:我看到了那个答案,我想我可以在我的代码中使用它:在发出 JSF Ajax 请求时显示加载进度 但是当我在 javascript 代码中使用这个方法时: jsf.ajax.addOnEvent(函数(大...

jsf
回答 1 投票 0

无法实现 PrimeFaces 媒体以显示 PDF 文件

我是 PrimeFaces 和 JSF 的新手,我正在尝试在我的页面中显示 PDF 预览,但我不知道如何实现这一点。根据 PrimeFaces 展示,放置相关文件就足够了......

回答 0 投票 0

java.lang.ClassCastException:com.sun.faces.vendor.WebContainerInjectionProvider 无法转换为 com.sun.faces.spi.InjectionProvider

我正在使用 Primefaces 12.0.0 和 Glassfish JSF 2.4.0 依赖项。 以前我在运行完美的码头服务器 9.4.48 中手动部署战争。现在我已经集成了 Jetty ...

回答 0 投票 0

如何使用 primefaces 和 java 清除数据表中的数据

我正在尝试实现一个在 parent.xhtml 中调用的数据表,并且对该数据表进行了一些操作,如更新、删除和取消。 所以当我尝试...

回答 0 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.