Apache Click
Apache Click es un framework para aplicaciones web orientado a páginas y a componentes, desarrollado en Java e implementado mediante la API de Java Servlets. Se trata de un proyecto libre y de código abierto, cuyos resultados se distribuyen bajo la licencia Apache y que se ejecuta en cualquier instalación de JDK (versión 1.5 o superior). Click se graduó como proyecto top level de Apache en noviembre de 2009. El proyecto se retiró en mayo de 2014.[1] ResumenLos objetivos de diseño principales del proyecto son la simpleza, la facilidad de uso, el desempeño y la escalabilidad. Para lograr estos objetivos, Click presenta un diseño intuitivo, orientado a páginas y componentes. Páginas y componentes representan una buena manera de encapsular los conceptos de la web y permiten el desarrollo rápido de aplicaciones. Click aplica un enfoque pragmático, siendo pocas las abstracciones que resulta necesario aprender y entender. El API de Java Servlets se encuentra plenamente al alcance del desarrollador, lo que facilita la conversión de aplicaciones desde un framework basado en acciones a uno basado en componentes. Las páginas y las componentes se desarrollan en Java mientras que las plantillas se escriben en Velocity, FreeMarker o JSP. Las propias componentes saben cómo representarse a sí mismas, aliviando a los desarrolladores de la tarea de manutención de markup redundantes. Una diferencia central entre Click y otros frameworks orientados a componentes consiste en que Click, por su propio diseño, no maneja estados, aunque sí soporta páginas dotadas de estado. Otros frameworksExisten varios otros frameworks orientados a componentes para Java, tales como JSF, Tapestry, WebObjects y Apache Wicket. Algunos desarrolladores prefieren usar frameworks más tradicionales basados en acciones, entre los que se incluyen Apache Struts, Spring MVC y Stripes. EjemploUna aplicación Click tipo Hola mundo, con cuatro archivos:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<body>
<p>$message</p>
</body>
</html>
package org.wikipedia.click;
import org.apache.click.Page;
public class HelloWorld extends Page {
/**
* Constructor
*/
public HelloWorld() {
// Add the value to the map ("message" = "$message")
addModel("message", "Hello World!");
}
}
<?xml version="1.0" encoding="UTF-8"?>
<click-app>
<pages package="org.wikipedia.click"/>
</click-app>
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
<display-name>Click Example</display-name>
<servlet>
<servlet-name>click-servlet</servlet-name>
<servlet-class>org.apache.click.ClickServlet</servlet-class>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>click-servlet</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
</web-app>
Referencias
Enlaces externos
|