<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
Muchas gracias por tu ayuda Eñaut, la verdad es que si que cambia bastante de una version a otra pero me ha dado alguna idea.<br><br>Al final he detectado el problema. Escribo como debe quedar en gvsig 1.9 la carga de una capa por codigo utilizando una base de datos de PostgreSQL por si alguien lo necesita:<br><br>IProjection proj = null;<br>IVectorialDatabaseDriver driver = null;<br>IConnection
con = null;<br><br>View v = (View) PluginServices.getMDIManager().getActiveWindow();<br>MapControl mapCtrl = v.getMapControl();<br><br>String ciudad;<br><br>try {<br>
<br> String str
="jdbc:postgresql://localhost/VPR";<br> <br>
Class.forName("org.postgresql.Driver");<br> <br>
con =
ConnectionFactory.createConnection(str,"postgres","1");<br> <br>
((ConnectionJDBC)con).getConnection().setAutoCommit(false);<br><br> driver = (IVectorialDatabaseDriver) LayerFactory.getDM().getDriver("PostGIS JDBC Driver");<br><br>
DBLayerDefinition lyrDef = new DBLayerDefinition();<br>
<br> lyrDef.setName("CIUDADES"); 'nombre capa<br>
lyrDef.setSchema("public");<br>
lyrDef.setTableName("ciudades_xy"); 'nombre tabla<br> <br> if
(ciudad.equals("TODOS")) {<br>
lyrDef.setWhereClause("");<br> }else{<br>
lyrDef.setWhereClause("WHERE nombre= '" + ciudad+ "'"); <br> }<br> <br>
lyrDef.setFieldGeometry("the_geom"); 'Nombre campo geometria<br> <br>
String[] fields = {"gid","n_ciudad","x","y","nombre"}; 'Campos que se desea visualizar (gid obligatorio)<br>
lyrDef.setFieldNames(fields);<br><br>
lyrDef.setFieldID("gid"); 'Nombre campo principal<br> <br>
String strEPSG = mapCtrl.getViewPort().getProjection().getAbrev();<br> <br>
lyrDef.setSRID_EPSG(strEPSG);<br> <br>
if (driver instanceof ICanReproject) {<br>
((ICanReproject) driver).setDestProjection(strEPSG);<br>
}<br> <br>
lyrDef.setHost("localhost"); 'Servidor<br>
lyrDef.setPort(5432); 'Puerto<br> lyrDef.setDataBase("VPR"); 'Base de datos<br>
lyrDef.setUser("postgres"); 'Usuario<br>
lyrDef.setPassword("1"); 'Contraseña<br> <br>
<font style="" color="#ff0000"> <font style="" color="#000000">driver.setData(con,
lyrDef);</font></font><br> <br> View v = (View)
PluginServices.getMDIManager().getActiveWindow();<br>
MapControl mapCtrl = v.getMapControl();<br> <br>
if (driver instanceof ICanReproject) {<br>
proj = mapCtrl.getViewPort().getProjection();<br>
}<br> <br> FLayer
lyr;<br> lyr = LayerFactory.createDBLayer(driver,
"CIUDADES",<br> proj); 'driver, Nombre capa, proj<br>
<br> if (lyr != null) {<br>
lyr.setVisible(true);<br>
mapCtrl.getMapContext().getLayers().addLayer(lyr); <br>
} <br><br>} catch (DBException e) {<br> //
TODO Auto-generated catch block<br>
e.printStackTrace();<br>} catch (ClassNotFoundException e) {<br>
// TODO Auto-generated catch block<br>
e.printStackTrace();<br>} catch (SQLException e) {<br>
// TODO Auto-generated catch block<br>
e.printStackTrace();<br>}<br><br>Espero que os sirva.<br><br>Saludos.<br><br>Virginia<br>                                            <br /><hr />Disfruta de Hotmail y Messenger en tu móvil con YOIGO. <a href='http://serviciosmoviles.es.msn.com/hotmail/yoigo.aspx' target='_new'>¡Hazlo ya!</a></body>
</html>