Java p:commandLink/setter方法中的f:setPropertyActionListener不将数据传输到关联onclick属性的getter方法
f:p:commandLink中的setPropertyActionListener 如何将数据从target-attribute的setter带到周围onclick属性的getter 我想在p:CommandLink(onclick=“window.open(“…”)中为datatable的每一行构建一个超链接。因此,“somewebsite”的请求参数会根据实际行的不同而变化。 我有一个有效的p:commandLink,因为我可以生成一个新的浏览器窗口,但只能使用一个(常量![这就是问题/挑战])网站。 我还可以通过p:commandLink从每一行访问所需的数据,这意味着超链接请求参数所需的所属数据,但我无法将其组合在一起,因为我得到了一个null指针异常 看,标有//的地方似乎就是问题所在Java p:commandLink/setter方法中的f:setPropertyActionListener不将数据传输到关联onclick属性的getter方法,java,jsf-2,primefaces,Java,Jsf 2,Primefaces,f:p:commandLink中的setPropertyActionListener 如何将数据从target-attribute的setter带到周围onclick属性的getter 我想在p:CommandLink(onclick=“window.open(“…”)中为datatable的每一行构建一个超链接。因此,“somewebsite”的请求参数会根据实际行的不同而变化。 我有一个有效的p:commandLink,因为我可以生成一个新的浏览器窗口,但只能使用一个(常量![这就是问题/挑
我无法复制您的代码,我在没有
数据表的情况下简化了代码
而不是窗口。打开
函数我只是使用了target=“\u blank”
,如本文所述
您所犯的错误是使用onclick
加上f:setPropertyActionListener
。中解释了该错误不起作用的原因
更改url需要faces redirect=true
(阅读更多信息),并且ajax
必须为false
然而,当您想要通过js调用bean函数时,请查看
xhtml页面:
<h:form id="form_open_window" target="_blank">
<p:commandLink value="show" title="show metatdata" action="#{columnsViewZwei.goToUrl()}" ajax="false" >
<f:setPropertyActionListener value="metadata_parameter" target="#{columnsViewZwei.metadata}" />
</p:commandLink>
</h:form>
private String testurl = "index";
private String metadata;
public String getMetadata() {
return metadata;
}
public void setMetadata(String metadata) {
this.metadata = metadata;
}
public String goToUrl() {
System.out.println(metadata);
return testurl + "?faces-redirect=true&fileIdentifier=" + metadata;
}
PS:如果您不想偏离您的解决方案太多,请评估oncomplete
的使用,而不是onclick
,但我没有尝试
我希望这是有用的。谢谢你的快速回答。我使用了你的建议,但所发生的不是我想要的。
(桌子变形了等)
我将System.out.println(…)放入每个方法(getter和setter),就像您对gotour(){…}所做的那样,
但是我在控制台上没有看到任何打印输出,所以调用的代码很神秘
当我点击commandLink时,我得到了一个新窗口,它的facelet“index.xhtml”与我开始时的相同。我想这就是testurl=“index”的效果;我的视图文件(facelet)的名称是“index.xhtml”
我认为你提到其他帖子是件好事,这样我就可以试着理解你的论点
我假设我需要f:setPropertyActionListener中的value=“#{row}”来访问当前的行/数据集,因为在当前的行/数据集中是我构建url以调用/访问远程网站所需的信息
致以亲切的问候,
谨上
茨特拉
呜呜呜呜呜呜
日期:2014年12月22日
不使用Primefaces组件(控制)的可能解决方案是: