我开始使用primefaces和spring集成测试我的应用程序,但我停在p:commandButton
组件上。当我点击它时,我想要显示p:growl popup组件,例如here,但不幸的是,页面会重定向到位置/WEB-INF/WEB-INF/intro.xhtml
中查看(但视图位于/WEB-INF/intro.xhtml
),错误为'找不到资源'。可能有人知道这个问题吗?我从GIT下载了一些示例project,然后遇到了同样的问题。我在
/springmvcfacelets/src/main/webapp/templates/maintemplate.xhtml
并粘贴来自primefaces的代码
<h:form>
<p:growl id="growl" life="2000" />
<p:commandButton value="Ajax Submit" id="ajax" update="growl" actionListener="#{buttonView.buttonAction}" styleClass="ui-priority-primary" />
<p:commandButton value="Non-Ajax Submit" id="nonAjax" actionListener="#{buttonView.buttonAction}" ajax="false" />
<p:commandButton value="With Icon" id="withIcon" actionListener="#{buttonView.buttonAction}" update="growl" icon="ui-icon-disk" />
<p:commandButton actionListener="#{buttonView.buttonAction}" id="iconOnly" update="growl" icon="ui-icon-disk" title="Icon Only" />
<p:commandButton value="Disabled" id="disabled" disabled="true" />
到视野中的身体。 Bean也被添加并注册。 查看代码:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:c="http://java.sun.com/jsp/jstl/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui">
<h:head>
<title><ui:insert name="title">Default title</ui:insert></title>
</h:head>
<h:body>
<h:form>
<p:panel id="panel" header="New User">
<h:form>
<p:growl id="growl" life="2000" />
<p:commandButton value="Ajax Submit" id="ajax" update="growl"
actionListener="#{buttonView.buttonAction}"
styleClass="ui-priority-primary" />
<p:commandButton value="Non-Ajax Submit" id="nonAjax"
actionListener="#{buttonView.buttonAction}" ajax="false" />
<p:commandButton value="With Icon" id="withIcon"
actionListener="#{buttonView.buttonAction}" update="growl"
icon="ui-icon-disk" />
<p:commandButton actionListener="#{buttonView.buttonAction}"
id="iconOnly" update="growl" icon="ui-icon-disk" title="Icon Only" />
<p:commandButton value="Disabled" id="disabled" disabled="true" />
</h:form>
</p:panel>
</h:form>
</h:body>
</html>
答案 0 :(得分:0)
这与primefaces和commandbutton组件无关。
您无法使用浏览器访问位于WEB-INF目录中的文件。这将是安全漏洞。 Web-Inf适合使用<ui:include>
加载集成模板(例如)或存储配置(faces-config.xml
,web.xml
,app-context.xml
...)。
将您的文件移至除web-inf之外的任何其他webapp目录,并更改提交结果(页面转移,无论是来自表单操作还是来自bean),并告诉我们结果。
答案 1 :(得分:0)
问题出在web.xml(缺少JSF的相应路径)文件和视图代码中。