Tapestry 5
  1. Tapestry 5
  2. TAP5-266

In a conflict between a render phase annotation and the naming convention, the explicit annotation should win

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 5.0.15
    • Fix Version/s: 5.2.0
    • Component/s: tapestry-core
    • Labels:
      None

      Description

      If i have a method like this:

      @AfterRender
      void beginRender()
      {
      }

      it actually gets executed twice. Once during AfterRender and once during BeginRender. Although i agree that is bad coding it can cause some confusion and make it hard to diagnose.

      In my opinion there should be either an error thrown by Tapestry in this situation or it should just ignore the method name when a render phase annotation is present.

      Also, i didn't try if this also happens for component events.

        Activity

        Hugo Palma created issue -
        Hugo Palma made changes -
        Field Original Value New Value
        Priority Major [ 3 ] Minor [ 4 ]
        Howard M. Lewis Ship made changes -
        Assignee Howard M. Lewis Ship [ hlship ]
        Howard M. Lewis Ship made changes -
        Status Open [ 1 ] In Progress [ 3 ]
        Howard M. Lewis Ship made changes -
        Summary When component render phase annotation is used the method name should be ignored In a conflict between a render phase annotation and the naming convention, the explicit annotation should win
        Howard M. Lewis Ship made changes -
        Status In Progress [ 3 ] Closed [ 6 ]
        Fix Version/s 5.2.0 [ 12314122 ]
        Resolution Fixed [ 1 ]

          People

          • Assignee:
            Howard M. Lewis Ship
            Reporter:
            Hugo Palma
          • Votes:
            1 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development