jsf-extensions
  1. jsf-extensions
  2. JSF_EXTENSIONS-45

Change behavior of execute and render options

    Details

    • Type: Bug Bug
    • Status: Open
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: current
    • Fix Version/s: milestone 1
    • Component/s: www
    • Labels:
      None
    • Environment:

      Operating System: All
      Platform: Sun

    • Issuezilla Id:
      45
    • Status Whiteboard:
      Hide

      target_r2

      Show
      target_r2

      Description

      The current specification for the "execute" and "render" options to
      fireAjaxTrainsaction() is:

      execute

      Comma separated string containing a list of client ids against which
      the execute portion of the request processing lifecycle must be
      run. This is known as a "partial traversal". If the value of the
      option is the single string "none" without the quotes, the execute
      portion of the lifecycle will be effectively skipped. If this option
      is not specified at all, the value of the render parameter is used
      as the value of the option. If that is not specified, the entire
      view is traversed during the execute portion of the request
      proecssing lifecycle.

      render

      Comma separated string containing a list of client ids against which
      the render portion of the request processing lifecycle must be
      run. If not specified, the entire view is rendered. If the value of
      the option is the single string "none" without the quotes, the
      render portion of the lifecycle will be effectively skipped.

      I propose we change the above specification as follows:

      execute

      Comma separated string containing a list of client ids. Each client
      id in the list identifies a node in the server side View for the
      current page. For each node in the list, the execute portion of the
      request processing lifecycle will visit that node and its children
      in the same traversal order as the usual non-Ajax lifecycle. If
      this option is not specified the entire view is traversed.

      execute

      Comma separated string containing a list of client ids. Each client
      id in the list identifies a node in the server side View for the
      current page. For each node in the list, the render portion of the
      request processing lifecycle will visit that node and its children
      in the same traversal order as the usual non-Ajax lifecycle. If
      this option is not specified the entire view is traversed.

        Activity

        Hide
        rogerk added a comment -

        +1

        Make sure to update the sample apps (if needed).

        Show
        rogerk added a comment - +1 Make sure to update the sample apps (if needed).
        Hide
        mattbohm added a comment -

        I believe the default for execute should not be the entire view but rather the
        value of the inputs parameter. I have observed in my Currency Trader sample app
        that executing over nodes whose input has not been submitted can cause problems.

        I think we should make explicit in these descriptions that we are supporting the
        "all" and "none" keywords.

        Therefore I propose the following revision. (Note I've opted for the...is it
        British?...comma-outside-the-quotes punctuation technique.)

        inputs

        Comma separated string containing a list of client ids of input
        elements whose values are to be submitted to the server.
        If the value of this option is the string "none", no input elements
        are submitted.
        If the value of this option is the string "all" or if this option
        is not specified, the values of all input elements in the current form are
        submitted.

        execute

        Comma separated string containing a list of client ids. Each client
        id in the list identifies a node in the server side View for the
        current page. For each node in the list, the execute portion of the
        request processing lifecycle will visit that node and its children
        in the same traversal order as the usual non-Ajax lifecycle.
        If the value of this option is the string "none", the execute
        portion of the lifecycle is effectively skipped.
        If the value of this option is the string "all", the entire view is traversed.
        If this option is not specified, the value of the inputs option is used.
        If neither this option nor the inputs option is specified, the entire view
        is traversed.

        render

        Comma separated string containing a list of client ids. Each client
        id in the list identifies a node in the server side View for the
        current page. For each node in the list, the render portion of the
        request processing lifecycle will visit that node and its children
        in the same traversal order as the usual non-Ajax lifecycle.
        If the value of this option is the string "none", the render
        portion of the lifecycle is effectively skipped.
        If the value of this option is the string "all" or if this option
        is not specified, the entire view is traversed.

        Show
        mattbohm added a comment - I believe the default for execute should not be the entire view but rather the value of the inputs parameter. I have observed in my Currency Trader sample app that executing over nodes whose input has not been submitted can cause problems. I think we should make explicit in these descriptions that we are supporting the "all" and "none" keywords. Therefore I propose the following revision. (Note I've opted for the...is it British?...comma-outside-the-quotes punctuation technique.) inputs Comma separated string containing a list of client ids of input elements whose values are to be submitted to the server. If the value of this option is the string "none", no input elements are submitted. If the value of this option is the string "all" or if this option is not specified, the values of all input elements in the current form are submitted. execute Comma separated string containing a list of client ids. Each client id in the list identifies a node in the server side View for the current page. For each node in the list, the execute portion of the request processing lifecycle will visit that node and its children in the same traversal order as the usual non-Ajax lifecycle. If the value of this option is the string "none", the execute portion of the lifecycle is effectively skipped. If the value of this option is the string "all", the entire view is traversed. If this option is not specified, the value of the inputs option is used. If neither this option nor the inputs option is specified, the entire view is traversed. render Comma separated string containing a list of client ids. Each client id in the list identifies a node in the server side View for the current page. For each node in the list, the render portion of the request processing lifecycle will visit that node and its children in the same traversal order as the usual non-Ajax lifecycle. If the value of this option is the string "none", the render portion of the lifecycle is effectively skipped. If the value of this option is the string "all" or if this option is not specified, the entire view is traversed.
        Hide
        Ed Burns added a comment -

        target_r2

        Show
        Ed Burns added a comment - target_r2

          People

          • Assignee:
            jsf-extensions-issues
            Reporter:
            Ed Burns
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated: