[
https://issues.apache.org/jira/browse/DELTASPIKE-710?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14125182#comment-14125182
]
Janario commented on DELTASPIKE-710:
------------------------------------
As I've seen it fails because of 'this' in wrapped functions from
windowhandler.js
p:ajax:
PrimeFaces.ab({s:this,e:'action',p:'form:j_idt44'});;return false;
f:ajax
mojarra.ab(this,event,'action',0,0);return false;
If I bind the function before call it. It works:
oldonclick.bind(this)(evt)
windowshandler.js something like:
//last onclick handler would be assigned to oldonclick
(function storeEvent() {
var oldonclick = links[i].onclick;
links[i].onclick = function (evt) {
evt = evt || window.event;
return storeWindowTree() && oldonclick.bind(this)(evt);
};
})();
> Error using clientWindow and (p|f):ajax
> ---------------------------------------
>
> Key: DELTASPIKE-710
> URL: https://issues.apache.org/jira/browse/DELTASPIKE-710
> Project: DeltaSpike
> Issue Type: Bug
> Components: JSF-Module
> Affects Versions: 1.0.2
> Reporter: Janario
> Attachments: console.log
>
>
> Trying to use CLIENTWINDOW with some h:commandLink and f:ajax or p:ajax
> doesn't work.
> I've tried, in a simple action method (public void actionTest() {} ):
> <h:commandLink action="#{view1Controller.actionTest}">test f:ajax
> <f:ajax />
> </h:commandLink>
> <h:commandLink action="#{view1Controller.actionTest}">test f:ajax
> <p:ajax />
> </h:commandLink>
> For f:ajax it doesn't log any error but doesn't call my action method.
> For p:ajax it logs some error on browser console:
> Uncaught TypeError: Cannot read property 'replace' of undefined
> primefaces.js?ln=primefaces&v=5.0:1
> b.escapeClientId
> primefaces.js?ln=primefaces&v=5.0:1
> PrimeFaces.ajax.Request.send
> primefaces.js?ln=primefaces&v=5.0:2
> PrimeFaces.ajax.Queue.offer
> primefaces.js?ln=primefaces&v=5.0:2
> PrimeFaces.ajax.Request.handle
> primefaces.js?ln=primefaces&v=5.0:2
> PrimeFaces.ab
> primefaces.js?ln=primefaces&v=5.0:2
> onclick
> ?dsrid=949&dswid=8555:1
> d.(anonymous function).onclick.match.d.(anonymous function).onclick
> windowhandler.js?ln=deltaspike&v=1.0.2:2
> d.(anonymous function).onclick.match.d.(anonymous function).onclick
> windowhandler.js?ln=deltaspike&v=1.0.2:2
> I've tried the same with p:commandLink and it works
> <p:commandLink action="#{view1Controller.actionTest}">test f:ajax
> <f:ajax />
> </p:commandLink>
> <p:commandLink action="#{view1Controller.actionTest}">test f:ajax
> <p:ajax />
> </p:commandLink>
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)