Ejercicio de Evaluación (Curso 2007-2008)
El ejercicio final consiste en realizar un cliente de chat según las siguientes especificaciones:
- Gui utilizando Swing
- Los elementos mínimos serán: ventana de conversación, campo de introducción de texto, nick,
lista de usuarios activos, menu de acciones.
- Las acciones mínimas serán (aparte de la capacidad de visualizar conversaciones y participar en ellas):
conectar con el servidor, terminar, abrir conversaciones privadas con otros usuarios, activar/desactivar captura de conversación
en un fichero.
- La capacidad de comunicación entre clientes estará soportada por un servidor que se proporciona más abajo, y por un protocolo
soportado por intercambio de objetos. Estos objetos serán de la clase ChatProtocol que se encuentra dentro del fichero "jar"
del servidor en el paquete "chat" (hacer "
import chat.ChatProtocol; "). Se deberá por tanto utilizar este mismo "jar" como biblioteca al generar el cliente: javac -cp ChatServer.jar ... y para usarlo: java -cp ChatServer.jar ... ). NOTA: si se quiere, puede extraerse esta clase
del "jar", pero no debe olvidarse que debe residir en la carpeta/paquete "chat" (en su definición se ha especificado "package chat; ")
- Cada alumno deberá pensar en alguna característica particular que distinga a su cliente del resto de los presentados por sus compañeros. Esta
puede ser meramente estética o bien funcional.
- Los alumnos pueden plantear mejoras que necesiten soporte por parte del servidor. Estas serán atendidas en caso de considerarse interesantes
ampliando las capacidades del servidor.
|
Diagrama de estados del servidor.
|
Notas sobre el servidor: limitaciones y cambios previstos.
12/05/2008. Chat08 Versión 3.0 R3(servidor) (Javadoc)
07/05/2008. Chat08 Versión 3.0 R2(servidor) (Javadoc)
29/04/2008. Chat08 Versión 3.0 R1(servidor) (Javadoc)
- chatProtocol mejorado. Incluye métodos para acceder a parámetros. Antes se accedía via vector con lo que había una asimetria con los constructores y la documentación era insuficiente
- Servidor conforme al nuevo chatProtocol
- R2: mejora los mensajes asociados a "InappropriateMethodException" y "InvalidMessageException" indicando el tipo de ChatProtocol con que se dan. No afecta en absoluto al servidor.
- R3: Corrige error de version R2
Errores detectados:
R3: Recorta los mensajes a 20 caracteres. El servidor lo hace en su log intencionadamente, pero este comportamiento se observa también en los clientes
R2:
28/04/2008. Chat08 Versión 2.0 R2(servidor) (Javadoc)
25/04/2008. Chat08 Versión 2.0 R1 (error grave)
Errores detectados:
R1: Al recibir TEXT daba por recibido LIST y contestaba en consecuencia (causa: codigo borrado al importar versión antigua)
22/04/2008. Chat08 Versión 1.0 (servidor) (Javadoc)
- Esta es la versión de partida del servidor, que es una variación menor del servidor que resultó como versión final en la práctica del curso 2004-2005
Errores conocidos: <<Ninguno por el momento>>