Problema con aplicación que necesita JAVA

Iniciado por fespafer, 13 Abril 2017, 11:30 AM

0 Miembros y 1 Visitante están viendo este tema.

fespafer

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.

Orubatosu

¿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
"When People called me freak, i close my eyes and laughed, because they are blinded to happiness"
Hideto Matsumoto 1964-1998

fespafer

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.

Orubatosu

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...
"When People called me freak, i close my eyes and laughed, because they are blinded to happiness"
Hideto Matsumoto 1964-1998

fespafer

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

Orubatosu

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
"When People called me freak, i close my eyes and laughed, because they are blinded to happiness"
Hideto Matsumoto 1964-1998

fespafer

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

fespafer

Os pongo algunas capturas:









Éste es el mensaje que me sale tras aceptar el error de "No se ha podido conectar con la base de datos"

fespafer

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.

fespafer

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.