Академический Документы
Профессиональный Документы
Культура Документы
CAPITULO 1: Introduccin
Diferenciar entre contenido web esttico y dinmico.
Ver las diferentes formas de crear contenido web dinmico.
Diferenciar entre la programacin del lado del cliente (JavaScript) y
la programacin del lado del servidor (JSP).
Notas
Al crear un nuevo proyecto web en NetBeans, siempre debemos de
ejecutar luego de haberlo creado para verificar que ejecute el
HolaMundo y descartar que existan problemas con NetBeans o el
servidor de aplicaciones.
Las pginas de servidor Java o JSP es una tecnologa que sirve para
crear sitios web dinmicos.
Los JSP se construyen sobre los servlets que tambin se crearon
mucho antes para mostrar contenido dinmico. Normalmente los
JSP y los servlets se usan juntos, es decir se complementan entre
ellos.
Con HTML simple no podramos generar contenido dinmico, por
eso aqu entra en juego tecnologas como ASP.NET y JSP.
Tomcat:
Llamado tambin contenedor de servlet o servidor de aplicaciones.
Es el responsable de recibir las peticiones web y pasarlas a las
aplicaciones web en Java.
El puerto 8080 es el nmero de puerto que el servidor web
escucha. Una pc puede tener varios programas de servidor
escuchando a los clientes como navegadores web para conectar
con ellos; cada uno debe tener un nmero de puerto diferente.
Normalmente los servidores web usan el puerto 80.
Protocolo:
Javascript
Ahora hablaremos un poco de JavaScript:
Es una tecnologa que permite a las pginas web tener alguna
funcionalidad de programacin en el navegador.
Trabaja junto con la pagina HTML y puede manipularla.
Inicialmente se llam Livescript pero fue cambiada por Netscape a
Javascript.
Fue desarrollado casi al mismo tiempo que se dio a conocer java.
Microsoft como siempre nunca se queda atrs y saco su propio
lenguaje script: JScript y luego de un tiempo se desarrollo un
estndar neutro llamado ECMAScript.
CSS
Hay 3 formar de trabajar con estilos, en lnea, interno y externo. Lo
mejor es usar de forma externa ya que de esta manera separamos
diseo y funcionalidad. Todo el diseo lo haremos en una hoja
especialmente para el diseo aparte y en nuestro JSP tan solo
importaremos o haremos referencia.
En nuestro archivo CSS, si colocamos body y le asignamos
propiedades, entonces toda nuestra pgina JSP que contenga body
tomar esos valores. De la misma manera si coloco h1 y le asigno
Nota:
1. Si en nuestro JSP tenemos algo como:
<%= new java.util.Date() %>
Nuestro contenedor de servlet o servidor de aplicaciones tratara de
ejecutar cualquier cdigo que este dentro de esas etiquetas las cuales
se denominan etiquetas de expresin scriptlet.
Scriptlet hace referencia a cualquier cdigo dentro de <% %> y su
uso excesivo en genera una aplicacin confusa si es que nuestra
aplicacin creci en el tiempo y quisiramos darle mantenimiento.
Atributo target:
Puede usarse para identificar un cuadro o ventana dentro del
navegador al que debera de enviarse la pgina HTML resultante.
2.2
El elemento <input>
Atributo type:
Este atributo puede tomar valores como:
Text: se usa para presentar campos de texto
Password
Checkbox
Radio
Button
file
Atributo checked:
Se usa solo si el atributo type del elemento input se defini como
radio o checkbox. Sirve para indicar por defecto que aparezca
seleccionada determinada opcin.
Atributo value:
Si se defini el atributo type como radio o checkbox, el
contenido en value define el valor que se enva al enviar el
formulario.
Pero si se defini el atributo type como text, el contenido de
value define el valor con el cual se pre rellenar la caja de
texto.
Finalmente si se defini el atributo type como button o submit,
el contenido de value define el texto que se mostrar en el
botn.
2.3
Procesamiento de peticiones
3.1
Componentes
4.1
Componentes
a. Manipuladores de etiquetas
Tipo de clases especiales que contienen la funcionalidad de la
etiqueta.
b. Descriptor de etiquetas
Es un documento XML que contiene informacin sobre una o
ms etiquetas personalizadas. Es decir este XML describe las
etiquetas personalizadas y las relaciona con sus de
manipuladores de etiquetas.
La norma es que un archivo TLD se denomina como la clase a la
que se refiere y debe ser almacenado en el directorio WEB-INF.
(Verificar con el libro)
c. La directriz taglib
6.2
Caractersticas
6.4
Resmen:
Como se dijo anteriormente, no se suele implementar la interfaz
Servlet sino que se suele heredar o extender de la clase
GenericServlet. Recin aqu esta clase implementa la interfaz
Servlet. En nuestro caso nos centraremos principalmente en la
clase HttpServlet que es una extensin de GenericServlet.
As como en la clase GenericServlet, en la clase HttpServlet existe
tambin un mtodo service() que tiene de nuevo dos parmetros
pero en este caso son HttpServletRequest y httpServletResponse
que nos brindaran la gestin de las peticiones y respuesta usando
el protocolo HTTP.
HttpServletRequest ser el encargado de encapsular los
datos que vienen del cliente conteniendo los datos de la
peticin.
HttpServletResponse ser el encargado de gestionar la
respuesta de la peticin del cliente.
Cuando llega una solicitud al contenedor, busca una instancia del
servlet correspondiente, Si no lo encuentra, carga uno e invoca el
mtodo doGet() o doPost() de acuerdo a como se enviara la
solicitud.
Peticin de informacin
En la interfaz ServletRequest podemos encontrar una serie de
mtodos que nos dan toda la informacin sobre la peticin del
cliente:
Int getContentLength()
String getContentType(): retorna una cadena que nos
informa del tipo de contenido MIME de los datos que enva el
navegador del cliente al servlet.
String getProtocol()
getRemotePort()
Generacin de la respuesta
out.println("</BODY></HTML>");
out.close();
}
Funcionamiento:
Cuadro se solicite una peticin del tipo GET al servlet
MiPrimerServlet, este se cargar, si aun no lo est, en el contexto
del servidor web y estar disponible para procesar la peticin.
La funcin que tiene este pequeo servlet es crear una pgina
HTML que se le enviar al usuario mediante el canal de salida
obtenido
del
objeto
response,
que
es
del
tipo
HttpServletResponse, usando para ello el mtodo getWriter().
Antes de generar la pagina HTML, debemos especificar que el
contenido de sta es del tipo text-html mediante el mtodo
setContentType().
Por ltimo debemos de agregarlo al archivo web.xml
6.7
El objeto HttpSession
Introduccin
Como se vio anteriormente, una sesin para un cliente es creada
en el servidor web en la primera peticin del navegador del cliente.
Esta sesin era destruida bien porque el cliente cerrase el
navegador o por el timeout o porque el servlet invalidara la sesin
(usando el mtodo invalidate()).
Sin embargo, hay circunstancias que requieren que el almacenaje
de informacin del usuario dure ms de una sesin. Por ejemplo
aquellos portales que permiten personalizar el aspecto de la pgina
para cada usuario. Si este usuario tendra que modificarla cada vez
que se pierda la sesin, al final se cansara y nunca ms volvera a
modificarla. Por tanto se necesita un mecanismo que nos permita
alargar los valores de una sesin y es aqu donde entran en accin
las cookies.
Definicin
Las cookies son pequeos archivos que se quedan residentes en
el disco duro del cliente y permiten insertar informacin que
posteriormente necesitemos.
Las cookies estn implementadas en la clase Cookie.
6.9
Links de inters:
http://blog.andersonrubio.com/2012/05/cambiar-el-puertopara-glassfish.html
Error 2:
El problema que se resolvi fue por un tema de permisos, si vuelve a
aparecer ese error, debo de comentar la lnea que hace la llamada a
todo el bloque con <!-- .... -->
Ejemplo:
Si trato de ejecutar saldr el enlace a la lnea del error, le doy clic
ah y agrego los comentarios de la siguiente manera:
<!-<webproject2:javac destdir="${build.classes.dir}"
gensrcdir="${build.generated.sources.dir}"/>-->
Error 3:
En caso deseo encender el servidor de aplicaciones y el puerto en el cual se
ejecuta est ocupado, puedo matar el proceso que est usando ese puerto
de la siguiente forma: