Details

    • Type: Task Task
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.7.1
    • Fix Version/s: 1.7.2
    • Component/s: Bridge
    • Labels:
      None
    • Environment:
      ICEfaces

      Description

      | ice.submit.partial=false |
      | ice.event.target=navigationMenuForm:j_id55 |
      | ice.event.captured=navigationMenuForm:effectsContentPanel |
      | ice.event.type=onclick |
      | ice.event.alt=false |
      | ice.event.ctrl=false |
      | ice.event.shift=false |
      | ice.event.meta=false |
      | ice.event.x=52 |
      | ice.event.y=332 |
      | ice.event.left=false |
      | ice.event.right=false |
      | includePath=/WEB-INF/includes/examples/custom/effects.jspx |
      | navigationMenuForm:_idcl=navigationMenuForm:effectsContentPanel |
      | focus_hidden_field= |
      | navigationMenuForm:layoutPnlClpsblExpanded= |
      | navigationMenuForm:customCompClpsblExpanded= |
      | navigationMenuForm:tableCompClpsblExpanded= |
      | navigationMenuForm:extendedCompClpsblExpanded= |
      | icefacesCssUpdates= |
      | navigationMenuForm=navigationMenuForm |
      | ice.session=9rUjELeQFalS3rYPMgcnbA |
      | ice.view=1 |
      | ice.focus=undefined |

        Activity

        Hide
        Ted Goddard added a comment -

        JSF 2.0 is interested in standardized form serialization.

        Show
        Ted Goddard added a comment - JSF 2.0 is interested in standardized form serialization.
        Hide
        Ted Goddard added a comment -

        Mircea please add comments and questions for the JSF 2.0 discussion.

        First, we should verify that everything we are serializing is used:

        focus_hidden_field: not used?
        icefacesCssUpdates: not read by the server?

        Can we pack the event information into a standard form, such as:

        ice.event.type=onclick
        ice.event.detail=0FFFF
        ice.event.xy=52,332

        ice.event.detail is a packed string containing [mouse button 0,1,2, or - for no information][alt T/F][ctrl T/F][shift T/F][meta T/F]
        (Why does the above capture have neither ice.event.left nor ice.event.right?)

        We should check if JSF 1.2 includes double cookie submission for cross-site-request-forgery protection.

        includePath did not appear in subsequent interaction with the application; it's not clear what it is.

        Show
        Ted Goddard added a comment - Mircea please add comments and questions for the JSF 2.0 discussion. First, we should verify that everything we are serializing is used: focus_hidden_field: not used? icefacesCssUpdates: not read by the server? Can we pack the event information into a standard form, such as: ice.event.type=onclick ice.event.detail=0FFFF ice.event.xy=52,332 ice.event.detail is a packed string containing [mouse button 0,1,2, or - for no information] [alt T/F] [ctrl T/F] [shift T/F] [meta T/F] (Why does the above capture have neither ice.event.left nor ice.event.right?) We should check if JSF 1.2 includes double cookie submission for cross-site-request-forgery protection. includePath did not appear in subsequent interaction with the application; it's not clear what it is.
        Hide
        Ted Goddard added a comment -

        JSF 2.0 discussion on event serialization is expected to take place July 31.

        Show
        Ted Goddard added a comment - JSF 2.0 discussion on event serialization is expected to take place July 31.
        Hide
        Ted Goddard added a comment -

        Potentially should include window closing events (and others?).

        Show
        Ted Goddard added a comment - Potentially should include window closing events (and others?).
        Hide
        Mircea Toma added a comment -

        "First, we should verify that everything we are serializing is used:
        focus_hidden_field: not used?
        icefacesCssUpdates: not read by the server?"

        These parameters are used only by some components,. I am pretty sure that fundamentally they are not needed.

        "Can we pack the event information into a standard form, such as:
        ice.event.type=onclick
        ice.event.detail=0FFFF
        ice.event.xy=52,332"

        Right now the parameters used are these:

        basic events
        ------------------
        ice.event.target - the ID of the element which triggered the event
        ice.event.captured - the ID of the element which captured the event
        ice.event.type - the type of event (onkeypress, ondblclick.....)

        mouse and keyboard events
        ---------------------------------------
        ice.event.alt - 'true' if ALT key is pressed
        ice.event.ctrl - 'true' if CTRL key is pressed
        ice.event.shift - 'true' if SHIFT key is pressed
        ice.event.meta - 'true' if META key is pressed

        mouse events
        -------------------
        ice.event.right - 'true' if right mouse button is pressed
        ice.event.left - 'true' if left mouse button is pressed

        keyboard events
        ----------------------
        ice.event.keycode - the key code

        I chose to use just query parameters because the event data can be sent as flat, non-hierarchical data and the serialization and de-serialization is already well known. If we seek a more efficient way of sending the event data then maybe we should pack everything in one sole parameter instead of having some of them packed and some not.

        "Potentially should include window closing events (and others?). "

        That is already possible.

        Show
        Mircea Toma added a comment - "First, we should verify that everything we are serializing is used: focus_hidden_field: not used? icefacesCssUpdates: not read by the server?" These parameters are used only by some components,. I am pretty sure that fundamentally they are not needed. "Can we pack the event information into a standard form, such as: ice.event.type=onclick ice.event.detail=0FFFF ice.event.xy=52,332" Right now the parameters used are these: basic events ------------------ ice.event.target - the ID of the element which triggered the event ice.event.captured - the ID of the element which captured the event ice.event.type - the type of event (onkeypress, ondblclick.....) mouse and keyboard events --------------------------------------- ice.event.alt - 'true' if ALT key is pressed ice.event.ctrl - 'true' if CTRL key is pressed ice.event.shift - 'true' if SHIFT key is pressed ice.event.meta - 'true' if META key is pressed mouse events ------------------- ice.event.right - 'true' if right mouse button is pressed ice.event.left - 'true' if left mouse button is pressed keyboard events ---------------------- ice.event.keycode - the key code I chose to use just query parameters because the event data can be sent as flat, non-hierarchical data and the serialization and de-serialization is already well known. If we seek a more efficient way of sending the event data then maybe we should pack everything in one sole parameter instead of having some of them packed and some not. "Potentially should include window closing events (and others?). " That is already possible.
        Hide
        Ted Goddard added a comment -


        True, it would make sense to pack all fixed-format data into a single parameter (any that do not contain ids) especially if a single recipient on the server was responsible for unpacking.

        Show
        Ted Goddard added a comment - True, it would make sense to pack all fixed-format data into a single parameter (any that do not contain ids) especially if a single recipient on the server was responsible for unpacking.
        Hide
        Mircea Toma added a comment -

        Remove unused input hidden field (aka "form_hidden_field").

        Show
        Mircea Toma added a comment - Remove unused input hidden field (aka "form_hidden_field").

          People

          • Assignee:
            Unassigned
            Reporter:
            Ted Goddard
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: