Uploaded image for project: 'Tapestry 5'
  1. Tapestry 5
  2. TAP5-1808

Change Form to (by default) immediately render markup when there are validation errors, to avoid creating the session

    Details

      Description

      Historically, Tapestry has needed to keep an instance of ValidationTracker in the session between a form submit and a page re-render, to track user input and input errors; this often means that it is necessary to create the HttpSession just to store this transient value. Tapestry 5.2 went through some contusions to avoid creating the persistent ValidationTracker instance until there were actual errors, to avoid creating the session.

      A better approach is to treat successful and failed form submits differently, at least by default. For failed form submits, where the default is to re-render the active page, the Form component could instead immediately re-render the page. The ValidationTracker instance would not ever have to be persistent at that point.

      In this way, failed form submissions would be treated somewhat like requests with unhandled exceptions: markup is streamed to the client web browser even during a component event request.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                hlship Howard M. Lewis Ship
                Reporter:
                hlship Howard M. Lewis Ship
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: