Sie sind auf Seite 1von 3

Prctica 4: Programacin de Aplicaciones Web

Objetivos Aprender a disear e implementar una aplicacin con interfaz web usando JSP/Servlets Descripcin Sustituiremos la interfaz Swing desarrollada en la prctica 3 por una conjunto de Servlets/JSP que proporcionen una interfaz Web a nuestro modelo. La nueva aplicacin debe cubrir como mnimo toda la funcionalidad de la aplicacin Swing y nuevamente se recomienda hacer un diseo nuevo aprovechando las potencialidades de las interfaces Web en lugar de smplemente transcribir la interfaz Swing existente. Conguracin de Netbeans para desarrollo Web Existe una versin de Netbeans que ya dispone de todas las herramientas para programacin Web (Java EE). En caso de haber instalado la versin bsica (Java SE) seguir los pasos indicados a continuacin: Instalar Tomcat (http://tomcat.apache.org). Editar el archivo conf/tomcat-users.xml dentro del directorio de instalacin de Tomcat y aadir un usuario admin con rol de administracin: <?xml version=1.0 encoding=utf-8?> <tomcat-users> <role rolename="manager"/> <role rolename="standard"/> <user username="admin" password="pwd" roles="standard,manager"/> </tomcat-users> Congurar Tomcat en Netbeans. Para ello entrar en Herramientas/Servidores. Aadir un nuevo servidor, especicar Apache Tomcat e indicar el directorio de la instalacin y el nombre del administrador (admin) y su password. Seleccionar Herramientas/Plugins e instalar el plugin Java Web Applications. Una vez realizados los pasos anteriores aparecer un nuevo tipo de proyecto denominado Aplicacin Web al seleccionar Nuevo Proyecto. Soporte de bases de datos desde aplicaciones Web A la hora de convertir el cdigo de la aplicacin Swing a la aplicacin Web, hay que tener en cuenta los siguientes aspectos: Las aplicaciones Web son manejadas por varios usuarios de manera simultnea, incompatible con las bases de datos in-memory de HSQLDB. Ser necesario arrancar HSQLDB en modo servidor. En el directorio donde queramos crear la base de datos ejecutaremos:

java -cp <path_a_hsqldb.jar> org.hsqldb.server.Server --database.0 file:ujaensocialdb Para conectar con este servidor, utilizaremos la nueva cadena de conexin: jdbc:hsqldb:hsql://localhost/ujaensocialdb en persistence.xml.

Eliminaremos el shutdown que se realizaba al desconectar la conexin de la base de datos. Para acelerar la conexin con el servidor de base de datos, sta debe mantenerse guardada en el contexto del servlet, de manera que exista una nica instancia accesible rpidamente desde cualquier servlet. Para cerrar la conexin, puede usarse un ServletListener (investigar esto). Atencin, un EntityManagerFactory puede ser compartido por varios usuarios de manera concurrente, pero NUNCA un EntityManager. Otras aspectos adicionales que se valorarn: Calidad y funcionalidad de la interfaz desarrollada. Deteccin y gestin de errores mediante excepciones. Todas las posibles situaciones anmalas deben ser detectadas y noticadas mediante excepciones. En general el procesamiento de estas excepciones se realizar en la clase de aplicacin. Estilo del cdigo: claridad, ausencia de redundancias, eciencia.

Task 4: Web programming


Goals Learn to design and implement a web interface using JSP/Servlets Description Change the Swing interface designed and implemented in task 3 with a Web interface using the Servlet/JSP Java technology. The new interface should implement at least all the functionality of the Swing application and again we recommend designing the new interface from scratch to leverage the strengths of web user interfaces. Netbeans conguration for Web development There exists a Netbeans version ready for Web development, with all the required tools (Java EE). If you installed the normal version (Java SE) it is necessary to follow the next steps: Existe una versin de Netbeans que ya dispone de todas las herramientas para programacin Web (Java EE). En caso de haber instalado la versin bsica (Java SE) seguir los pasos indicados a continuacin: Install Tomcat from http://tomcat.apache.org. Edit the le conf/tomcat-users.xml inside the Tomcat install directory and add an admin user with manager role: <?xml version=1.0 encoding=utf-8?> <tomcat-users> <role rolename="manager"/> <role rolename="standard"/> <user username="admin" password="pwd" roles="standard,manager"/> </tomcat-users> Congure Tomcat in Netbeans. Select Tools/Servers and add a new Server. Select Apache Tomcat and type the install directory, manager user (admin) and manager password. Select Tools/Plugins and install the Java Web Applications plugin. After this you will have a new type of project called Web Application after selecting New Project.

Database support for Web applications When migrating your Swing application code to the Web application there are several important issues to consider: Web applications are multiuser applications, therefore they are not compatible with the in-memory database mode of HSQLDB. You should run HSQLDB in server mode in the directory you want to create the database:

java -cp <path_to_hsqldb.jar> org.hsqldb.server.Server --database.0 file:ujaensocialdb To connect with this server, use this new connection string: jdbc:hsqldb:hsql://localhost/ujaensocialdb in persistence.xml. Do not perform a shutdown when closing the database connection now. In order to speedup the database connection, this should be created and stored in the Servlet Context, so that the instance could be available from any servlet. To close the connection, use a ServletListener (try to nd out how to do this). Important: a EntityManagerFactory can be shared by several concurrent users, but NEVER share a EntityManager. Important issues that I will be consider: Quality and usability of the new interface. Error management using exceptions. The processing of these exceptions must be done in the application classes (outside the model). Code quality: clarity, absence of redundancy, efciency.

Das könnte Ihnen auch gefallen