ICEfaces
  1. ICEfaces
  2. ICE-7952

The DataTable examples with component bindings throw duplicate id exception when running on MyFaces (was: The DataTable Row State example throws duplicate id exception when running as a portlet with MyFaces)

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 3.0.1, EE-3.0.0.GA, 3.1.0.BETA1
    • Fix Version/s: 3.2
    • Labels:
      None
    • Environment:
      ICEfaces 3 ACE Liferay portlet MyFaces
    • Assignee Priority:
      P1
    • Workaround Exists:
      Yes
    • Workaround Description:
      Hide
      Set the following context parameter to prevent MyFaces from checking for duplicates:


          <context-param>
              <param-name>org.apache.myfaces.CHECK_ID_PRODUCTION_MODE</param-name>
              <param-value>false</param-value>
          </context-param>
      Show
      Set the following context parameter to prevent MyFaces from checking for duplicates:     <context-param>         <param-name>org.apache.myfaces.CHECK_ID_PRODUCTION_MODE</param-name>         <param-value>false</param-value>     </context-param>

      Description

      When testing the DataTable Row State demo on Liferay 6 with MyFaces, I was able to get it to fail with a duplicate ID exception. Other Data Table examples also show this behaviour but I haven't test them all. It can be done in a couple of different ways:

        Activity

        Deryk Sinotte created issue -
        Deryk Sinotte made changes -
        Field Original Value New Value
        Attachment portlet-myfaces-doublerowstate.png [ 14249 ]
        Deryk Sinotte made changes -
        Assignee Deryk Sinotte [ deryk.sinotte ]
        Deryk Sinotte made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Cannot Reproduce [ 5 ]
        Deryk Sinotte made changes -
        Resolution Cannot Reproduce [ 5 ]
        Status Resolved [ 5 ] Reopened [ 4 ]
        Deryk Sinotte made changes -
        Workaround Description Set the following context parameter to prevent MyFaces from checking for duplicates:


            <context-param>
                <param-name>org.apache.myfaces.CHECK_ID_PRODUCTION_MODE</param-name>
                <param-value>false</param-value>
            </context-param>
        Workaround Exists [Yes]
        Salesforce Case []
        Deryk Sinotte made changes -
        Summary The DataTable Row State example occasionally fails when running as a portlet The DataTable Row State example throws duplicate id exception when running as a portlet with MyFaces
        Environment ICEfaces 3 ACE Liferay portlet ICEfaces 3 ACE Liferay portlet MyFaces
        Salesforce Case []
        Affects Version/s 3.1.0.BETA1 [ 10335 ]
        Description When testing the DataTable Row State demo on Liferay 6, I was able to get it to fail under certain conditions. The failure would manifest differently when comparing behaviour under Mojarra with MyFaces. I haven't narrowed down the steps too specifically yet but basically:

        1) Setup two different portal pages with multiple portlets. One page should contain the Row State example (e.g Page a) and the other should not (e.g. Page B)
        2) Visit Page A - the portal page with the Row State portlet. Iinteraction with the portlet doesn't appear necessary from what I've seen so far.
        3) Visit Page B - the portal page without the Row State portlet.
        4) Go back to Page A:

        Mojarra: Doesn't always happen but I frequently see the following in the browser console which prevents any further interaction with the portlet:

        TypeError: 'undefined' is not a constructor (evaluating 'new ice.ace.DataTable')

        MyFaces: Ends up throwing a duplicate id exception as it attempts to render out the table twice for some reason. Screen shot to be attached.
        When testing the DataTable Row State demo on Liferay 6 with MyFaces, I was able to get it to fail with a duplicate ID exception. Other Data Table examples also show this behaviour but I haven't test them all. It can be done in a couple of different ways:

        1) Reload a page with the Data Table Row State example

        or

        1) Setup two different portal pages with a least one of them container a Data Table Row State.
        2) Visit Page A - the portal page with the Row State portlet. Iinteraction with the portlet doesn't appear necessary from what I've seen so far.
        3) Visit Page B
        4) Go back to Page A.

        MyFaces: Ends up throwing a duplicate id exception
        Ken Fyten made changes -
        Salesforce Case []
        Fix Version/s 3.1.0.BETA2 [ 10336 ]
        Assignee Priority P1
        Ken Fyten made changes -
        Salesforce Case []
        Fix Version/s 3.1.0.BETA2 [ 10336 ]
        Assignee Priority P1
        Ken Fyten made changes -
        Link This issue blocks ICE-8293 [ ICE-8293 ]
        Ken Fyten made changes -
        Salesforce Case []
        Fix Version/s 3.2 [ 10338 ]
        Fix Version/s 3.1 [ 10312 ]
        Assignee Priority P2
        Migration made changes -
        Assignee Priority P2 [ 10011 ] P1 [ 10010 ]
        Migration made changes -
        Summary The DataTable Row State example throws duplicate id exception when running as a portlet with MyFaces The DataTable examples with component bindings throw duplicate id exception when running on MyFaces (was: The DataTable Row State example throws duplicate id exception when running as a portlet with MyFaces)
        Description When testing the DataTable Row State demo on Liferay 6 with MyFaces, I was able to get it to fail with a duplicate ID exception. Other Data Table examples also show this behaviour but I haven't test them all. It can be done in a couple of different ways:

        1) Reload a page with the Data Table Row State example

        or

        1) Setup two different portal pages with a least one of them container a Data Table Row State.
        2) Visit Page A - the portal page with the Row State portlet. Iinteraction with the portlet doesn't appear necessary from what I've seen so far.
        3) Visit Page B
        4) Go back to Page A.

        MyFaces: Ends up throwing a duplicate id exception
        When testing the DataTable Row State demo on Liferay 6 with MyFaces, I was able to get it to fail with a duplicate ID exception. Other Data Table examples also show this behaviour but I haven't test them all. It can be done in a couple of different ways:
        Migration made changes -
        Assignee Deryk Sinotte [ deryk.sinotte ] Ken Fyten [ ken.fyten ]
        Migration made changes -
        Assignee Ken Fyten [ ken.fyten ] Nils Lundquist [ nils.lundquist ]
        Migration made changes -
        Status Reopened [ 4 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Migration made changes -
        Resolution Fixed [ 1 ]
        Status Resolved [ 5 ] Reopened [ 4 ]
        Ken Fyten made changes -
        Fix Version/s 3.3 [ 10370 ]
        Fix Version/s 3.2 [ 10338 ]
        Nils Lundquist made changes -
        Status Reopened [ 4 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Ken Fyten made changes -
        Fix Version/s 3.2 [ 10338 ]
        Fix Version/s 3.3 [ 10370 ]
        Ken Fyten made changes -
        Status Resolved [ 5 ] Closed [ 6 ]

          People

          • Assignee:
            Nils Lundquist
            Reporter:
            Deryk Sinotte
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: