|
Las páginas
de servidor activas de Java se están convirtiendo en tecnología líder
en la publicación dinámica de sitios web. Este método, que se basa en
el uso de un lenguaje que se está imponiendo como estándar para Internet,
provee la facilidad de uso que se necesita para hacer disponibles páginas
html dinámicamente en sitios web.
Un poco de historia
Desde que se gestó la revolución de Internet, la misma atacó varios
frentes y cautivó a muchos en el mundo cibernético. Asimismo, el mundo
de los desarrolladores encontró campo fértil en la creación de aplicaciones
cien por cien portables y de fácil modificación.
Mientras que en el clásico modelo cliente-servidor cada modificación al
código del programa significaba una nueva versión del lado del cliente,
esta nueva propuesta implicaba que solamente se tocara código en un programa
dentro del servidor y al instante ese cambio impactaría en los accesos
de todos los usuarios.
Por otra parte, en lo que respecta a los accesos en sí, el diseño a través
del web permite de por sí que potencialmente no haya límites en la cantidad
de usuarios conectados a la aplicación.
Ahora, no todo fue color de rosa, como se suele decir. Hubo problemas
relacionados a lo estático del modelo inicial que presentaba el uso de
HTML en las páginas. En función de ello, se comenzaron a implementar soluciones
que tenían que ver con el uso de una interfaz que se creó al respecto,
denominada: CGI.
Mediante el uso de la interfaz de gateway común (Common Gateway Interface),
los desarrolladores pudieron acceder a un mundo nuevo, en el cual podían
crear aplicaciones del lado del servidor, las cuales eran accedidas a
través del navegador.
El gran problema que surgió en cuanto a que la performance de los servidores
se veía gravemente afectada debido a que cada acceso creaba un nuevo proceso
en el sistema, y por tanto se generaba un desaprovechamiento de los recursos.
Es decir, dos usuarios accedían a un mismo recurso en dos procesos diferentes.
Sepamos entender que fue una opción válida inicialmente, y que aún hoy
en día muchos sitios consideran el uso de la interfaz CGI como una opción
viable.
Las opciones
Microsoft lanzó en el año 1997 una nueva propuesta para resolver esta
situación. La propuesta se basaba en la creación dinámica de código HTML
a través de un concepto llamado ASP (Active Server Pages).
La idea básicamente es la misma que se aplica a las páginas JSP, con
la salvedad que siempre caracteriza a Microsoft, que tiene que ver con
que solamente funciona bajo plataformas Microsoft.
Otras opciones
vinieron de la mano de JAVA con los Servlet. A esa altura los scripts
del lado del cliente ya eran populares (JScript y VBScript), pero brindaban
una solución de un lado solo.
La propuesta de los Servlets pasa por la creación de aplicaciones del
lado del servidor y la recepción desde el browser de información para
generar páginas en forma dinámica. Los Servlets son algo así como aplicaciones
tipo CGI pero con la salvedad que son realizadas en JAVA y aprovechando
los recursos de mejor forma que los anteriores.
JSP - Lo nuevo
Esta nueva propuesta tiene que ver con la codificación dentro de la
propia página. Una vez que se accede a la misma, se ejecuta el código
contenido, y la información desplegada en el cliente pasa a ser HTML puro
generado en el momento de la consulta.
Características de ASP
- Separación de la presentación y el contenido.
Con JSP se
programa dentro de las páginas con código de JAVA, pero encerrando el
código en un conjunto de marcas que sólo se interpretan en el servidor,
al momento de ejecutar la aplicación.
Este sistema hace que quede bien delimitado dónde empieza el trabajo de
los desarrolladores y dónde termina. El diseñador no se preocupa por ese
contenido sino sólo por el diseño.
El modelo
de uso de JSP se basa en la reutilización de componentes Java Beans. El
uso de los mismos hace que se optimice considerablemente la utilización
de recursos en el servidor. La consigna es: en las páginas se codifica
dentro de tags o marcas y para resolver tareas complejas se accede a componentes
beans reutilizables por todos.
- Uso de XML dentro de los scripts.
Es una realidad que los programadores de páginas web, no siempre están
familiarizados con todos los lenguajes de programación. Por tanto, este
nuevo acercamiento les brinda la posibilidad de embeber lenguaje de marcas
más complejos como XML para acceder a diferentes componentes o para levantar
applets en los clientes.
¿Cómo luce el código?
Pues bien, veamos en esta sección cómo luce el código JSP dentro de una
página. El siguiente ejemplo llama a un archivo externo, instancia un
bean y tras evaluar una condición genera o no un mensaje de bienvenida
dentro de la página.
Ejemplo:
<HTML>
<%@ page language=="java" imports=="com.wombat.JSP.*"
% >
<H1>Welcome</H1>
<P>Today is</P>
<jsp:useBean id=="clock" class=="calendar.jspCalendar"
/>
<UL>
<LI><Day: <%==clock.getDayOfMonth() %>
<LI><Year: <%==clock.getYear() %>
</UL>
<% if (Calendar.getInstance().get(Calendar.AM_PM) ==== Calendar.AM)
{ %>
Good Morning
<% } else { %>
Good Afternoon
<% } %>
<%@ include file=="copyright.html" %>
</HTML>
Respecto a la forma en que el servidor resuelve el uso de JSP, es muy
sencillo. El esquema de manejo básicamente emula lo que sucedía con un
CGI, pero el aprovechamiento de recursos del lado del servidor es notoria.
Asimismo, la diferencia mayor se denota en el uso de componentes y la
inclusión de código de scripting dentro de las páginas.
Conclusión
JSP para ser quien aporte la portabilidad deseada en ASP de Microsoft
y eventualmente se torne tan popular como éste. Asimismo, desde ya se
está notando un uso incremental de JSP por parte de diferentes empresas
que necesitan dinamismo y velocidad en sus sitios, sin tener que depender
de un solo proveedor.
|