Configuración del sistema de informes de JClic

Anuncio
Configuración del sistema de informes de JClic
Versión 0.1.1.6-c
25/07/05
Francesc Busquets
fbusquets@xtec.net
Contenido
1 Descripción general.......................................................................................................... 1
2 Configuración del sistema................................................................................................ 3
2.1 Configuración del sistema con MS-Access............................................................... 3
2.1.1 Creación de una base de datos MS-Access...................................................... 3
2.1.2 Configuración del conector ODBC para MS-Access.......................................... 3
2.1.3 Configuración de JClic Reports con ODBC....................................................... 4
2.2 Configuración del sistema con MySQL..................................................................... 4
2.2.1 Creación de la base de datos MySQL............................................................... 4
2.2.2 Configuración del conector para MySQL........................................................... 6
2.2.3 Configuración de JClic reports con MySQL....................................................... 7
2.3 Comprobación del funcionamiento de JClic reports.................................................. 7
3 Configuración inicial de la base de datos......................................................................... 8
4 Configuración de los clientes JClic................................................................................... 8
Anexo 1: Esquema de tablas de la base de datos............................................................. 10
1 Descripción general
JClic implementa un sistema de registro, almacenaje y proceso de los resultados de los
ejercicios realizados por los alumnos. JClic reports es el módulo encargado de realizar la
recopilación de datos y la presentación de los resultados.
Para poner en funcionamiento el sistema de informes se precisan tres elementos:
•
Un sistema de bases de datos, en el que se almacenará la información. Debe
soportar transacciones SQL y disponer de alguno de los conectores que se
-1-
Configuración del sistema de informes de JClic
explican en el apartado siguiente. Hay muchos sistemas, tanto comerciales como
de software libre, que cumplen con estos requisitos: MySQL, MS-Access,
PostgreSQL, Oracle, etc.
•
Un conector que permita la comunicación entre la base de datos y JClic reports.
Los conectores utilizados por las aplicaciones Java son del tipo JDBC, aunque
también pueden utilizarse conectores de tipo ODBC.
•
El programa JClic reports, que realiza dos funciones:
•
Por un lado, ofrece a JClic la información necesaria para identificar a los
usuarios, iniciar las sesiones de trabajo y recibir los resultados de las
actividades que realiza el usuario/a: nombre de la actividad, número de
intentos y aciertos, tiempo empleado, etc. JClic reports almacena esta
información en la base de datos, con la que se comunica mediante el
conector.
•
La segunda función consiste en procesar los datos almacenados y
mostrarlos en diversos formatos. Esta consulta se puede realizar desde
cualquier navegador web: Firefox, Safari, Internet Explorer, etc.
Es importante destacar que en una red con distintos ordenadores solamente es necesario
instalar JClic reports en uno de ellos. El programa puede enviar y recibir la información
de manera simultanea desde todos los demás.
En este esquema se muestran los diversos elementos del sistema y sus interacciones:
JClic
alumno 1
JClic
alumno 2
3
4
datos
JClic reports
navegador
web
2
r
to
ec
resultados
n
co
JClic
alumno 3 ...
1
base de
datos
-2-
Configuración del sistema de informes de JClic
2 Configuración del sistema
Para configurar el sistema de informes de JClic deberemos seguir cuatro pasos que
afectan a los cuatro elementos que se muestran numerados en el esquema:
1. Crear una base de datos en blanco.
2. Configurar el conector.
3. Configurar JClic reports.
4. Configurar los clientes JClic para que hagan uso del servicio de informes.
A continuación se explican los tres primeros pasos para dos bases de datos: MS-Access y
MySQL. El cuarto paso es independiente del sistema utilizado, y se explica al final.
2.1
Configuración del sistema con MS-Access
MS-Access es un sistema de bases de datos integrado en el paquete Microsoft Office,
muy popular en entornos Windows. A pesar de tener unas prestaciones limitadas, puede
resultar útil como sistema de almacenaje en organizaciones pequeñas y medianas (hasta
500 usuarios). En organizaciones mayores se recomienda el uso de sistemas
profesionales de basos de datos como MySQL, que se explica en el apartado siguiente.
Para efectuar las operaciones que se detallan a continuación será necesario que el
usuario de Windows con el que se esté operando tenga derechos de administración del
sistema y, por supuesto, que esté instalada alguna versión de Access. También será
necesario tener instalado el componente de acceso a orígenes de datos ODBC, que es un
elemento opcional de Windows.
2.1.1
Creación de una base de datos MS-Access
Ponga en marcha MS-Access, indique que desea crear una nueva base de datos en
blanco y localice una carpeta donde guardarla. No es necesario que sea una carpeta
pública. Puede darle el nombre que crea conveniente. En este documento le llamaremos
“JClicReports.mdb”.
Una vez creada la base de datos ya puede cerrar Access. De momento no será necesario
trabajar más con él.
2.1.2
Configuración del conector ODBC para MS-Access
Con MS-Access utilizaremos un conector de tipo ODBC, que es el estándar más utilizado
en sistemas Windows.
•
Ponga en marcha el panel de control (Inicio - Configuración - Panel de control Herramientas administrativas) y busque el icono Orígenes de datos ODBC. Ponga
este módulo en marcha y active la pestaña DSN de sistema.
-3-
Configuración del sistema de informes de JClic
•
Haga clic en el botón Agregar... y seleccione en la lista el tipo Microsoft Access
Driver (*.mdb). Confirme haciendo clic en el botón Final.
•
Escriba en Nombre del origen de datos la palabra “JClic”, y en Descripción
cualquier texto explicativo, como: “Base de datos de informes JClic”.
•
Haga clic en Seleccionar... y busque el archivo “JClicReports.mdb” que hemos
creado anteriormente.
•
Haga clic en Aceptar y cierre la ventana de control de ODBC.
Con esta operación se habrá creado un conector de tipo ODBC que permitirá a cualquier
aplicación acceder a la base de datos que habíamos preparado en el paso anterior.
2.1.3
Configuración de JClic Reports con ODBC
Para poner en marcha JClic puede optar entre hacer clic en el icono que aparece en
http://clic.xtec.net/es/jclic/download.htm, o utilizar alguno de los iconos que se crearán en
el escritorio y en el menú inicio después de haberlo utilizado un par de veces.
•
Haga clic en Configuración... y active la pestaña Base de datos.
•
Escriba en Controlador la expresión: sun.jdbc.odbc.JdbcOdbcDriver
•
Escriba en URL la expresión: jdbc:odbc:JClic
Es importante escribirlo tal como se indica, teniendo en cuenta los puntos, sin
espacios y distinguiendo entre mayúsculas y minúsculas.
•
Deje marcada la casilla Crear tablas si no existen, y deje también el prefijo
JCLIC_ para los nombres de las tablas.
•
Confirme la operación en Aceptar.
Con eso estará JClic reports preparado para trabajar con la base de datos.
2.2
Configuración del sistema con MySQL
MySQL es un sistema libre de bases de datos que funciona en Windows, Linux, Mac OS
X, Solaris y otras variantes de Unix. En la web http://www.mysql.com encontrará
información sobre como descargarlo, instalarlo y configurarlo en diversas plataformas.
MySQL es un sistema mucho más complejo que Access, y utiliza usuarios de la base de
datos, que operan con contraseñas y que tienen diversos derechos. Normalmente, el
usuario root es el único que puede crear nuevas bases de datos.
En las indicaciones que proponemos seguir se contempla la creación de un usuario
específico de MySQL (llamado jclic_user) que tendrá plenos derechos sobre la base de
datos de informes.
2.2.1
Creación de la base de datos MySQL
Para gestionar el MySQL podemos utilizar directamente sus programas de control
(escribiendo las órdenes en una consola), o algún interfaz gráfico como PHPMyAdmin
(http://www.phpmyadmin.net), que también es software libre.
-4-
Configuración del sistema de informes de JClic
Para crear la base de datos desde la linea de órdenes:
•
Primero hay que asegurarse de que el proceso MySQL esté en marcha. Para ello
abriremos una consola y escribiremos:
mysqld --console
•
A continuación pondremos en marcha una sesión de control del sistema,
escribiendo:
mysql -h localhost -u root -p mysql
El programa nos solicitará la contraseña del usuario root, que es el administrador
de MySQL. También podemos utilizar el prefijo -u con cualquier otro usuario de
MySQL que tenga derechos para crear nuevas bases de datos.
•
Cuando se haya validado la contraseña nos aparecerá el prompt de la consola de
MySQL:
mysql>
•
Para crear la base de datos escribiremos:
CREATE DATABASE JClicReports;
Es importante no olvidar el punto y coma final. Podemos asignar cualquier otro
nombre a la base de datos. En este documento supondremos que se llama
“JClicReports”.
•
Podemos comprobar que todo haya ido bien escribiendo:
SHOW DATABASES;
El programa nos mostrará las bases de datos existentes. Deberá aparecer la que
acabamos de crear.
•
A continuación ceraremos un usuario que tendrá pleno acceso a esta base de
datos. Le llamaremos “jclic_user”, y le asignaremos la contraseña “jclic_pwd”. Por
supuesto, puede utilizar cualquier otro nombre y contraseña. Para crear el usuario
escribiremos:
GRANT ALL PRIVILEGES ON JClicReports.*
TO jclic_user
IDENTIFIED BY 'jclic_pwd'
WITH GRANT OPTION;
Observe que cada vez que pulse Retorno se crea una nueva linea con el prompt
“->”, hasta que se escribe el punto y coma final en la última linea.
-5-
Configuración del sistema de informes de JClic
Una vez realizados estos pasos ya podemos salir del programa de control escribiendo
“exit” y pulsando Retorno.
Resumiendo: hemos creado una base de datos llamada “JClicReports”, y un usuario
“jclic_user”, con contraseña “jclic_pwd”, que tiene plenos derechos sobre ella.
2.2.2
Configuración del conector para MySQL
MySQL se puede comunicar con las aplicaciones Java mediante un conector de tipo
JDBC. Los pasos a seguir para que la máquina virtual Java lo reconozca son:
•
Visite el web http://dev.mysql.com/downloads/connector/ y seleccione la opción
Connector/J. Descargue el formato más adecuado a su entorno operativo (zip
para Windows y Mac, o tar.gz para Linux).
•
Descomprima el archivo que acaba de descargar. Debería contener un fichero con
el nombre:
mysql-connector-java-[version]-bin.jar
Donde [version] es una secuencia de cifras. Atención: hay otro archivo con el
mismo nombre seguido de la terminación “-g” que NO vamos a utilizar.
•
Localice la carpeta de extensiones de su sistema Java. Es una carpeta llamada
“ext” ubicada en otra llamada “lib” que se encuentra en la carpeta principal de Java.
En sistemas Windows acostumbra a ser:
C:\Archivos de programa\Java\jre[version]\lib\ext
En sistemas Mac OS X hay dos. Una es propia de cada usuario del sistema, y la
otra común a todos los usuarios:
/Users/[usuari]/.java/deployment/ext
/System/Library/Frameworks/JavaVM.framework/Versions/[ver]/Ho
me/lib/ext
En Linux puede encontrarse en distintos lugares:
/usr/java/lib/ext
/usr/lib/java/lib/ext
(instalación por defecto de Sun)
(Suse Linux)
Si no encuentra esta carpeta hay un método más efectivo: ponga en marcha
cualquier applet JClic (por ejemplo, el de las actividades de demostración), haga
clic en el botón JClic y active la pestaña Sistema. Observe la linea Ubicación de
Java. La carpeta de extensiones se encuentra añadiendo “lib/ext” a la
expresión indicada.
-6-
Configuración del sistema de informes de JClic
•
2.2.3
Cuando haya localizado la carpeta de extensiones copie en ella el archivo que se
había indicado anteriormente. En sistemas basados en Unix (Linux, Mac OS X,
Solaris...) podemos crear un enlace simbólico en lugar de copiar el archivo.
Configuración de JClic reports con MySQL
Para poner en marcha JClic reports puede optar entre hacer clic en el icono situado en
http://clic.xtec.net/es/jclic/download.htm, o utilizar alguno de los iconos que se crearan en
el escritorio y en el menú inicio después de haberlo invocado un par de veces.
•
Haga clic en el botón Configuración... y active la pestaña Base de datos.
•
Escriba en Controlador la expresión: com.mysql.jdbc.Driver
Es importante escribirla tal como se indica, sin espacios y distinguiendo entre
mayúsculas y minúsculas.
•
Escriba en URL la expresión: jdbc:mysql://localhost/JClicReports
•
Escriba en Usuario de la base de datos el nombre (se proponía jclic_user).
•
Escriba en Contraseña la que le haya dado (se proponía jclic_pwd).
•
Deje marcada la casilla Crear tablas si no existen, y deje también el prefijo
JCLIC_ para los nombres de tablas.
•
Confirme la operación con Aceptar.
Con eso quedará JClic reports preparado para trabajar con al base de datos.
2.3
Comprobación del funcionamiento de JClic reports
Hemos preparado un conjunto de datos de demostración que pueden resultar de utilidad
para comprobar el funcionamiento de JClic reports. Estos datos incluyen un grupo
denominado “test”, con algunos alumnos y resultados simulados.
Los datos de demostración se encuentran disponibles en dos versiones de MS-Access
(97 y 2000) y en SQL (formato estándar empleado por MySQL y otros sistemas). En todos
los casos, se distribuyen comprimidos en formato ZIP para ahorrar espacio.
Datos de demostración en formato MS-Access:
•
http://clic.xtec.net/pub/reports/jclic_test_access97.zip
•
http://clic.xtec.net/pub/reports/jclic_test_access2000.zip
Para cargar los datos cierre JClic reports y substituya el archivo MDB creado
anteriormente por el que se encuentra dentro del ZIP.
Datos de demostración en formato SQL:
•
http://clic.xtec.net/pub/reports/jclic_test_mysql.zip
Para cargar los datos cierre JClic reports y utilice alguna utilidad como
PHPMyAdmin, que le permitirá importar el archivo SQL que se encuentra en el ZIP.
-7-
Configuración del sistema de informes de JClic
Cuando se hayan cargado los datos de demostración ponga en marcha de nuevo JClic
reports, haga clic en Iniciar y, a continuación, en Iniciar el navegador. La contraseña
inicial puede dejarse en blanco. Debería poder navegar por los informes de usuario, de
grupo y de actividades, así como comprobar las principales funcionalidades del programa.
El campo “contraseña” de la primera pantalla se puede dejar inicialmente en blanco.
3 Configuración inicial de la base de datos
Para poner el sistema en funcionamiento conviene realizar una configuración inicial de la
base de datos, especialmente si se trata de una red en la que trabajan diversos usuarios:
•
Ponga en marcha JClic reports, active el servicio (botón iniciar), abra el
navegador y vaya a Administración de la base de datos.
•
Haga clic en Establecer la contraseña y asigne una palabra de paso, que
impedirá que usuarios no autorizados tengan acceso a la información de la base de
datos.
Conviene también decidir qué política se seguirá en lo referente a la creación de usuarios
y grupos. En principio lo más seguro es que el administrador los introduzca directamente,
ya sea desde las páginas de administración de grupos que proporciona JClic reports o
actuando directamente sobre la base de datos (ver el esquema de tablas en el anexo 1).
Otra posibilidad es crear solo los grupos y dejar que los usuarios se den de alta ellos
mismos la primera vez que inicien una sesión de trabajo con JClic. En este segundo caso
habrá que marcar la casilla Permitir a los usuarios la creación de nuevos usuarios, y
dejar desmarcada la opción Permitir a los usuarios crear nuevos grupos.
4 Configuración de los clientes JClic
El cuarto paso es independiente del sistema de bases de datos utilizado (Access o
MySQL). Deberemos configurar los clientes JClic para que conecten con el servidor JClic
reports y le envien información sobre las activiaddes realizadas por los alumnos.
Los pasos a seguir son:
1. Asegurarse de que JClic reports esté funcionando en algún ordenador de la red.
2. Averiguar el nombre o la IP del ordenador en el que está funcionando JClic
reports. Nos sirve tanto su nombre de red (por ejemplo, “servidor”) como su
dirección IP (por ejemplo, “192.168.0.10”).
3. Averigüe también el puerto por el que JClic reports admite la comunicación. Por
defecto es el 9000, pero para estar seguro haga clic en el botón Configuración de
Jclic reports, vaya a la pestaña Servidor web y observe el valor del campo Puerto.
4. Ponga en marcha JClic desde cualquier ordenador de la red. Puede hacerlo con
un clic en el botón que aparece en la página de descarga de JClic, o desde los
iconos que se crearan en el escritorio y en el menú Inicio cuando lo haya activado
un par de veces. En la sección de preguntas frecuentes encontrará más
información sobre la creación de accesos directos para poner en marcha JClic.
5. Vaya al menú Herramientas - Configuración y seleccione la pestaña Informes.
-8-
Configuración del sistema de informes de JClic
6. Marque la casilla Guardar los resultados de las actividades en una base de
datos.
7. Seleccione la opción Conectarse a un servidor de informes JClic, y escriba en el
campo Servidor el nombre o la IP del ordenador en el que esté funcionando,
seguido de dos puntos y el número de puerto. Será una expresión parecida a
estas:
192.168.0.10:9000
servidor:9000
servidor.red:9000
8. Confirme los cambios, salga de JClic y vuelva a ponerlo en marcha. Si todo va bién
debería aparecer la pantalla de identificación, y JClic reports debería registrar los
resultados de todas las actividades realizadas a partir de ese momento.
-9-
Configuración del sistema de informes de JClic
Anexo 1: Esquema de tablas de la base de datos
JClic reports utiliza 6 tablas. Los nombres de las tabals acostumbran a llevar el prefijo
“JCLIC_”, para evitar posibles conflictos que se podrían producir si hubieran de convivir en
una misma base de datos con tablas de otras aplicaciones.
SETTINGS
Esta tabla almacena parejas clave-valor que describen diversas características relativas al
funcionamiento de la base de datos.
CAMPO
TIPO
LONG. CLAVE DESCRIPCIÓN
SETTING_KEY
Texto
255
SETTING_VALUE
Texto
255
X
Clave
Valor
GROUPS
En principio todos los usuarios de la base de datos deben pertenecer a un grupo.
CAMPO
TIPO
LONG. CLAVE DESCRIPCIÓN
GROUP_ID
Texto
50
GROUP_NAME
Texto
80
GROUP_DESCRIPTION
Texto
255
Descripción (opcional)
GROUP_ICON
Texto
255
URL que apunta a un archivo gráfico (GIF,
PNG o JPG) que identifica al grupo. (opcional)
GROUP_CODE
Texto
50
Campo no utilizado en la versión actual
GROUP_KEYWORDS
Texto
255
Campo no utilizado en la versión actual
X
Identificador único del grupo
Nombre del grupo
USERS
En esta tabla se guardan los datos que permiten la identificación de los usuarios.
CAMPO
TIPO
LONG. CLAVE DESCRIPCIÓN
USER_ID
Texto
50
GROUP_ID
Texto
50
Identificador del grupo al que pertenece el
usuario/a
USER_NAME
Texto
80
Nombre del usuario/a
USER_PWD
Texto
255
Contraseña encriptada (opcional)
USER_ICON
Texto
255
URL que apunta a un archivo gráfico (GIF,
PNG o JPG) que identifica al usuario/a.
(opcional)
USER_CODE
Texto
50
Campo no utilizado en la versión actual
USER_KEYWORDS
Texto
255
Campo no utilizado en la versión actual
X
Identificador único del usuario/a
- 10 -
Configuración del sistema de informes de JClic
SESSIONS
Cada sesión de trabajo de un usuario con JClic genera un registro en esta tabla.
CAMPO
TIPO
LONG. CLAVE DESCRIPCIÓN
SESSION_ID
Texto
50
USER_ID
Texto
50
Identificador del usuario/a a quien corresponde
la sesión
SESSIONDATETIME
Fecha
14
Fecha y hora en la que se ha iniciado la sesión
PROJECT_NAME
Texto
100
SESSION_KEY
Texto
50
Campo no utilizado en la versión actual
SESSION_CODE
Texto
50
Campo no utilizado en la versión actual
SESSION_CONTEXT
Texto
255
Campo no utilizado en la versión actual
X
Identificador único de la sesión
Nombre del proyecto JClic
ACTIVITIES
Cada actividad JClic realizada por un usuario genera un registro en esta tabla.
CAMPO
TIPO
LONG. CLAVE DESCRIPCIÓN
SESSION_ID
Texto
ACTIVITY_ID
Entero
ACTIVITY_NAME
Texto
NUM_ACTIONS
Entero
Nombre de acciones realizadas
SCORE
Entero
Nombre de acciones correctas
ACTIVITY_SOLVED
Byte
Indica si la actividad se ha resuelto (1) o no (0)
QUALIFICATION
Entero
Puntuación obtenida (0-100)
TOTAL_TIME
Entero
Tiempo (segundos) invertido en la actividad
ACTIVITY_CODE
Texto
50
X
Código de la sessión
X
Identificador único de la actividad en la sesión
50
Nombre de la actividad
50
Campo no utilizado en la versión actual
ACTIONS
Esta tabla recopila las características de cada una de las acciones individuales que el usuario realiza
al efectuar las actividades, siempre que en la creación de la actividad se haya indicado la necesidad
de registrar las acciones. La versión actual de JClic reports no utiliza la información almacenada en
esta tabla.
CAMPO
TIPO
SESSION_ID
Texto
ACTIVITY_ID
LONG. CLAVE DESCRIPCIÓN
50
X
Código de la sesión
Entero
X
Código de la actividad en la sesión
ACTION_ID
Entero
X
Identificador único de la acción en la actividad
ACTION_TYPE
Texto
20
ACTION_SOURCE
Texto
255
Contenido del objeto (casilla, incógnita...) sobre
el que se ha efectuado la acción.
ACTION_DEST
Texto
255
Cuando la acción sea un emparejamiento,
contenido del segundo objeto implicado en ella.
ACTION_OK
Byte
Tipo de acción realizada
Indica si la acción fue correcta (1) o no (0).
- 11 -
Descargar