Foro de elhacker.net

Programación => Java => Mensaje iniciado por: fespafer en 13 Abril 2017, 11:30 am



Título: Problema con aplicación que necesita JAVA
Publicado por: fespafer en 13 Abril 2017, 11:30 am
Buenos días a todos, no sé si esta consulta va en este hilo, si no lo es, pido perdón por adelantado.

El tema es que estoy intentando ejecutar una aplicación muy importante para mi trabajo y no consigo que funcione.

Es una aplicación instalada en la empresa. Cogí el instalador y lo ejecuté en mi ordenador y luego hice un copia y pega de los archivos instalados en la carpeta de instalación del ordenador de origen. Tiene que conectarse a una base de datos, la cual la hace a través de SQL Server. Configuré el acceso a la base de datos y parece que conectaba bien, se abre la interfaz pero cuando quiero hacer uso de alguna opción, veo en el administrador de tareas que abre Java SE durante unos segundos, llegando a ocupar unos 60Mbs pero se queda bloqueada.

He visto que hay una carpeta /resources con archivos .jar que creo que son los que ejecuta al iniciar los procesos, pero tras cerrar un diálogo en blanco que sale cuando intento abrir alguna opción, obtengo el error: "ERROR: No se ha encontrado la interfaz de Java" y otro: "Sin conexión con la base de datos", que supongo que sera a consecuencia de lo primero.

Tengo instalado Java 8_121 y estoy desesperado porque ya no sé qué más intentar. Cualquier ayuda es bienvenida. Gracias por adelantado.


Título: Re: Problema con aplicación que necesita JAVA
Publicado por: Orubatosu en 13 Abril 2017, 13:54 pm
¿El controlador de JDBC de SQL Server está instalado en tu máquina y en el path?

Echa un vistazo aquí:

https://technet.microsoft.com/es-es/library/ms378526(v=sql.105).aspx


Título: Re: Problema con aplicación que necesita JAVA
Publicado por: fespafer en 13 Abril 2017, 15:18 pm
Gracias por tu respuesta. He seguido mirando y creo que puede estar relacionado con la configuración de SQL Server. Soy bastante novato en este tema.

La aplicación se ejecuta en 32 bits y SQL es 64, no sé si estará relacionado. He intentado ver si SQL escucha en algún puerto pero no me sale y también he querido conectar a la base de datos en modo TCP/IP pero me da error. Sólo conecta si lo pongo en "predeterminado".

Decir que tanto SQL Server como la aplicación las ejecuto en modo local en el portátil.

Gracias de nuevo.


Título: Re: Problema con aplicación que necesita JAVA
Publicado por: Orubatosu en 13 Abril 2017, 18:58 pm
En principio no tiene nada que ver, tu aplicación se comunica con SQL server a través del controlados y solo intercambian sentencias SQL y recepción de resultados, la base puede ser de 32 o 64 y el programa que accede de 32 o 64, da lo mismo.

Normalmente cuando no consigue conectar suele ser un problema de controladores. Asumo que la aplicación tiene su controlador correspondiente ya incluido porque supongo trabajas con ella teniendola ya compilada ¿no?

Intenta si el caso acceder al servidor montando una conexión simple en java con eclipse o similar y así sales de dudas.

Comprueba que los datos de conexión son correctos: Dirección del servidor, usuario, password...


Título: Re: Problema con aplicación que necesita JAVA
Publicado por: fespafer en 13 Abril 2017, 19:02 pm
Gracias de nuevo por la ayuda. La aplicación es un .exe que comunica con la base de datos a través de sql. Sé que los datos de acceso están bien porque si pongo alguno mal a propósito devuelve un error. Al meter los correctos, entra en la aplicación y al intentar ejecutar alguna opción es cuando sale el error de conexión con la base de datos y posteriormente otro del error de java.

Gracias


Título: Re: Problema con aplicación que necesita JAVA
Publicado por: Orubatosu en 14 Abril 2017, 09:38 am
Bueno, al estar compilado y "empaquetado" debo de suponer que lleva el controlador ya integrado, que tienes el controlador ademas en el "path" de su ordenador...

Lo que no tengo claro es si el error lo da al intentar la conexión o al ejecutar consultas. Ojo porque los errores que aparecen son normalmente los mensajes que indica el que ha hecho el programa (y a veces se ponen muy genéricos, es mala practica pero se hace)

Mira que el servidor SQL tenga "paso" a través del cortafuegos

https://msdn.microsoft.com/es-es/library/cc646023.aspx

Dudo MUCHO que sea eso, pero mientras pensamos algo a ver si hay suerte. Lo suyo sería intentar ver a través de consola que realmente la base de datos está funcionando y corriendo

¿Sabes usar la consola de SQL server?

https://technet.microsoft.com/es-es/library/ms165702(v=sql.105).aspx

Mas que nada para tener al menos claro paso a paso, que el servidor esta funcionando


Título: Re: Problema con aplicación que necesita JAVA
Publicado por: fespafer en 14 Abril 2017, 09:47 am
No tengo ni idea de SQL Server, pero iré mirando lo que has puesto.

Respecto al cortafuegos, he probado a añadir reglas abriendo el puerto 1433 y a desactivarlo, pero nada.

Muchas gracias


Título: Re: Problema con aplicación que necesita JAVA
Publicado por: fespafer en 14 Abril 2017, 10:02 am
Os pongo algunas capturas:

(http://www.lawebdelprogramador.com/usr/214000/214465/58f07ed943bc8-Captura.jpg)

(http://www.lawebdelprogramador.com/usr/214000/214465/58f07ed949989-Captura2.jpg)

(http://www.lawebdelprogramador.com/usr/214000/214465/58f07ed94f745-Captura3.jpg)

(http://www.lawebdelprogramador.com/usr/214000/214465/58f07f7a37a13-Captura4.jpg)

Éste es el mensaje que me sale tras aceptar el error de "No se ha podido conectar con la base de datos"
(http://www.lawebdelprogramador.com/usr/214000/214465/58f07ed96722c-Captura6.jpg)


Título: Re: Problema con aplicación que necesita JAVA
Publicado por: fespafer en 14 Abril 2017, 10:50 am
Al utilizar este comando:

sqlcmd -S server1\SQLExpress -U SqlUserAccount -P SqlPassword

(poniendo los datos correctos de servidor usuario y pass) me da error 0x2 Nivel 16, estado 1.


Título: Re: Problema con aplicación que necesita JAVA
Publicado por: fespafer en 14 Abril 2017, 11:33 am
Sigo investigando... según leo en este artículo:
https://msdn.microsoft.com/es-es/library/mt750266.aspx

Al filtrar en registros de SQL Server "El servidor está escuchando en el puerto...", debería aparecer esa frase que indica que esta instancia de SQL Server está escuchando en todas las direcciones IP para el puerto 1433, pero no me sale nada, por lo que intuyo que no está admitiendo conexiones en ese puerto.

A ver si se os ocurre algo.


Título: Re: Problema con aplicación que necesita JAVA
Publicado por: jhonatanAsm en 15 Abril 2017, 17:49 pm
Podrías verificar la configuración que tiene la pc donde esta instalada el programa.
podría ser la versión del java, verifica la versión java que tiene la pc donde estaba el programa, también puede ser que no encuentre el jar, para ello tendrías que declarar la variable de entorno CLASSPATH, y darle el valor la ruta de la carpeta donde está tu .jar


Título: Re: Problema con aplicación que necesita JAVA
Publicado por: fespafer en 16 Abril 2017, 07:03 am
Al final era un problema de sql Server. Lo desinstalé  por completo, volví a instalar, configuré y ya va todo bien. Muchas gracias por vuestra ayuda.


Título: Re: Problema con aplicación que necesita JAVA
Publicado por: Orubatosu en 16 Abril 2017, 22:15 pm
Estos son los misterios donde una cosa no va... la desinstalas, la instalas de nuevo y funciona.

Debe de haber un motivo, peroooooo