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

Differences in some API classes between MyFaces 2.3 and Mojarra 2.3

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.3.0, 2.3.1, 2.3.2
    • 2.3.3, 2.3-next-M1
    • JSR-372
    • None

    Description

      Below you will find a list of differences between the MyFaces 2.3 and Mojarra 2.3 APIs. Also, attached you will find the full generated report with results.

       

      There are some differences that might not make sense to change/update, but there are others that make sense, like missing throws or missing methods.

       

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/application/Application.html#getResourceBundle-javax.faces.context.FacesContext-java.lang.String-
      https://javaee.github.io/javaee-spec/javadocs/javax/faces/application/ApplicationWrapper.html#getResourceBundle-javax.faces.context.FacesContext-java.lang.String-

      • Javadocs says to throw FacesException and NullPointerException but the actual signature doesn't have the throws in the method

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/application/ConfigurableNavigationHandlerWrapper.html

      • Remove handleNavigation(javax.faces.context.FacesContext, java.lang.String, java.lang.String, java.lang.String) method
      • Note that the class already have public void handleNavigation(FacesContext context, String fromAction, String outcome)

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/component/behavior/BehaviorBase.html#broadcast-javax.faces.event.BehaviorEvent-

      • Missing throws AbortProcessingException

       

      There are some differences in the classes from javax.faces.component.html.* package

       

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/component/UIColumn.html

      • Remove getId() method, this should be inherited from UIComponentBase

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/component/UIComponentBase.html

      • Remove encodeAll method, it should be inherited from UIComponent. But this method looks different from the one in UIComponent
      • Add getListenersForEventClass(), subscribeToEvent() and unsubscribeFromEvent() methods
      • Remove visitTree method, it should be inherited from UIComponent. But this method looks different from the one in UIComponent

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/component/UIData.html

      • Remove encodeEnd method, it should be inherited from UIComponentBase. But this method looks different from the one in UIComponentBase.
      • Remove getContainerClientId method, it should be inherited from UIComponent. But this method looks different from the one in UIComponent
      • Add getClientId() method.
      • Add setValueBinding() method, but this method is now deprecated and replaced by setValueExpression method

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/component/UIGraphic.html

      • Add getValueBinding and setValueBinding methods, but they are deprecated and replaced by getValueExpression and setValueExpression methods.

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/component/UIImportConstants.html#setValueExpression-java.lang.String-javax.el.ValueExpression-

      • Add setValueExpression() method.

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/component/UIInput.html

      • Remove broadcast() method, it should be inherited from UIComponentBase. But this method seems different from the one in UIComponentBase. Do we want to remove it?

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/component/UINamingContainer.html

      • Remove isRendered() method, it should be inherited from UIComponentBase

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/component/UISelectBoolean.html

      • Remove getValue() method, it should be inherited from UIInput

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/component/UISelectItem.html
      https://javaee.github.io/javaee-spec/javadocs/javax/faces/component/UISelectItems.html

      • Remove setRendered() method, it should be inherited from UIComponentBase
      • Remove getFacesContext() method. This should be inherited from UIComponentBase. Do we really want to do this? This file has not been modified since 2013

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/component/UISelectMany.html

      • getConvertedValue() method should be inherited from UIInput, but the implementation in UISelectMany class is a bit different. Do we want to remove it anyway?

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/component/UIViewAction.html#isRendered--
      https://javaee.github.io/javaee-spec/javadocs/javax/faces/component/UIViewAction.html#setRendered-boolean-

      • Add isRendered() and setRendered() methods

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/component/UIViewParameter.html

      • Add throws ConverterException to the getConvertedValue() method
      • Add/override getSubmittedValue() and setSubmittedValue() methods
      • Remove isRendered() method, it should be inherited from UIComponentBase
      • Remove getFacesContext() method. This should be inherited from UIComponentBase. Do we really want to do this? This file has not been modified since 2013

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/component/UIViewRoot.html#processEvent-javax.faces.event.ComponentSystemEvent-

      • Missing method public void processEvent(ComponentSystemEvent event) throws AbortProcessingException
      • Remove getAttributes, setId() and setRendered(), they should be inherited from UIComponentBase

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/component/UIWebsocket.html#setValueExpression-java.lang.String-javax.el.ValueExpression-

      • Missing setValueExpression method in UIWebsocket

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/context/PartialResponseWriter.html

      • Remove endCDATA(), getWrapped() and startCDATA() methods, they should be inherited from ResponseWriterWrapper

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/convert/EnumConverter.html#getAsObject-javax.faces.context.FacesContext-javax.faces.component.UIComponent-java.lang.String-
      https://javaee.github.io/javaee-spec/javadocs/javax/faces/convert/EnumConverter.html#getAsString-javax.faces.context.FacesContext-javax.faces.component.UIComponent-java.lang.Object-

      • Both should remove the throws ConverterException from the method signatrue

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/event/SystemEventListener.html#processEvent-javax.faces.event.SystemEvent-

      • Missing throws AbortProcessingException

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/event/ComponentSystemEventListener.html#processEvent-javax.faces.event.ComponentSystemEvent-

      • Missing throws AbortProcessingException

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/event/PhaseEvent.html

      • Remove equals() and hashCode() methods, but they shoudl be inherited from the Object class. But they seem to implement something different. Not sure if we want to remove these methods.

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/validator/BeanValidator.html#validate-javax.faces.context.FacesContext-javax.faces.component.UIComponent-java.lang.Object-

      • Remove the throws ValidatorException

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/validator/RequiredValidator.html#validate-javax.faces.context.FacesContext-javax.faces.component.UIComponent-java.lang.Object-

      • Remove the throws ValidatorException

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/view/facelets/DelegatingMetaTagHandler.html#applyNextHandler-javax.faces.view.facelets.FaceletContext-javax.faces.component.UIComponent-

      • The applyNextHandler method is missing throws FacesException and ELException

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/view/facelets/Facelet.html#apply-javax.faces.context.FacesContext-javax.faces.component.UIComponent-

      • The apply method needs to remove throws FaceletException, FacesException and ELException

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/view/facelets/FaceletContext.html

      • Remove throws FaceletException, FacesException, ELException from both includeFacelet() methods.

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/webapp/AttributeTag.html

      • Add doEndTag() method, but this method is deprecated now.

      https://javaee.github.io/javaee-spec/javadocs/javax/faces/webapp/UIComponentELTag.html#getELContext--

      • Missing method protected ELContext getELContext()

       

      Attachments

        1. results (1).html
          3.86 MB
          Eduardo Breijo

        Activity

          People

            eduardobreijo Eduardo Breijo
            eduardobreijo Eduardo Breijo
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0h
                0h
                Logged:
                Time Spent - 40m
                40m