- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我对 JSF 2.2 功能有疑问 <f:viewAction action="#{...}/>
。我将此标记放置在我的 XHTML 页面中,它的名称为 viewActionStart.xhtml:
<?xml version="1.0" encoding="UTF-8"?>
<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:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui">
<h:head />
<h:body>
<f:view>
<f:metadata>
<f:viewAction action="#{redirect.getView()}" onPostback="true"
immediate="true" />
</f:metadata>
</f:view>
<h:outputText value="If you see that text, the viewAction was not performed." />
</h:body>
</html>
如果我直接访问此 XHTML 页面,一切正常:方法 redirect.getView()
被调用并执行到另一个页面的重定向。
现在我有了我的登陆页面,该页面显示在 viewActionStart-Page 之前。有一个按钮,基本上应该导航到我的 viewActionStart-Page 以显示 <f:viewAction>
影响。以下代码来自此着陆页 index.xhtml:
<?xml version="1.0" encoding="UTF-8"?>
<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:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui">
<h:head>
</h:head>
<h:body>
<f:view>
<h:form>
<h:commandButton action="viewActionStart.xhtml"
value="To f:viewAction Page" />
</h:form>
</f:view>
</h:body>
</html>
如果我点击该命令按钮,则会显示 viewActionStart.xhtml 的内容。为什么 JSF 忽略 <f:viewAction>
?我不明白为什么 viewAction
不适用于每个页面加载。我尝试了那些 onPostback
和“立即”属性,但没有任何变化。
另一个奇怪的结果是,在我点击命令按钮并看到 viewActionStart.xhtml 的内容后,URL 仍然保留在 localhost:8080/UIIncludeTest/index.xhtml 上。但在命令按钮进行导航后,这个 URL 不应该看起来像 localhost:8080/UIIncludeTest/viewActionStart.xhtml 吗?
我做错了什么吗?或者我只是误解了<f:viewAction>
?奇怪的是,如果我直接浏览到 viewActionStart.xhtml,它就会起作用。
我正在努力解决这个问题:
我阅读了许多与 <f:viewAction>
相关的帖子但没有任何帮助。
最佳答案
<f:viewAction onPostback="true">
仅适用于同一 View 的回发。 IE。它仅在 <h:form>
时运行已提交了完全相同的观点。 <f:viewAction>
绝不会在由提交 <h:form>
触发的 POST 导航时执行另一种观点。而且,属性名称中的术语“postback”也证实了这一点。该术语在 Web 开发领域的意思是“页面本身 URL 上的 POST 请求”。
您需要通过 GET 请求而不是 POST 请求打开它。替换<h:commandButton>
通过<h:button>
:
<h:button outcome="viewActionStart.xhtml" value="To f:viewAction Page" />
(注意:<h:form>
不再需要)
或者,如果您确实打算出于某种不清楚的原因首先执行 POST 请求(如果您调用 bean 操作方法,那么会更容易理解,但您在这里只是进行导航,因此整个 POST 请求没有任何意义),然后让它发送重定向:
<h:commandButton action="viewActionStart.xhtml?faces-redirect-true" value="To f:viewAction Page" />
无论哪种方式,URL 现在都应该正确反射(reflect)在地址栏中。这本身确实是一个强烈的暗示,表明你做事的方式是错误的;)
关于jsf - f :viewAction ignored, 当 commandButton 导航到页面时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28914293/
当我使用 PrimeFaces 时 p:commandButton 我没有看到输入的验证消息(默认的 h: 或 PrimeFaces p: 的。)例如 当我使用默认命令按钮时 我确实看到了验证。
当鼠标指针悬停在另一个命令按钮上时,我需要显示一个 primefaces 命令按钮,但只有在非常必要时我才能使用 div。如果可能的话,使用 onmuseover 事件会更好,例如: 最佳答案 如
要求是在单击按钮时打开一个新窗口/选项卡。新窗口应重定向到新 URL 或新页面。我尝试过以下代码: 但这会再次打开当前页面。如何设置在新窗口/选项卡中打开新页面或网址? 最佳答案 试试这个: XHT
出于与此问题无关的原因,我已在我的应用程序中将 h:commandButton 完全替换为 a4j:commandLink。从那时起,我在 IE8 中看到了一些奇怪的副作用,例如失去焦点的选择菜单和无
style to
有谁知道如何将相同的样式从命令按钮放到所有命令链接? 我希望所有链接都这样显示(覆盖链接样式并使用按钮样式): 普通按钮: 悬停按钮: 按下的按钮: 我目前的 primefaces 主题是 开始 最佳
我想在 backingbean 中执行一个函数,在存在验证错误的表单中使用命令按钮。 使用代码示例,我想调用函数“resiCon.cancel()”,而不管表单上是否存在验证错误。 你能帮帮我吗?
我的问题是。我有一个primefaces 对话框(模态窗口)。它里面有一个命令按钮。当我打开对话框并单击命令按钮时,对话框外部和后面的输入也会被验证。我只想处理对话框内的输入。 重要的是,我将对话框添
我使用 Primefaces 轮播组件来显示项目列表。我想做的是在每个轮播项目上显示一个命令按钮,它会触发 bean 上的方法来确认或拒绝条目。 现在它只适用于轮播的第一个条目。单击另一个条目不会调用
我正在使用来自JSF的命令按钮。我不知道为什么我不能调用我的javascript函数。当我单击按钮时,不会显示任何警报。 我的Javascript函数: function checkPassword
我想制作一个导航到不同 URL 的按钮,并在 URL 中传递一些请求参数。 outputLink 有效,但我想要一个按钮,commandButton 看起来不错但我可以传递参数。 有解决办法吗? 最佳
我遇到了 commandButton 的问题,它仅在提交类型时才起作用。有人可以看看并告诉我是否有解决方案吗?下面的代码非常简单,并且确实有说明我需要的建议。不执行方法 test()。方法 runSu
在我的 xhtml 中,在 内标签我有多个面板,a4j:jsFunction 和 rich:popupPanel 以及 rich:panel。在我的 rich:panel 中,我有一些文本区域。然后
我想要一个代码来取消选中工作簿中所有工作表的所有名为“CheckBox1”的复选框。不幸的是,我当前的代码不起作用,我不确定为什么 - 它只适用于事件工作表。 Private Sub CommandB
我正在使用 Primefaces 使我的应用程序更加美观。我注意到 p:commandButton 和 h:commandButton 的工作方式不同。 p:commandButton 调用该方法并且
对于以下代码,我收到此错误 Method or Data Member not found. Private Sub Workbook_Open() Dim ws1 As Worksheet:
我是 JSF 和 RichFaces 的新手。我有一个应该调用 bean 方法的按钮。当我使用 它工作正常,但是当我点击 没有任何反应。 我的bean代码: public class LoginB
我正在使用 JSF,我想像 h:outputFormat 一样参数化命令按钮的文本。 有点像 此刻的我 但这让我在每次有参数时将所有存储为属性的文本一分为二 有什么提示吗? 最佳答案 我们使用
嗨,我有一个问题一直想问。我说的是不同类型的 type 标签。我读了一点,但大多数页面只有不同标签的名称,仅此而已。这样的 CommandButton、forms 或 tags 的范围是什么?使用标记
我有一个 Primefaces 命令按钮 自定义CSS类 .mybutton{ margin-left: 10px; margin-bottom: 10px; widt
我有两个命令按钮,当我点击输入时,第一个提交。如果用户点击回车,我真的只想提交第二个按钮。有任何想法吗? 最佳答案 我意识到这个问题很老,但也许有人看到不同的解决方案仍然很有趣。 您可以使用 Prim
我是一名优秀的程序员,十分优秀!