miércoles, 27 de octubre de 2010

Java Servlet


Java Servlet

Los servlets, son objetos que corren dentro del contexto de un contenedor de servlets y extienden su funcionalidad.

La palabra servlet deriva de otra anterior, applet que se refería a pequeños programas que se ejecutan en el contexto de un navegador web. Por contraposición, un servlet es un programa que se ejecuta en un servidor.

El uso más comun de los servlets es generar páguinas web de forma dinámica a partir de los parámetros de la petición que envíe el navegador web.


Los Servlets son para los servidores lo que los applets son para los navegadores. Sin embargo, al contrario que los applets, los servlets no tienen interface gráfico de usuario.

Los servlets pueden ser incluidos en muchos servidores diferentes porque el API Servlet, el que se utiliza para escribir Servlets, no asume nada sobre el entorno o protocolo del servidor. Los servlets se están utilizando ampliamente dentro de servidores HTTP.

Otros usos de los Servlets

Permitir la colaboración entre gente. Un servlet puede manejar múltiples peticiones y puede sincronizarlas. Esto permite alos servlets soportar sistemas como conferencias on-line.


Saludos..

Java Server Pages (JSP)




Java Server Pages es una tecnología en Java que permite generar contenido dinámico para web, en forma de documentos HTML, XML o de otro tipo.

Las JSP'S permiten la utilización de código Java mediante scripts. Además, es posible utilizar algunas acciones JSP predefinidas mediante etiquetas. Estas etiquetas pueden ser enriquesidas mediante la utilización de Bibliotecas de Etiquetas (TagLibs o Tag Libraries) externas e incluso personalizadas.

Ejemplo de una compilación o "Salida" JSP
package jsp_servlet;
import java.util.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.*;
import javax.servlet.jsp.tagex
t.*;
import com.foo.bar; //importado como resultado de <%@ page import="com.foo.bar" %>
import ...
class _myservlet implements javax.servlet.Servlet, javax.servlet.jsp.HttpJspPage {
//insertado como
//resultado de <%! int serverInstanceVariable = 1;%>
int serverInstanceVariable = 1;
...
public void _jspService( javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response )
throws javax.servlet.ServletException,
java.io.IOException{
javax.servlet.ServletConfig config = ...;//obtener la configuración del servlet
Object page = this;
PageContext pageContext = ...;//obtener el contexto de la pagina para esta petición
javax.servlet.jsp.JspWriter out = pageContext.getOut();
HttpSession session = request.getSession( true );
...
Un ejemplo en diagrama de como funciona una JSP

Para aprender JSP, aparte de conocer HTML, será necesario comprender y tener algo de experencia en la programación en Java, que es un lenguaje de programación Orientado a objetos por completo. Una vez conocida la programación en Java se puede estudiar por encima el sistemas de servicios Servlets, lo que nos dará una mejor idea del funcionamiento de un JSP.


Saludos...

martes, 26 de octubre de 2010

Cliente-Servidor




Cliente-Servidor

Esta arquitectura consiste básicamente en un cliente que realiza peticiones a otro programa (el servidor) que le da respuesta. Aunque esta idea se pude aplicar a programas que se ejecutan sobre una sola computadora es más ventajosa en un sistema operativo multiusuario distribuido a través de una red de computadoras.
En la siguiente imagen se ilustra de como funciona los programas cliente servidor.


El cliente hace una petición que esa petición es procesada por el servidor y el servidor envía
una repuesta atrávez de la red.

Esta arquitectura se divide en dos partes claramente diferenciadas, la primera es la parte del servidor y la segunda la de un conjunto de clientes.

Normalmente el servidor es una máquina bastante potente que actúa de depósito de datos y funciona como un sistema gestor de base de datos (SGBD).

Por otro lado los clientes suelen ser estaciones de trabajo que solicitan varios servicios al servidor.

Ambas partes deben estar conectadas entre sí mediante una red.

En la siguiente imagen ses otro ejemplo de como funciona la arquitectura cliente servidor.


Podemos decir que esta arquitectura necesita tres tipos de software para su correcto funcionamiento:

Software de gestión de datos: Este software se encarga de la manipulación y gestión de los datos almacenados y requeridos por las diferentes aplicaciones. Normalmente este software se aloja en el servidor.
Software de desarrollo: este tipo de software se aloja en los clientes y solo en aquellos que se dedique al desarrollo de aplicaciones.
Software de interacción con los usuarios: También reside en los clientes y es la aplicación gráfica de usuario para la manipulación de datos, siempre claro a nivel usuario (consultas principalmente).

Para mayor información



Saludos...


Servidor HTTP Apache



El servidor HTTP Apache es un servidor web HTTP de código abierto para plataformas Unix(BSD, GNU/Linux, etc.), Microsoft Windows, Macintosh y otras, que implementa el protocolo HTTP.

Apache es usado principalmente para enviar páguinas web estáticas y dinámicas en la World Wide Web. Muchas aplicaciones web están diseñadas asumiendo como ambiente de implantación a Apache, o que utilizarán características propias de este servidor web.

Para instalar Apache2 en ubuntu escribimos en la terminal
$ sudo apt-get install apache2
Para comprobar que el servidor web funciona correctamente, abrimos cualquier navegador web y escribimos lo siguiente en la barra de direcciones.
http://localhost
Nos debería salir un mensaje como el siguiente.


Y con esto comprovamos que nuestro servidor web esta funcionando.

Para poder parar el servidor web apache solo basta desde la terminal escribir.
$ sudo /etc/init.d/apache stop

Y para reiniciar el servidor apache solo basta con escribir en la terminal.
$ sudo /etc/init.d/apache restart
Fuente de la definición
Apache

Bueno espero que les haya gustado saludos...

miércoles, 20 de octubre de 2010

World Wide Web (www)



Worl Wide Web

Es un sistema de documentos de hipertexto o hipermedios enlazados y accesibles a través de internet. Con un navegador web, un usuario visualiza sitios web compuestos de páginas web que pueden contener texto, imágenes, videos u otros contenidos multimedia, y navega a través de ellas usando hiperenlaces.

El primer paso consiste en traducir la parte nombre del servidor de la URL en una dirección IP usando la base de datos distribuida de Internet conocida como DNS. Esta dirección IP es necesaria para contactar con el servidor web y poder enviarle paquetes de datos.

El siguiente paso es enviar una petición HTTP al servidor Web solicitando el recurso. En el caso de una página web típica, primero se solicita el texto HTML y luego es inmediatamente analizado por el navegador, el cual, después, hace peticiones adicionales para los gráficos y otros ficheros que formen parte de la página.

Al recibir los ficheros solicitados desde el servidor web, el navegador renderiza la página tal y como se describe en el código HTML, el CSS y otros lenguajes web. Al final se incorporan las imágenes y otros recursos para producir la página que ve el usuario en su pantalla.

Si un usuario accede de nuevo a una página después de un pequeño intervalo, es probable que no se vuelvan a recuperar los datos del servidor web de la forma en que se explicó en el apartado anterior. Por defecto, los navegadores almacenan en una caché del disco duro local todos los recursos web a los que el usuario va accediendo. El navegador enviará una petición HTTP sólo si la página ha sido actualizada desde la última carga, en otro caso, la versión almacenada se reutilizará en el paso de renderizado para agilizar la visualización de la página.

Aparte de las utilidades creadas en los servidores Web que pueden determinar cuándo los ficheros físicos han sido actualizados, los diseñadores de páginas web generadas dinámicamente pueden controlar las cabeceras HTTP enviadas a los usuarios, de forma que las páginas intermedias o sensibles a problemas de seguridad no sean guardadas en caché. Por ejemplo, en los bancos on line y las páginas de noticias se utiliza frecuentemente este sistema.
Esto nos ayuda a comprender la diferencia entre los verbos HTTP 'GET' y 'POST' - los datos solicitados con GET pueden ser almacenados en la caché, si se cumplen las otras condiciones, mientras que con los datos obtenidos después de enviar información al servidor con POST normalmente no se puede.

En el distinguir método GET y POST es mas fácil pensar en forma de cliente.

Por ejemplo el GET se puede utilizar para que el cliente obtenga información como por decir de una busqueda.

El método POST es mas común usarlo para que el cliente envié información al servidor.

Para mayor información


Saludos...

lunes, 18 de octubre de 2010

Internet




Internet

Bueno empezare hablando lo que es el Internet para asi en las siguientes entradas de este blog ir definiendo cada unos de los protocolos de Internet buscando información en Internet.

Internet es un conjunto descentralizado de redes de comunicación interconectadas que utilizan la familia de protocolos TCP/IP, garantizando que las redes físicas heterogéneas que la componen funcionen como una red lógica única, de alcance mundial. Sus orígenes se remontan a 1969, cuando se estableció la primera conexión de computadoras, conocida como ARPANET, entre tres universidades en California y una en Utah, Estados Unidos.


Uno de los servicios que más éxito ha tenido en Internet ha sido la World Wide Web (WWW, o "la Web"), hasta tal punto que es habitual la confusión entre ambos términos.

La WWW es un conjunto de protocolos que permite, de forma sencilla, la consulta remota de archivos de hipertexto. Ésta fue un desarrollo posterior (1990) y utiliza Internet como medio de transmisión.

Existen, por tanto, muchos otros servicios y protocolos en Internet, aparte de la Web: el envío de correo electrónico (SMTP), la transmisión de archivos (FTP y P2P), las conversaciones en línea (IRC), la mensajería instantánea y presencia, la transmisión de contenido y comunicación multimedia -telefonía (VoIP), televisión (IPTV)-, los boletines electrónicos (NNTP), el acceso remoto a otros dispositivos (SSH y Telnet) o los juegos en línea.

Cada línea entre dos nodos representa el enlace entre dos direcciones IP y su longitud es proporcional al retardo entre estos.

Aquí les dejo un video con la historia del Internet.


Para mayor información


Saludos...

jueves, 14 de octubre de 2010

Proyecto de Medio Curso

Hola les dejo un video de mi proyecto de medio curso con una breve explicación de lo que hace y consiste mi proyecto espero que les guste (:



Sección inventario.

Bueno en esta sección de inventario es una paguina donde un usuario puede consultar el inventario de una base de datos de cuatrimotos y ver cuales son los modelos disponibles con su desripción al llenar el formulario los datos se envian al programa cgi.

py1

El programa en python guarda los datos enviados del formulario y los imprime en un archivo HTML con los resultados de la busqueda.

py2

La otra sección que es la de contactanos en esta seccion el usuario puede llenando un formulario en HTML enviar cualquier duda o sugerencia que sera guardado en una base de datos.

py3

En esta parte la funcion "import cgitb; cgitb.enable()" me ayudo mucho por que tenia un error de sintaxis de la palabra write y me ayudo mucho para ver mis errores.

Después el cgi hace las impreciones en HTML.

py4

Recuerden dar los permisos necesarios para que pueda ejecutarse el script.

$ chmod a+x


Bueno esta es la parte mas importante de mi proyecto espero y les haya gustado Muchas Gracias.

Saludos...