Foros del Web » Programación para mayores de 30 ;) » Java »

Conexion Base de Datos Oracle mediante JSTL

Estas en el tema de Conexion Base de Datos Oracle mediante JSTL en el foro de Java en Foros del Web. Hola, Estoy intentando conectarme a una base de datos Oracle situada en un servidor externo mediante JSTL. Lo he probado anteriormente mediante un Bean de ...
  #1 (permalink)  
Antiguo 01/02/2014, 18:54
 
Fecha de Ingreso: noviembre-2008
Ubicación: Sevilla
Mensajes: 157
Antigüedad: 16 años
Puntos: 2
Conexion Base de Datos Oracle mediante JSTL

Hola,

Estoy intentando conectarme a una base de datos Oracle situada en un servidor externo mediante JSTL.
Lo he probado anteriormente mediante un Bean de la siguiente forma:

Código:
OracleDataSource fdo = new OracleDataSource();
fdo.setDatabaseName("orc1");
fdo.setDriverType("thin");
fdo.setServerName("150...");
fdo.setPortNumber(1521);
con = fdo.getConnection("...", "...");
La conexion se realiza sin problemas.

Ahora lo estoy intentando mediante JSTL, de la siguiente forma:
Código:
sql:setDataSource
            driver="sun.jdbc.odbc.JdbcOdbcDriver"
            url="jdbc:oracle:thin@150.....:1521:orc1"
            user="..."
            password="..."
            var="bd" />
(Donde pongo los puntos suspensivos realmente hay datos)

Cuando ejecuto la aplicacion me aparece el siguiente mensaje cuando se carga el jsp:

Código:
javax.servlet.jsp.JspException: Unable to get connection, DataSource invalid: "java.sql.SQLException: La dirección URL de Oracle especificada no es válida"
	at org.apache.taglibs.standard.tag.common.sql.QueryTagSupport.getConnection(QueryTagSupport.java:318)
	at org.apache.taglibs.standard.tag.common.sql.QueryTagSupport.doStartTag(QueryTagSupport.java:201)
	at jsp_servlet.__procesajstl._jsp__tag1(__procesajstl.java:164)
	at jsp_servlet.__procesajstl._jspService(procesaJSTL.jsp:17)
	at weblogic.servlet.jsp.JspBase.service(JspBase.java:34)
	at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction
        ..........................
        ..........................
        .........................
¿Alguien tiene alguna idea de que es lo que falla? He probado multitud de posibilidades pero siempre da error...

Gracias de antemano

Última edición por marodal; 02/02/2014 a las 04:20
  #2 (permalink)  
Antiguo 02/02/2014, 04:54
 
Fecha de Ingreso: noviembre-2008
Ubicación: Sevilla
Mensajes: 157
Antigüedad: 16 años
Puntos: 2
Respuesta: Conexion Base de Datos Oracle mediante JSTL

El problema está en la url. Buscando he visto que en algunos sitios ponen : despues del tipo de driver, por lo que he dejado la url asi:

Código:
url="jdbc:oracle:thin:@//150....:1521/orc1"
Pero ahora aparece la siguiente excepción cuando ejecuto:

Código:
javax.servlet.jsp.JspException: Unable to get connection, DataSource invalid: "java.sql.SQLException: Listener refused the connection with the following error:
ORA-12514, TNS:listener does not currently know of service requested in connect descriptor
 "
	at org.apache.taglibs.standard.tag.common.sql.QueryTagSupport.getConnection(QueryTagSupport.java:318)
	at org.apache.taglibs.standard.tag.common.sql.QueryTagSupport.doStartTag(QueryTagSupport.java:201)
	at jsp_servlet.__procesajstl._jsp__tag1(__procesajstl.java:163)
	at jsp_servlet.__procesajstl._jspService(procesaJSTL.jsp:19)
............
............
  #3 (permalink)  
Antiguo 02/02/2014, 05:56
 
Fecha de Ingreso: noviembre-2008
Ubicación: Sevilla
Mensajes: 157
Antigüedad: 16 años
Puntos: 2
Respuesta: Conexion Base de Datos Oracle mediante JSTL

He probado a conectar de la misma forma en una clase java normal con un main.

Código:
public class Test {
    public Test() {
        super();
    }
    
    public static void main(String[] args){
        
        try{
            DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
            Connection con =DriverManager.getConnection("jdbc:oracle:thin:@150....:1521/orc1","...","...");
            Statement s = con.createStatement();    
            ResultSet result = s.executeQuery("select *from MRALOGIN");
            while(result.next()){
                System.out.println(result.getString(1));
            }

        }
        catch(Exception e){
            System.out.println(e.toString());
        }
        
        
    }
}

Pero el error es el mismo:
Código:
java.sql.SQLException: Listener refused the connection with the following error:
ORA-12514, TNS:listener does not currently know of service requested in connect descriptor

Etiquetas: conexion, jstl, mediante, oracle, sql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:39.