Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/11/2011, 15:37
VivaElPirateo
 
Fecha de Ingreso: septiembre-2011
Mensajes: 40
Antigüedad: 13 años, 2 meses
Puntos: 0
Pregunta Problema con conexión a Netbeans

Gente, buenas tardes:

Tengo un problema con mi conexión de Netbeans a Oracle.

Ya teniendo instalado el ojdbc14 y hecha la conexión a la base de datos, intento introducir elementos en mi aplicación de escritorio, y al presionar el botón "guardar", me lanza este mensaje:

java.sql.SQLexception: excepcion de e/s: invalid connection string format,
a valid format is "host:port:sid"


Publico acá los códigos de la clase constructora(configuración del botón), y del procedimiento almacenado SP_Ingreso_Constructora


private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {

String id_constructora = txtIdConstructora.getText().toUpperCase();
String nombre_constructora = txtNombreConstructora.getText().toUpperCase();
String direccion_constructora = txtDireccionConstructora.getText().toUpperCase();
int telefono_constructora = Integer.parseInt(txtTelefonoConstructora.getText() );
String contacto_constructora = txtContactoConstructora.getText().toUpperCase();

String driver = "oracle.jdbc.driver.OracleDriver";
String dsn = "jdbc:oracle:thin:@:localhost:1521:XE";
String sql = "{call SP_IngresarConstructora(?,?,?,?,?)}";

String usuario = "tallerbd";
String password = "oracle";

try {
Class.forName(driver);
Connection con = DriverManager.getConnection(dsn, usuario, password);
CallableStatement cstmt = con.prepareCall(sql);


cstmt.setString(1,id_constructora);
cstmt.setString(2,nombre_constructora);
cstmt.setString(3,direccion_constructora);
cstmt.setInt(4,telefono_constructora);
cstmt.setString(5,contacto_constructora);

if (cstmt.execute()) {
JOptionPane.showMessageDialog(null, "La Constructora no pudo ser ingresada");
} else {
JOptionPane.showMessageDialog(null, "Datos ingresados correctamente");
}

cstmt.close();
con.close();
} catch (Exception e1) {

JOptionPane.showMessageDialog(null, e1);
}
}


Acá viene el procedimiento almacenado:


package procedimiento.almacenado;

import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

/**
* @author Rodrigo Alejandro González
* Taller BD Primavera 2011
*/

public class SP_Ingreso_Constructora extends negocio.Constructora{

private Connection Conexion;
private CallableStatement cstmt = null ;

public SP_Ingreso_Constructora()
{
super();
Conexion = null;
}

public SP_Ingreso_Constructora(Connection Con, String id_constructora,
String nombre_constructora,
String direccion_constructora,
int telefono_constructora,
String contacto_constructora)
{
super(id_constructora, nombre_constructora,
direccion_constructora, telefono_constructora,
contacto_constructora);

Conexion = Con;
}

public void Agrega() throws ClassNotFoundException, SQLException
{
//Class.forName("com.microsoft.sqlserver.jdbc.SQLSer verDriver"); Sentencia SQL Server

Class.forName("oracle.jdbc.driver.OracleDriver");

//Connection con=DriverManager.getConnection("jdbc:sqlserver://MARTE:1433;DatabaseName=Prueba", "sa", "gsiinformatica");

Connection con=DriverManager.getConnection("jdbc:oracle:thin: tallerbd/oracle@:localhost:1521:XE"); //, "tallerbd", "oracle");
//URL ==> jdbc:oracle:thin:@localhost:1521:XE
CallableStatement cstmt = con.prepareCall("{call SP_IngresarConstructora(?,?,?,?,?)}");

cstmt.setString(1,id_constructora);
cstmt.setString(2,nombre_constructora);
cstmt.setString(3,direccion_constructora);
cstmt.setInt(4,telefono_constructora);
cstmt.setString(5,contacto_constructora);

cstmt.execute();
con.close();
}
}

Cualquier ayuda se agradece.