Buscar
Social
Ofertas laborales ES

Foro sobre Java EE > Creacion de un entorno cloud en jelastic usando oracle 11g edition express

Buenos días a todos y gusto en estar con ustedes!
Estoy desplegando(deploying) una aplicacion java *.war en el entorno de nuevo de jelastic
el indice jsp se muestra correctamente logro que mi servlet se autentique correctamente
("jdbc:oracle:thin:@127.0.0.1:1521:xe", "Oracle2", "clave123") pero cuando solicito un servicio
en este caso consulta a la base de datos no hay respuesta de oracle se queda pegado
cs =conn.prepareCall(sql)
Asumo que puede ser problema de la dirección de localhost(@127.0.0.1) o el puerto 1521
pero no se que colocar en la dirección o el puerto?
Estoy conectado a un servidor apache tomcat 7.0.67
En jlastic no manejan oracle por lo que desconocen que hacer(debo instalar el oracle 11g en este entorno?) estos son los entornos que utilizan para base de datos
Mysql, Mariadb, Postgresql, mongodb, mssql, jndi, hibernate
Quedo atento a todos sus comentarios y desde ya muchas gracias por su ayuda!
Este es el fragmento de código donde tengo problema
try {
DriverManager.registerDriver (new oracle.jdbc.driver.OracleDriver());
} catch (SQLException ex) {
Logger.getLogger(miServlet.class.getName()).log(Level.SEVERE, null, ex);
}
Connection conn = null;
try {
conn = DriverManager.getConnection
("jdbc:oracle:thin:@127.0.0.1:1521:xe", "Oracle2", "clave123");
} catch(SQLException ex) {
Logger.getLogger(miServlet.class.getName()).log(Level.SEVERE, null, ex);
}
out.println("conectado....... = ");
CallableStatement cs = null;
String sql="begin AMD_VENDEDOR3(?,?,?,?); end;";
try {
cs =conn.prepareCall(sql);(Aqui se queda pegado no cancela)
} catch (SQLException ex) {
Logger.getLogger(miServlet.class.getName()).log(Level.SEVERE, null, ex);
}
out.println("enviando accion....... = ");(Este mensaje nunca se ve)

septiembre 30, 2016 | Registered Commenterpsanchezpiza

Hola, has comprobado que la conexion realmente este iniciada?? Despues en los bloques catch, haz printstackTraces de las excepciones, asi:

try {
cs =conn.prepareCall(sql);(Aqui se queda pegado no cancela)
} catch (SQLException ex) {
Logger.getLogger(miServlet.class.getName()).log(Level.SEVERE, null, ex);
ex.printStackTrace();
}

de esa manera se imprimirán los mensajes de erro provocados por las excepciones en la consola de java(Depende del IDE que uses). De esa manera podras detectar que error se esta produciendo.

Cuando hagas eso obtendrás una serie de salidas, pues estas las investigas o nos vuelves a preguntar, con solo lo que nos pones,no veo nada incorrecto...

Por otro lado puede ser que la instancia de oracle no este escuchando en 127.0.0.1 , por eso te digo pon stacktraces para saber que esta provocando que se detenga la ejecucion.

Bueno un saludo y suerte.

septiembre 30, 2016 | Registered Commenterloderain

Buenas tardes Loderain!

Este es el mensaje de excepción que arroja
voy a conectarme =
ErrorIO Error: The Network Adapter could not establish the connection
conectado....... =

try {
conn = DriverManager.getConnection
("jdbc:oracle:thin:@@127.0.0.1:1521:xe", "Oracle2", "clave123");

} catch(SQLException ex) {
Logger.getLogger(miServlet.class.getName()).log(Level.SEVERE, null, ex);
out.println("Error" + ex.getMessage() + "" ); }
out.println("conectado....... = ");

septiembre 30, 2016 | Unregistered CommenterPedro Sanchez

supongo que tendrás algún cliente oracle, como el toad, o alguno de esos, o sino con el mismo netbeans puedes realizar una prueba de conexion con los datos que usas en el codigo, es decir, En el cliente con el que realices la prueba:

en servidor pon 127.0.0.1
en instancia de la bbdd pon xe
en el usuario pon Oracle2
y en el pass pon clave123

Asegúrate que un cliente es capaz de conectarse a la bbdd con esos datos, y si es así, ya habría que investigar por otro lado.... Pero dado que el error es la incapacidad de establecer una conexion y que el codigo y la cadena de conexion se ven bien, solo me queda que sea un dato de la conexion... quizas la ip, si en lugar de poner 127.0.0.1 pusieras la ip de red de la maquina en la que estas ejecutando el codigo, por ejemplo 192.168.1.40(Suelen ser de este tipo...).


Y Otra cosa en tu código... En lugar de esto:

} catch(SQLException ex) {
Logger.getLogger(miServlet.class.getName()).log(Level.SEVERE, null, ex);
out.println("Error" + ex.getMessage() + "" ); }
out.println("conectado....... = ");


Pon Esto:

} catch(SQLException ex) {
Logger.getLogger(miServlet.class.getName()).log(Level.SEVERE, null, ex);
ex.printStackTrace(out); }
out.println("conectado....... = ");

A ver si así salen mas detalles del error, bueno, prueba estas cosas que te digo, a ver que tal va.Un saludo

septiembre 30, 2016 | Registered Commenterloderain