Carlita

Just another Blog de ESPOL weblog

screenshots de hibernate

septiembre29
posted under Grupo DAW | No Comments »

java.lang.OutOfMemoryError: PermGen space

septiembre18

El mensaje es un síntoma de un «barrido de recolección de basura incompleta, donde los recursos no están debidamente puesto en libertad tras descargar / reiniciar. Se acusa a CGLIB, Hibernate, Tomcat, y aun JVM de Sun.

Si detiene una aplicación web conteniendo hibernate en tomcat, no toda la memoria es liberada. Los modelos de objetos son aún mantenidos en memoria por cglib. Esto conduce a un error OutOfMemory después de varias recargas.  http://opensource.atlassian.com/projects/hibernate/browse/HHH-851

El valor por defecto del espacio PermGen es de 64 Mb en la máquina virtual (VM) de Sun. Este valor es suficiente normalmente para las aplicaciones que corren de forma independiente. En el caso de una aplicación que corra en un servidor web tipo Tomcat o un servidor de aplicaciones, hay casos en los que este valor no es suficiente.

En primer lugar, es posible que la aplicación necesite más espacio por su propia arquitectura. Las librerías Spring e Hibernate son librerías grandes, que cargan muchas clases y además hacen uso de proxies y carga dinámica de clases que hacen uso del espacio PermGen por lo que puede que los 64Mb no sean suficientes. Este caso se da cuando la excepción con el error se produce nada mas arrancar el servidor web o de aplicaciones o al acceder a la aplicación. Para solventar este problema bastará con aumentar el tamaño máximo de la memoria de tipo PermGen según veremos más adelante.encuentra con el problema.

Sin embargo, en general, si usted está experimentando este error, modificando su asignación de memoria (ajustando el tamaño de su PermGen) sólo va a alterar la frecuencia con que se

If you stop a web application containing hibernate in tomcat, not the whole memory is released. The model objects are still kept in memory by cglib. This leads to a OutOfMemory Error after several reloads.

Fuentes:

http://www.jroller.com/agileanswers/entry/preventing_java_s_java_lang

http://www.programacionenjava.com/blog/2008/03/28/j2ee/causas-y-solucion-de-javalangoutofmemoryerror-permgen-space-failure/

véase también Foro: http://forums.sun.com/thread.jspa?threadID=661841&messageID=3880883

posted under Grupo DAW | No Comments »

Discutiendo la Base de Datos

agosto20

Hola chicos, con Carla estuvimos viendo cuales serían las posibles tablas que se necesitan para el proyecto

Posibles tablas
•    Universidades: Convenio con otras universidades.
•    Becario: Estudiantes ¿ESPOL? que hacen uso de esos convenios.  (en esta no estamos seguras si son solo estudiantes de la ESPOL o pueden ser estudiantes de otras universidades )
•    Rubro_tipo: información del rubro
•    Rubro_becario: gastos del estudiante (becario).
•    USUARIO_ROL: el usuario que utiliza el sistema iniciando sesión.
•    OPCIONES_POR_ROL: Opciones de menú que se mostrarán según el rol.

Y a continuación los campos de cada tabla

Universidad:          codigo, nombre, latitud, longitud, pais, url
Becario:                    noCedula, Nombre, apellido, sexo, edad, nacionalidad, instrucción, profesión
Rubro_becario:    rubro_tipo, gastos, mes, año
Rubro_tipo:           nombre_rubro, valor_maximo
Usuario_rol:           nombre_rol, nom_usuario, contrasenia
Opciones_por_rol    nombre

Si creen que hace falta algo, lo comentantan…

Verónica Lara

posted under Grupo DAW | No Comments »

CSS para datatables en YUI

agosto18

Para darle estilo a los widgets de YUI, en este caso datatable, usted tiene dos opciones:

–>Usar el estilo por defecto para la tabla

–>O usted, conociendo la estructura de la tabla como fue de definida, con esos mismos nombres de clase, darle un efecto personalizado.

Para ello:

Si desea usar el estilo por defecto, aplique el nombre de la clase  yui-skin-sam al elemento que represente un parent del elemento en el que la tabla se encuentra situada, usualmente se pone esta clase en el tag <body> , como se indica en la página http://developer.yahoo.com/yui/datatable/:

  1. <body class="yui-skin-sam">
Y de esta manera toma este css ya definido. Si desea personalizar su tabla (datatable YUI), agregue como usualmente con cualquier otro elemento de la página, en el tag style, el estilo que quiera definir para cada parte de la tabla. Así: <style type="text/css"> .yui-skin-sam{color:red;} .yui-dt-first{background-color:yellow;} .yui-dt-last{background-color:blue;} </style> Fuentes: http://developer.yahoo.com/yui/datatable/ Carla Salvatierra Arellano
posted under Grupo DAW | 1 Comment »

Trabajando con YUI2

agosto17

Hola chicos aqui encontre algunos ejemplos que nos pueden servir para nuestro avance

TRABAJANDO CON YUI2

Gabriela Paladines

posted under Grupo DAW | 2 Comments »

librería YUI

agosto15

Hola chicos encontré algunas cosas sobre la librería YUI que debemos usar en el proyecto…

1)Para descargar la versión 2:

http://developer.yahoo.com/yui/2/

2)Para descargar la versión 3:

http://developer.yahoo.com/yui/3/

supongo que vamos a trabajar con la 3…

También me descargué un libro de www.librosweb.es sobre css avanzado que tiene un capítulo sobre la librería YUIcss_avanzado

posted under Grupo DAW | No Comments »

Markers

agosto9

Como elaborar los markers con ayuda del API de Google V3

Markers

Gabriela Paladines

posted under Grupo DAW | 1 Comment »

Consulta usando Hibernate

agosto9

Para realizar la consulta que genera un archivo xml con los datos almacenados en nuestra base de datos: Inicialmente, s

e siguen los mismos pasos indicados en la práctica, y recordemos que incluía ( 1 archivo de configuración, 1 archivo reverse engineer, 1 Util y los POJOS, en este caso uno, que es el mapeo de la tabla universidad)

  1. Luego en el servlet que agregamos, trabajamos ya directamente con la clase NewHibernateUtil, con la cual obtenemos el objeto sessionfactory, con el que crearemos una sentencia hql (hibernate query language), directamente con el objeto universidad, porque si revisamos un poquito, encontramos que hibernate nos permite mapear atributos de una base de datos relacional a un modelo orientado a objetos en nuestra aplicación.
  2. Para ello la sentencia será private static String QUERY=»from Universidad u»; la cual almacenamos en una constante de tipo String.
  3. Luego definimos un método para ejecutar esa sentencia, y le enviamos además un objeto PrinterWriter, el cual al final, nos permitirá escribir sobre el archivo xml a generar.

private void executeHQLQuery(String hql,PrintWriter out) {

try {

Session session = NewHibernateUtil.getSessionFactory().openSession();

session.beginTransaction();

Query q = session.createQuery(hql);

List resultList = q.list();

displayResult(resultList,out);

session.getTransaction().commit();

} catch (HibernateException he) {

he.printStackTrace();

}

}

Donde displayResults es: ya generar el archivo xml

private void displayResult(List resultList,PrintWriter out) {    out.println(«<?xml version=’1.0′ encoding=’iso-8859-1′?>»);

out.println(«<datos>»);

for (Object o : resultList) {

Universidad univ = (Universidad) o;

out.println(«<universidad>» +

«<codigo>»+univ.getCodigo()+»</codigo>» +

«<nombre>»+univ.getNombre()+»</nombre>» +

«<coordenadas>» +

«<latitud>» +univ.getLatitud()+»</latitud>» +

«<longitud>» +univ.getLongitud()+»</longitud>» +

«</coordenadas>» +

«<pais>» +univ.getPais()+»</pais>»+

«<url>» +univ.getUrl()+»</url>»+

«</universidad>»);

}

out.println(«</datos>»);    }

Observación: Usamos o especificamos encoding=’iso-8859-1′ para que nos permita el uso de tildes y ñ, pues de lo contrario nos da error usando la codificación UTF-8.

Y así en el processRequest del servlet, simplemente llamamos a un método runQuery

protected void processRequest(HttpServletRequest request, HttpServletResponse response)  throws ServletException, IOException {

response.setContentType(«text/xml»);

PrintWriter out = response.getWriter();

try{

runQuery(out);

}catch(Exception e){

out.println(e.getMessage());

out.close();

}

}

Donde runQuery es un método que simplemente llama al executeHQLQuery:

private void runQuery(PrintWriter out) {

executeHQLQuery(QUERY,out);

}

Importamos del paquete hibernate:

import org.hibernate.HibernateException;

import org.hibernate.Query;

import org.hibernate.Session;

Fuente: http://netbeans.org/kb/docs/java/hibernate-java-se.html#03c

Carla Salvatierra Arellano

posted under Grupo DAW | No Comments »

Prueba con Google Maps situada en la espol

agosto8

ejemplo de google maps aplicado a nuestra practica

En este archivo hemos modificado las alternativas de  mapTypeId: google.maps.MapTypeId.SATELLITE    latitud =(-2.145368,-79.964215)  para que en nuestra pagina principal aparezca la Espol, lo hemos puesto en vista de satelite debido a que se aprecia mejor y hemos editado el zoom

Gabriela Paladines, Verónica Lara

Prueba de Google Maps

posted under Grupo DAW | No Comments »

Esquema de la tarea

agosto8

Después de haber revisado un poco el API de Google Maps, y revisar lo que se indica en la tarea de:

  1. Implementar una aplicación JEE que utiliza Hibernate ( motor de persistencia) para extraer información de ubicaciones geográficas y mostrar marcadores en un mapa de Google Maps.

Aquí les dejo un esquema de lo que tenemos que hacer:

Esquema Tarea 1 final dawVer esquemaTarea1

Latitudes y Longitudes Universidades_Convenio

🙂 Carla Salvatierra Arellano




posted under Grupo DAW | 1 Comment »
« Older Entries