[richfaces-issues] [JBoss JIRA] (RF-13780) Random JavaScript error due to missing attribute 'richfaces.RICH_CONTAINER'

Michael B (JIRA) issues at jboss.org
Mon Aug 18 07:59:30 EDT 2014


    [ https://issues.jboss.org/browse/RF-13780?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12993464#comment-12993464 ] 

Michael B edited comment on RF-13780 at 8/18/14 7:58 AM:
---------------------------------------------------------

In a quick test we updated the RF version:
| RF | 4.3.7 + dependencies | 4.5.0 Alpha 3 + dependencies |
| Mojarra | 2.1.29 | 2.2.8 |

Less problems than expected, but still there a some (mainly with some CSS being screwed, workarounds to other bugs etc. - didn't re-test the entire application of course...), but at least we can navigate to the page with the problem. Reproducing the steps which lead to the problem in RF 4.3.7 also produce the problem in RF 4.5.0 Alpha 3 ( - although maybe not as frequently.)



was (Author: michaelb80):
In a quick test we updated the RF version:
| RF | 4.3.7 + dependencies | 4.5.0 Alpha 3 + dependencies |
| Mojarra | 2.1.29 | 2.2.8 |

Less problems than expected, but still there a some (mainly with some CSS being screwed, workarounds to other bugs etc. - didn't re-test the entire application of course...), but at least we can navigate to the page with the problem. Reproducing the steps which lead to the problem in RF 4.3.7 does not longer produce the problem in RF 4.5.0 Alpha 3. 

So question is, what makes the difference?

On a side note: before someone says "just use 4.5.0 Alpha 3 then"... - that's no solution, because we can't fix the layout, check problems, verify and re-test the entire application in time for the project deadline - besides no customer would accept an Alpha of the key library (and the first productive project release is due long before RF 4.5 gets final and can be adopted).

> Random JavaScript error due to missing attribute 'richfaces.RICH_CONTAINER'
> ---------------------------------------------------------------------------
>
>                 Key: RF-13780
>                 URL: https://issues.jboss.org/browse/RF-13780
>             Project: RichFaces
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: component, component-tree
>    Affects Versions: 4.3.7
>         Environment: RichFaces 4.3.7
> Mojarra 2.1.29
> Java 7 Update 67 (x64)
> Tomcat 7.0.52 (x64) 
> Firefox 31
>            Reporter: Michael B
>
> First of all: this is a bug report which may be related to RF-13776, since it also originates in the same spot of the JavaScript library of RichFaces.
> Preface:
> The problem is difficult to reproduce systematically, since it only seems to occur in one of n cases of loading one and the same complex xhtml (with exactly the same data from the backing bean).
> The problem is described based on the rich:tree component when clicking on the expand icon of a treeNode which fires a "ToggleEvent".
> Occasionally there is a JavaScript error in the last line of 
> {code}
>     richfaces.ui.TreeNode.emitToggleEvent = function(nodeId) {
>         var node = document.getElementById(nodeId);
>         if (!node) {
>             return;
>         }
>         richfaces.$(node).__fireToggleEvent();
>     };
> {code}
> When the problem occurs, the expression {code}richfaces.$(node){code} evaluates to 'undefined'. 
> Debugging into the function when the problem occurs:
> {code:title=richfaces.$|borderStyle=solid}
> richfaces.$ = function(source) {
>    var element = richfaces.getDomElement( source );
>    if(element)
>    {
>       return( element[richfaces.RICH_CONTAINER] || {} )["component"]
>    }
> };
> {code}
> While the element is correctly evaluated to the treeNode/treeNodeToggle-source, the expression {code}element[richfaces.RICH_CONTAINER]{code} evaluates to 'undefined'.
> Reloading the page one or more times produces correct results, where the attribute is set.
> To be able to provide a reproducable example of the problem, please provide some information under which circumstances the property may not be set correctly for some components. Please also give us a hint, where to debug into the RF JavaScript code to find the spot where this property is set.
> Although the problem doesn't occur all the time, it happens quite often with the effect of breaking the entire application. So for future versions I would suggest a check if {code}richfaces.$(xyz){code} evalutes to a valid result, before invoking any operations on the result and maybe write a message to the a4j:log in cases where a valid result is expected but not returned.



--
This message was sent by Atlassian JIRA
(v6.2.6#6264)


More information about the richfaces-issues mailing list