Uploaded image for project: 'MyFaces Core'
  1. MyFaces Core
  2. MYFACES-2350

All renderers of components that implements ClientBehaviorHolder should encode javascript attributes

Agile BoardAttach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Task
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 2.0.1
    • JSR-314
    • None

    Description

      All components in javax.faces.component package implements ClientBehaviorHolder, and has properties used to render javascript.

      Right now, f:ajax tag handler implementation attach AjaxBehavior instances, but it is responsibility of the renderer to retrieve it and render it properly.

      This part is necessary to make f:ajax tag handler work (because this part shows the results!)

      There are two properties that needs special attention, because it collision with properties:

      clientEvent property html javascript in
      -------------------------------------------------------------------------------------------------------------
      valueChange valueChangeListener onchange UIInput
      action actionExpression onclick UICommand

      The interfaces _ChangeSelectProperties, _EventProperties, _FocusBlurProperties define javascript properties. Also, the class _HtmlBody has onload and onunload.

      We need to change all renderers to deal with this, taking into account the previous information.

      Also, it is necessary to add a call to Behavior.broadcast in UIComponentBase.broadcast, as described on its javadoc

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            lu4242 Leonardo Uribe
            lu4242 Leonardo Uribe
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment