init方法连参数都不填
Init method is not filled in even with parameters
我花了几个小时试图弄清楚为什么我无法检索 link 的参数。在 this 问题之后,我通过传递参数完成了 link。我的问题比较简单,如果我可以在用户单击 link 时打开的弹出窗口中获取参数。除了我买不到。
我的class有一个用@Create注释的方法,每次初始化对象时它都会执行这个方法。
我可以获得 idsess_
参数的唯一方法是在 URL 中,但我无法传递我想要的任何参数 URL.
简而言之,通过单击我的 <a:commandLink>
希望将 <f:param>
传递给 bean,同样根据这些参数进行处理。
编辑:更改了我的代码并创建了我自己的动作。在这种情况下,我重用了另一个视图的动作。我重新创建了我的操作并使用了已接受的答案中描述的方法
不确定您的 <a:commandLink/>
组件是什么? (我假设你以某种方式重新映射了 a4j:commandLink
?)
我认为您遇到的问题是 @RequestParameter
变量仅在页面首次呈现时填充,当您单击 commandLink 时执行回发,因此值丢失。
您应该尝试进行重定向(即使用 <s:link>
和 <f:param>
而不是 commandLink)或者您可以使用 pages.xml 传递参数来绑定请求参数,使用此标记:
<page view-id="/your-page.xhtml">
<param name="pId" value="#{bean.variable}" required="false" />
<action execute="#{bean.action}" />
</page>
我花了几个小时试图弄清楚为什么我无法检索 link 的参数。在 this 问题之后,我通过传递参数完成了 link。我的问题比较简单,如果我可以在用户单击 link 时打开的弹出窗口中获取参数。除了我买不到。
我的class有一个用@Create注释的方法,每次初始化对象时它都会执行这个方法。
我可以获得 idsess_
参数的唯一方法是在 URL 中,但我无法传递我想要的任何参数 URL.
简而言之,通过单击我的 <a:commandLink>
希望将 <f:param>
传递给 bean,同样根据这些参数进行处理。
编辑:更改了我的代码并创建了我自己的动作。在这种情况下,我重用了另一个视图的动作。我重新创建了我的操作并使用了已接受的答案中描述的方法
不确定您的 <a:commandLink/>
组件是什么? (我假设你以某种方式重新映射了 a4j:commandLink
?)
我认为您遇到的问题是 @RequestParameter
变量仅在页面首次呈现时填充,当您单击 commandLink 时执行回发,因此值丢失。
您应该尝试进行重定向(即使用 <s:link>
和 <f:param>
而不是 commandLink)或者您可以使用 pages.xml 传递参数来绑定请求参数,使用此标记:
<page view-id="/your-page.xhtml">
<param name="pId" value="#{bean.variable}" required="false" />
<action execute="#{bean.action}" />
</page>