ICEfaces
  1. ICEfaces
  2. ICE-7798

NPE in Showcase using ice:gMap -> Render Type

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: EE-3.0.0.BETA
    • Fix Version/s: 3.1.0.BETA1, 3.1, EE-3.0.0.GA_P01
    • Component/s: Bridge
    • Labels:
      None
    • Environment:
      ICEfaces 3, Tomcat 7, IE9 with Document Mode IE9
    • Affects:
      Sample App./Tutorial

      Description

      Same behavior in the showcase. Details below:

       ice:gMap > Render Type

      Navigating to the render type page displays Server Internal Error popup. (only reproducible in IE9 with document mode set to IE9, works fine in IE8, IE7, Chrome and FF. Also works in IE9 mode with document mode of IE8 or 7).
      Console output for IE9 & document mode set to IE9:
      [window] received error message [code: 200]: <?xml version='1.0' encoding='UTF-8'?>
      <partial-response><error><error-name>class java.lang.NullPointerException</error-name><error-message><![CDATA[]]></error-message></error><changes><extension aceCallbackParam="validationFailed">{"validationFailed":false}</extension></changes></partial-response>

      Related JIRA - ICE-7704
      uncomment
      //@MenuLink(title = "menu.compat.map.subMenu.type", exampleBeanName = MapType.BEAN_NAME),
      in org.icefaces.samples.showcase.example.compat.map.MapBean and launch app in IE9 to reproduce.

      NOTE: The showcase application was deployed on Tomcat 7 during the test. It was using the icefaces 3 trunk code (rev#27509). Visually you will be able to see a Server Internal Error popup when navigating to ice:gMap - Render Type example.

        Activity

        Hide
        Jack Van Ooststroom added a comment -

        The ice:gMap -> Render Type component page might be commented out in the MapBean.java file:

        @MenuLink(title = "menu.compat.map.subMenu.latlong", exampleBeanName = MapLatLong.BEAN_NAME),
        @MenuLink(title = "menu.compat.map.subMenu.controls", exampleBeanName = MapControls.BEAN_NAME),
        @MenuLink(title = "menu.compat.map.subMenu.zoom", exampleBeanName = MapZoom.BEAN_NAME),
        //@MenuLink(title = "menu.compat.map.subMenu.type", exampleBeanName = MapType.BEAN_NAME),
        @MenuLink(title = "menu.compat.map.subMenu.load", exampleBeanName = MapLoad.BEAN_NAME)

        In order to enable the component page, uncomment the commented line, rebuild and redeploy the showcase.war

        Show
        Jack Van Ooststroom added a comment - The ice:gMap -> Render Type component page might be commented out in the MapBean.java file: @MenuLink(title = "menu.compat.map.subMenu.latlong", exampleBeanName = MapLatLong.BEAN_NAME), @MenuLink(title = "menu.compat.map.subMenu.controls", exampleBeanName = MapControls.BEAN_NAME), @MenuLink(title = "menu.compat.map.subMenu.zoom", exampleBeanName = MapZoom.BEAN_NAME), //@MenuLink(title = "menu.compat.map.subMenu.type", exampleBeanName = MapType.BEAN_NAME), @MenuLink(title = "menu.compat.map.subMenu.load", exampleBeanName = MapLoad.BEAN_NAME) In order to enable the component page, uncomment the commented line, rebuild and redeploy the showcase.war
        Hide
        Jack Van Ooststroom added a comment -

        This is a follow-up JIRA to ICE-7448

        Show
        Jack Van Ooststroom added a comment - This is a follow-up JIRA to ICE-7448
        Hide
        Evgheni Sadovoi added a comment - - edited

        This bug is still reproducible. Take a look at the attached screenshot IEconsoleOutput.jpg showing IE9 console output in different document modes side by side.

        Show
        Evgheni Sadovoi added a comment - - edited This bug is still reproducible. Take a look at the attached screenshot IEconsoleOutput.jpg showing IE9 console output in different document modes side by side.
        Hide
        Mircea Toma added a comment - - edited

        When decorating the event object we use IE or Netscape-like specific implementations. Choosing the right one is done by looking at the global variable window.event, if present, IE implementation is used. Problem is that sometimes window.event can point to non-DOM events (like 'onreadystate' in XHR) and the decorator will use that even when an event object is provided. The solution applied tries to use the provided event object, when missing the window.event is used then.

        Show
        Mircea Toma added a comment - - edited When decorating the event object we use IE or Netscape-like specific implementations. Choosing the right one is done by looking at the global variable window.event, if present, IE implementation is used. Problem is that sometimes window.event can point to non-DOM events (like 'onreadystate' in XHR) and the decorator will use that even when an event object is provided. The solution applied tries to use the provided event object, when missing the window.event is used then.
        Hide
        Evgheni Sadovoi added a comment -

        I can still reproduce this on my machine with maintenance branch code rev #28485. It's no longer an issue with IF3 trunk version of the code.

        Show
        Evgheni Sadovoi added a comment - I can still reproduce this on my machine with maintenance branch code rev #28485. It's no longer an issue with IF3 trunk version of the code.
        Hide
        Mircea Toma added a comment -

        Applied fix to maintenance branch as well.

        Show
        Mircea Toma added a comment - Applied fix to maintenance branch as well.
        Hide
        Ken Fyten added a comment -

        Re-opened.

        This change is causing new regression test failures with the specific combination of IE7 browser and MyFaces JSF (other browsers or using mojarra passes):

        Icefaces3.0.x-maintenance revision# 28507
        Server: tomcat6 , on icepc13
        Browser: FF3.6, IE7 & GoogleChrome17

        compat-basic:
        Internet Explorer: Test Compat Basic times out waiting for text 'Stock JSF*Show*Hide based on backing bean' to render. Fails manually, clicking on 'Stock JSF Page' button in Internet Explorer does not redirect to Stock JSF page. This is not an issue in Firefox or Chrome.

        basic:
        Internet Explorer: Test Basic application times out waiting for text 'Stock JSF: Show / Hide based on backing bean' to render. Fails manually, clicking on 'Stock JSF Page' button in Internet Explorer does not redirect to Stock JSF page. This is not an issue in Firefox or Chrome.

        Show
        Ken Fyten added a comment - Re-opened. This change is causing new regression test failures with the specific combination of IE7 browser and MyFaces JSF (other browsers or using mojarra passes): Icefaces3.0.x-maintenance revision# 28507 Server: tomcat6 , on icepc13 Browser: FF3.6, IE7 & GoogleChrome17 compat-basic: Internet Explorer: Test Compat Basic times out waiting for text 'Stock JSF*Show*Hide based on backing bean' to render. Fails manually, clicking on 'Stock JSF Page' button in Internet Explorer does not redirect to Stock JSF page. This is not an issue in Firefox or Chrome. basic: Internet Explorer: Test Basic application times out waiting for text 'Stock JSF: Show / Hide based on backing bean' to render. Fails manually, clicking on 'Stock JSF Page' button in Internet Explorer does not redirect to Stock JSF page. This is not an issue in Firefox or Chrome.
        Hide
        Evgheni Sadovoi added a comment - - edited

        This is no longer reproducible on the maintenance branch of ICEfaces showcase since rev#28507. Added ice:gmap > Render Type link back to the showcase. (rev# 28514)

        Show
        Evgheni Sadovoi added a comment - - edited This is no longer reproducible on the maintenance branch of ICEfaces showcase since rev#28507. Added ice:gmap > Render Type link back to the showcase. (rev# 28514)
        Hide
        Mircea Toma added a comment -

        I could not reproduce the IE7+MyFaces issue. The basic and basic-compat were behaving in the same way as when tested with Chrome or FF.

        On the other hand running IE7+Mojarra after clicking the 'Stock JSF Page' the browser would freeze for some time (30sec) and then render the expected content.

        Show
        Mircea Toma added a comment - I could not reproduce the IE7+MyFaces issue. The basic and basic-compat were behaving in the same way as when tested with Chrome or FF. On the other hand running IE7+Mojarra after clicking the 'Stock JSF Page' the browser would freeze for some time (30sec) and then render the expected content.
        Hide
        Carmen Cristurean added a comment -

        Tested ice:gMap > Render Type using 3.0 branch rev. 28588 (Mojarra), server: Tomcat 7.0.8/7.0.26, browsers IE9, IE8, IE7, Chrome, FF11.

        First, the showcase application was deployed on icepc-ie9 and accessed locally on IE9, and no errors could be reproduced.

        Then the application was deployed on my PC and the pages were loaded remotely in IE9 from icepc-ie9, and I got JS errors:

        1)when loading the ice:gMap page in IE9

        Webpage error details

        User Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C)
        Timestamp: Thu, 29 Mar 2012 22:17:37 UTC
        Message: 'GClientGeocoder' is undefined
        Line: 8
        Char: 154801
        Code: 0
        URI: http://10.18.39.149:8080/showcase/javax.faces.resource/icefaces-compat.js.jsf

        2) when clicking on Render Type link:

        Message: 'GMap2' is undefined
        Line: 8
        Char: 157086
        Code: 0
        URI: http://10.18.39.149:8080/showcase/javax.faces.resource/icefaces-compat.js.jsf

        When loading the pages remotely in IE7 from icepc13, 2 Runtime Errors occurred when clicking ice:gMap link, and when clicking on Render Type link (same messages as for IE9).

        In IE8, Firefox 11, Chrome17 (tested locally): no issues.

        Show
        Carmen Cristurean added a comment - Tested ice:gMap > Render Type using 3.0 branch rev. 28588 (Mojarra), server: Tomcat 7.0.8/7.0.26, browsers IE9, IE8, IE7, Chrome, FF11. First, the showcase application was deployed on icepc-ie9 and accessed locally on IE9, and no errors could be reproduced. Then the application was deployed on my PC and the pages were loaded remotely in IE9 from icepc-ie9, and I got JS errors: 1)when loading the ice:gMap page in IE9 Webpage error details User Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C) Timestamp: Thu, 29 Mar 2012 22:17:37 UTC Message: 'GClientGeocoder' is undefined Line: 8 Char: 154801 Code: 0 URI: http://10.18.39.149:8080/showcase/javax.faces.resource/icefaces-compat.js.jsf 2) when clicking on Render Type link: Message: 'GMap2' is undefined Line: 8 Char: 157086 Code: 0 URI: http://10.18.39.149:8080/showcase/javax.faces.resource/icefaces-compat.js.jsf When loading the pages remotely in IE7 from icepc13, 2 Runtime Errors occurred when clicking ice:gMap link, and when clicking on Render Type link (same messages as for IE9). In IE8, Firefox 11, Chrome17 (tested locally): no issues.
        Hide
        Carmen Cristurean added a comment - - edited

        Tested basic and compat-basic (MyFaces) in IE7 using 3.0 branch rev. 28594, server: Tomcat 7.0.26, .
        I could not reproduce the failures in IE7 w/ MyFaces, when building the apps on my PC (Windows 7 64 bit).
        I could reproduce the failures when building the apps on icepc13 using the same code revision. (Windows XP 32 bit); java version "1.6.0_26", Java(TM) SE Runtime Environment (build 1.6.0_26-b03).

        Show
        Carmen Cristurean added a comment - - edited Tested basic and compat-basic (MyFaces) in IE7 using 3.0 branch rev. 28594, server: Tomcat 7.0.26, . I could not reproduce the failures in IE7 w/ MyFaces, when building the apps on my PC (Windows 7 64 bit). I could reproduce the failures when building the apps on icepc13 using the same code revision. (Windows XP 32 bit); java version "1.6.0_26", Java(TM) SE Runtime Environment (build 1.6.0_26-b03).
        Hide
        Carmen Cristurean added a comment -

        Tested basic and compat-basic (MyFaces) in IE7 on icepc18 using 3.0 branch rev. 28579, server: Tomcat6; java version "1.6.0_26" Java(TM) SE Runtime Environment (build 1.6.0_26-b03), and could not reproduce the issue.

        Show
        Carmen Cristurean added a comment - Tested basic and compat-basic (MyFaces) in IE7 on icepc18 using 3.0 branch rev. 28579, server: Tomcat6; java version "1.6.0_26" Java(TM) SE Runtime Environment (build 1.6.0_26-b03), and could not reproduce the issue.
        Hide
        Carmen Cristurean added a comment -

        Something must be messed up with the IE7 browser on icepc13: basic and compat-basic test fails in IE7 on icepc13, for the locally deployed apps on icepc13, but it passes in IE7 on icepc13 if accessing the same app deployed on icepc18.
        Test passes in IE7 on icepc18 if accessing any of the apps, the ones deployed locally on icepc18, or the ones on icepc13.

        Show
        Carmen Cristurean added a comment - Something must be messed up with the IE7 browser on icepc13: basic and compat-basic test fails in IE7 on icepc13, for the locally deployed apps on icepc13, but it passes in IE7 on icepc13 if accessing the same app deployed on icepc18. Test passes in IE7 on icepc18 if accessing any of the apps, the ones deployed locally on icepc18, or the ones on icepc13.

          People

          • Assignee:
            Carmen Cristurean
            Reporter:
            Jack Van Ooststroom
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: