11. A non-transitory computer-readable medium containing computer-executable instructions to automatically generate a custom JavaServer Faces (JSF) component, the instructions operable when executed by one or more computers to effectuate operations comprising: receiving annotated source code that defines a component class for the custom JSF component of a JSF application, the annotated source code being Java code of a Java class that defines behavior of a user interface element in a web page, the custom JSF component being callable by a custom tag in a markup language document at least in part defining the web page, the annotated source code including a Java annotation designated by an @ symbol prefix corresponding to a renderer; and creating the custom JSF component, at least in part, by: identifying the annotation in the received source code; and in response to identifying the annotation, automatically generating a default decode method of the renderer that interprets inputs related to the custom JSF component and associating the renderer with the custom JSF component in a faces-config.xml file of the JSF application without manually adding a reference to the custom JSF component to the faces-config.xml file of the JSF application.
11. A non-transitory computer-readable medium containing computer-executable instructions to automatically generate a custom JavaServer Faces (JSF) component, the instructions operable when executed by one or more computers to effectuate operations comprising: receiving annotated source code that defines a component class for the custom JSF component of a JSF application, the annotated source code being Java code of a Java class that defines behavior of a user interface element in a web page, the custom JSF component being callable by a custom tag in a markup language document at least in part defining the web page, the annotated source code including a Java annotation designated by an @ symbol prefix corresponding to a renderer; and creating the custom JSF component, at least in part, by: identifying the annotation in the received source code; and in response to identifying the annotation, automatically generating a default decode method of the renderer that interprets inputs related to the custom JSF component and associating the renderer with the custom JSF component in a faces-config.xml file of the JSF application without manually adding a reference to the custom JSF component to the faces-config.xml file of the JSF application. 19. The computer-readable medium of claim 11 , comprising: providing a web application to a client device, at least part of the web application including markup generated by a renderer of the custom JSF component based on an output of the custom JSF component.