Foro de elhacker.net

Programación => Java => Mensaje iniciado por: AlbertoGLR en 2 Febrero 2015, 17:59 pm



Título: Firmar jar´s de terceros para Java Web Start
Publicado por: AlbertoGLR en 2 Febrero 2015, 17:59 pm
Hola a todos,
tengo una pequeña aplicacion java con solo dos formularios, en la que uno de ellos utiliza una jar de terceros. Funciona bien en local pero cuando genero el jnlp y ejecuto desde jws este formulario no llega a abrirse y no muestra ningun error.
Todos los jar estan firmados (los propios desde netbeans y el de terceros desde la linea de comandos).
Llevo un tiempo intentando solucionarlo pero no se que estoy haciendo mal. ¿Alguien puede echarme una mano? (espero haber descrito bien el problema)

Saludos,


Título: Re: Firmar jar´s de terceros para Java Web Start
Publicado por: Usuario Invitado en 2 Febrero 2015, 18:15 pm
¿Has creado los archivos .jnlp para los jars?

Test.jnlp
Código
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <jnlp spec="1.0+" codebase="http://localhost:8080/" href="Test.jnlp">
  3.    <information>
  4.        <title>Prueba JNLP</title>
  5.        <vendor>Nombre del vendor</vendor>
  6.        <homepage href="http://localhost:8080/" />
  7.        <description>Descripcion</description>
  8.    </information>
  9.    <security>
  10.        <all-permissions/>
  11.    </security>
  12.    <resources>
  13.        <!-- version de java requerida -->
  14.        <j2se version="1.7+" />
  15.        <!-- indica como se llama el jar -->
  16.        <jar href="TestJnlp.jar" />
  17.    </resources>
  18.    <!-- Clase principal -->
  19.    <application-desc main-class="ruta.clase.Main" />
  20. </jnlp>

¿Qué servidor estás usando? Si estás usando apache copia el jar y su archivo descriptor .jnlp en webapps/ROOT.

Saludos.


Título: Re: Firmar jar´s de terceros para Java Web Start
Publicado por: AlbertoGLR en 2 Febrero 2015, 18:39 pm
Hola Gus,
el servidor que utilizo es tomcat 8.0, y sí que están generados los .jnlp: netbeans me ha generado uno que contiene el primer formulario y una referencia al segundo donde se encuentran definidos el resto de jar's (2 propios y el de terceros)



Título: Re: Firmar jar´s de terceros para Java Web Start
Publicado por: Usuario Invitado en 2 Febrero 2015, 18:55 pm
¿Todos los jars y .jnlp están en el directorio de tomcat?


Título: Re: Firmar jar´s de terceros para Java Web Start
Publicado por: AlbertoGLR en 2 Febrero 2015, 19:21 pm
La aplicación esta en el directorio webapps\Gestion y es donde estan los .jnlp y el jar de acceso (principal). Ademas dentro de este se encuentra el directorio \lib que es donde están el resto de jars, tanto propios como el de terceros.


Título: Re: Firmar jar´s de terceros para Java Web Start
Publicado por: Usuario Invitado en 2 Febrero 2015, 21:55 pm
Hmm es raro. Quizás sea problema con la caché. Ejecuta el comando:

Código:
javaws -viewer

Se te abrirá el panel de control de Java y elimina historiales. Prueba si ahora ya puedes ejecutarlo.


Título: Re: Firmar jar´s de terceros para Java Web Start
Publicado por: AlbertoGLR en 3 Febrero 2015, 16:16 pm
También lo había hecho (y he vuelto a hacer), pero nada.
Incluso lo probé con otra pequeña aplicación y un jar diferente (también de terceros y firmado por mí) y lo mismo.
¿Puedo tener algo mal configurado ó estar haciendo mal alguna cosa que a mí me parezca normal?

pd: Gus, gracias por la ayuda


Título: Re: Firmar jar´s de terceros para Java Web Start
Publicado por: Usuario Invitado en 3 Febrero 2015, 16:30 pm
¿Cuando ejecutas el archivo, ves al menos la imagen de JavaWS?

(http://i.imgur.com/0GbeNrM.png)

Si no la ves, puede ser señal que la JWS esté corrupta y quizás una re-instalación del JRE (quizás una versión más reciente) lo pueda solucionar.

PD: No te preocupes, las ayudas y favores son prestadas en éste mundo ;)


Título: Re: Firmar jar´s de terceros para Java Web Start
Publicado por: AlbertoGLR en 3 Febrero 2015, 16:49 pm
La aplicación sí arranca: muestra la pantalla de acceso, y una vez validado el usuario accede a la segunda pantalla, y es desde esta, que al intentar acceder/abrir un formulario de consulta que contiene la clase ubicada en el jar de terceros (el jar es swingx-all-1.6.4.jar) no hace nada y tampoco da ningún error.
(Como ya adelanté, la misma operación en local funciona)


Título: Re: Firmar jar´s de terceros para Java Web Start
Publicado por: Usuario Invitado en 3 Febrero 2015, 17:25 pm
En primera, te recomendaría mucho que no uses jnlp ni applets, están obsoletos hace mucho tiempo, en realidad, tienen poca utilidad.

La mejor recomendación que puedo darte en éste punto es que debuguees tu aplicación. Buscan en Google como hacer un debug en NetBeans o también puedes usar JUnit para hacer tests de cada método para que te cerciores que todos los métodos están haciendo su trabajo correctamente.

Otra opción es que publiques éste tema en StackOverFlow (http://stackoverflow.com) (en inglés). Allí hay mucha gente que conoce bien Java y te puede dar una mejor respuesta.

Salu2.


Título: Re: Firmar jar´s de terceros para Java Web Start
Publicado por: AlbertoGLR en 3 Febrero 2015, 17:38 pm
Entendido. Voy a seguir tus consejos. Gracias de nuevo por tu ayuda.