Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Won't Fix
    • Affects Version/s: 5.1.0.5
    • Fix Version/s: None
    • Component/s: tapestry-core
    • Labels:
      None

      Description

      After stepping through the javascript, I believe it's because the onsubmit event handler for the form is "javascript:Tapestry.waitForPage(event);" who's first line is "if (Tapestry.pageLoaded) return;".

      This is the equivalent of "if (Tapestry.pageLoaded) return false;" when evaluated to a boolean as it is in the LinkSubmit onClick handler:

      if (onsubmit == undefined || onsubmit.call(window.document, event))

      { this.createHidden(); this.form.submit(); }

      .. and therefore "this.form.submit();" is never called.

      Obviously this is a bug, I'm pretty sure the resolution would be to change Tapestry.waitForPage so that it returns true if the page is loaded and false otherwise, ie:

      waitForPage : function(event)

      { if (Tapestry.pageLoaded) return true; ... return false; }

      This will allow 'waitForPage' to be evaluated to a boolean as it is in LinkSubmit.onClick, however there may be a better solution.

      EG:

      MyPage.tml:
      ----------------------------------------------------------------------------------------------------------------------------------------------------
      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml" xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd" xmlns="tapestry:parameter">
      <t:form t:id="myForm">
      <t:linksubmit t:id="myLink">link</t:linksubmit>
      <t:submit t:id="mySubmit" />
      </t:form>
      </html>
      ----------------------------------------------------------------------------------------------------------------------------------------------------
      MyPage.java
      ----------------------------------------------------------------------------------------------------------------------------------------------------
      public Class MyPage
      {
      public void onSuccessFromMyForm()

      { LOG.debug("onSuccessFromMyForm"); }

      public void onSelectedFromMyLink()

      { LOG.debug("onSelectedFromMyLink"); }

      public void onSelectedFromMySubmit()

      { LOG.debug("onSelectedFromMySubmit"); }

      }
      ----------------------------------------------------------------------------------------------------------------------------------------------------

        Activity

        Paul Stanton created issue -
        Howard M. Lewis Ship made changes -
        Field Original Value New Value
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Cannot Reproduce [ 5 ]
        Paul Stanton made changes -
        Resolution Cannot Reproduce [ 5 ]
        Status Resolved [ 5 ] Reopened [ 4 ]
        Massimo Lusetti made changes -
        Status Reopened [ 4 ] Resolved [ 5 ]
        Resolution Won't Fix [ 2 ]

          People

          • Assignee:
            Unassigned
            Reporter:
            Paul Stanton
          • Votes:
            3 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development