javax.faces.render

Class RenderKit

  • Direct Known Subclasses:
    RenderKitWrapper

    public abstract class RenderKit
    extends Object

    RenderKit represents a collection of Renderer instances that, together, know how to render JavaServer Faces UIComponent instances for a specific client. Typically, RenderKits are specialized for some combination of client device type, markup language, and/or user Locale. A RenderKit also acts as a Factory for associated Renderer instances, which perform the actual rendering process for each component.

    A typical JavaServer Faces implementation will configure one or more RenderKit instances at web application startup. They are made available through calls to the getRenderKit() methods of RenderKitFactory. Because RenderKit instances are shared, they must be implemented in a thread-safe manner. Due to limitations in the current specification having multiple RenderKit instances at play in the same application requires a custom ViewHandler instance that is aware of how to deal with this case. This limitation will be lifted in a future version of the spec.

    The RenderKit instance must also vend a ResponseStateManager instance, which is used in the process of saving and restoring tree structure and state.

    • Constructor Detail

      • RenderKit

        public RenderKit()
    • Method Detail

      • addRenderer

        public abstract void addRenderer(String family,
                                         String rendererType,
                                         Renderer renderer)

        Register the specified Renderer instance, associated with the specified component family and rendererType, to the set of Renderers registered with this RenderKit, replacing any previously registered Renderer for this combination of identifiers.

        Parameters:
        family - Component family of the Renderer to register
        rendererType - Renderer type of the Renderer to register
        renderer - Renderer instance we are registering
        Throws:
        NullPointerException - if family or rendererType or renderer is null
      • getRenderer

        public abstract Renderer getRenderer(String family,
                                             String rendererType)

        Return the Renderer instance most recently registered for the specified component family and rendererType, if any; otherwise, return null.

        Parameters:
        family - Component family of the requested Renderer instance
        rendererType - Renderer type of the requested Renderer instance
        Throws:
        NullPointerException - if family or rendererType is null
      • getResponseStateManager

        public abstract ResponseStateManager getResponseStateManager()

        Return an instance of ResponseStateManager to handle rendering technology specific state management decisions.

      • createResponseWriter

        public abstract ResponseWriter createResponseWriter(Writer writer,
                                                            String contentTypeList,
                                                            String characterEncoding)

        Use the provided Writer to create a new ResponseWriter instance for the specified (optional) content type, and character encoding.

        Implementors are advised to consult the getCharacterEncoding() method of class ServletResponse to get the required value for the characterEncoding for this method. Since the Writer for this response will already have been obtained (due to it ultimately being passed to this method), we know that the character encoding cannot change during the rendering of the response.

        Parameters:
        writer - the Writer around which this ResponseWriter must be built.
        contentTypeList - an "Accept header style" list of content types for this response, or null if the RenderKit should choose the best fit. As of the current version, the values accepted by the Standard render-kit for this parameter include any valid "Accept header style" String that includes the String text/html, application/xhtml+xml, application/xml or text/xml. This may change in a future version. The RenderKit must support a value for this argument that comes straight from the Accept HTTP header, and therefore requires parsing according to the specification of the Accept header. Please see Section 14.1 of RFC 2616 for the specification of the Accept header.
        characterEncoding - such as "ISO-8859-1" for this ResponseWriter, or null if the RenderKit should choose the best fit. Please see the IANA for a list of character encodings.
        Returns:
        a new ResponseWriter.
        Throws:
        IllegalArgumentException - if no matching content type can be found in contentTypeList, no appropriate content type can be found with the implementation dependent best fit algorithm, or no matching character encoding can be found for the argument characterEncoding.
      • getComponentFamilies

        public Iterator<String> getComponentFamilies()

        Return an Iterator over the component-family entries supported by this RenderKit instance.

        The default implementation of this method returns an empty Iterator

        Since:
        2.0
      • getRendererTypes

        public Iterator<String> getRendererTypes(String componentFamily)

        Return an Iterator over the renderer-type entries for the given component-family.

        If the specified componentFamily is not known to this RenderKit implementation, return an empty Iterator

        The default implementation of this method returns an empty Iterator

        Parameters:
        componentFamily - one of the members of the Iterator returned by getComponentFamilies().
        Since:
        2.0

Deutsche Übersetzung

Sie haben gebeten, diese Seite auf Deutsch zu besuchen. Momentan ist nur die Oberfläche übersetzt, aber noch nicht der gesamte Inhalt.

Wenn Sie mir bei Übersetzungen helfen wollen, ist Ihr Beitrag willkommen. Alles, was Sie tun müssen, ist, sich auf der Website zu registrieren und mir eine Nachricht zu schicken, in der Sie gebeten werden, Sie der Gruppe der Übersetzer hinzuzufügen, die Ihnen die Möglichkeit gibt, die gewünschten Seiten zu übersetzen. Ein Link am Ende jeder übersetzten Seite zeigt an, dass Sie der Übersetzer sind und einen Link zu Ihrem Profil haben.

Vielen Dank im Voraus.

Dokument erstellt 11/06/2005, zuletzt geändert 18/08/2025
Quelle des gedruckten Dokuments:https://www.gaudry.be/de/java-api-javaee-rf-javax/faces/render/renderkit.html

Die Infobro ist eine persönliche Seite, deren Inhalt in meiner alleinigen Verantwortung liegt. Der Text ist unter der CreativeCommons-Lizenz (BY-NC-SA) verfügbar. Weitere Informationen auf die Nutzungsbedingungen und dem Autor.

Referenzen

  1. Zeigen Sie - html-Dokument Sprache des Dokuments:fr Manuel PHP : https://docs.oracle.com

Diese Verweise und Links verweisen auf Dokumente, die während des Schreibens dieser Seite konsultiert wurden, oder die zusätzliche Informationen liefern können, aber die Autoren dieser Quellen können nicht für den Inhalt dieser Seite verantwortlich gemacht werden.
Der Autor dieser Website ist allein dafür verantwortlich, wie die verschiedenen Konzepte und Freiheiten, die mit den Nachschlagewerken gemacht werden, hier dargestellt werden. Denken Sie daran, dass Sie mehrere Quellinformationen austauschen müssen, um das Risiko von Fehlern zu reduzieren.