0 Replies Latest reply on Jul 14, 2011 6:54 PM by Val Blant

    How to inherit @ResourceDependencies from parent renderer?

    Val Blant Newbie



      It seems to me that there is no way to inherit  @ResourceDependencies when extending an existing renderer. Is that really the case?


      For example, I'm extending the InplaceSelectRenderer. It inherits it's resources from InplaceSelectRendererBase, and this works b/c InplaceSelectRenderer  does not add any of it's own @ResourceDependencies.


      Now, let's say that I want to inherit all this from InplaceSelectRendererBase:




              @ResourceDependency(library = "javax.faces", name = "jsf.js"),

              @ResourceDependency(name = "jquery.js"),

              @ResourceDependency(name = "richfaces.js"),

              @ResourceDependency(name = "jquery.position.js"),

              @ResourceDependency(name = "richfaces-event.js"),

              @ResourceDependency(name = "richfaces-base-component.js"),

              @ResourceDependency(name = "richfaces-selection.js"),

              @ResourceDependency(library = "org.richfaces", name = "inputBase.js"),

              @ResourceDependency(library = "org.richfaces", name = "inplaceBase.js"),

              @ResourceDependency(library = "org.richfaces", name = "popup.js"),

              @ResourceDependency(library = "org.richfaces", name = "popupList.js"),

              @ResourceDependency(library = "org.richfaces", name = "inplaceInput.js"),

              @ResourceDependency(library = "org.richfaces", name = "inplaceSelect.js"),

              @ResourceDependency(library = "org.richfaces", name = "inplaceSelect.ecss") })



      but also add this:




          @ResourceDependency(library = "javascript", name = "prototype-1.7-valblant.js"),

          @ResourceDependency(library = "filteredLabelInplaceSelect/js", name = "filteredLabelInplaceSelect.js"),





      Is this possible without having to explicitly repeat all of the dependencies in InplaceSelectRendererBase? It seems like the Java annotation mechanism prevents this, b/c specifying the same annotation on a subclass wipes the superclass annotation.