Xpages Refresh and firefox 3.5 b2

Problem with partial refreshes, worked fine in firefox 3, but not 3.5

i get the error, “problem submitting part of the page, would you like to refresh to entire page?”

in fire bug i see this error

file:

https://webmail.ref-chem.com/domjs/dojo-1.1.1/ibm/xsp/widget/layout/xspClientDojo.js

line number 14

“_10f.push is not a function”

Subject: I fixed it this way…

The problem is related to the call made to obtain the scripts to execute after having reloaded the page: dojo.query(“script”, node).

If the browser supports the function document.querySelectorAll (like FF 3.2 but not FF 3), it is called by dojo.query and returns an object of type StaticNodeList, which does not implement the function push.

Hence, it is necessary to convert the StaticNodeList into one of type dojo.NodeList, the one expected by the xsp client script.

This can be achieved using the call dojo._filterQueryResult, which takes as parameters a list and an optional filter function,returning a dojo.NodeList. If the filter function is not passed, the function returns all the elements of the StaticNodeList as a NodeList.

In terms of code, to apply the fix one must:

  • Edit the file xspClientDojo.js located in the directory data/domino/js/dojo-1.1.1/ibm/xsp/widget/layout, under the Domino installation folder.

  • Search the statement

var _10f=dojo.query(“script”, node);

  • Insert the following statement after the semicolon:

    if (!_10f.push)_10f=dojo._filterQueryResult(_10f);

  • Save and close the file, empty the browser cache and eventually restart the server.

That will do the job

Subject: Same problem!

Does anyone have a solution for this problem?

Subject: FF 3.5 release has same problem

Doing a full update instead a partial update works. But that´s not what I want…

Subject: FF 3.5 release has same problem

I agree, full update is not a good workaround! We need a fix! Would using a more recent version of dojo help? Has anyone found a solution to this?

Subject: xPages and FF 3.5 do not work

Just confirming I get this error also.

I’m 99% sure it’s a dojo problem - but that doesn’t help me solve it.

IBM - can someone over there confirm this? Not being able to support FF 3.5 is a HUGE problem.

Does any one have any suggestions on a work-around yet?

Hopefully 8.5.1 will fix this - or else we got real problems.

Subject: Happens with Safari 4 as well

Happens with Safari 4 as well - not just a Firefox 3.5 issue

Subject: I’m with Steve: Major major issue here

Subject: is there a fix?

Does anyone know if and when this will be fixed or if there is a fix out there. Being able to do partial refreshes was a major plus in xpages and not being able to do this is a showstopper.

Subject: I fixed it this way…

The problem is related to the call made to obtain the scripts to execute after having reloaded the page: dojo.query(“script”, node).

If the browser supports the function document.querySelectorAll (like FF 3.2 but not FF 3), it is called by dojo.query and returns an object of type StaticNodeList, which does not implement the function push.

Hence, it is necessary to convert the StaticNodeList into one of type dojo.NodeList, the one expected by the xsp client script.

This can be achieved using the call dojo._filterQueryResult, which takes as parameters a list and an optional filter function,returning a dojo.NodeList. If the filter function is not passed, the function returns all the elements of the StaticNodeList as a NodeList.

In terms of code, to apply the fix one must:

  • Edit the file xspClientDojo.js located in the directory data/domino/js/dojo-1.1.1/ibm/xsp/widget/layout, under the Domino installation folder.

  • Search the statement

var _10f=dojo.query(“script”, node);

  • Insert the following statement after the semicolon:

if (!_10f.push)_10f=dojo._filterQueryResult(_10f);

  • Save and close the file, empty the browser cache and eventually restart the server.

That will do the job

Subject: Firefox 3.5 and error

I am seeing it as well. OK in FF3.

I will try the full vs partial idea.