<div dir="ltr"><br clear="all"><div>Hola.</div><div><br></div><div>Estoy desarrollando un plugin en gvSIG cuyo cometido será la carga de varias capas automáticamente nada más iniciar gvSIG. Como hará uso de servicios WMS me he fijado en la exportación e importación de capas mediante archivos CML.</div>
<div><br></div><div>Puedo exportar una capa WMS sin problemas y guardarla como CML. Pego a continuación un ejemplo.</div><div><br></div><div>---------------------------------------------------------------------------</div>
<div>&lt;?xml version=&quot;1.0&quot; encoding=&quot;ISO-8859-1&quot;?&gt;<br>&lt;!-- Creado con gvSIG 2.1.0-2225 --&gt;<br>&lt;ViewContext id=&quot;nasawmc&quot; xmlns:xsi=&quot;<a href="http://www.w3.org/2001/XMLSchema-instance">http://www.w3.org/2001/XMLSchema-instance</a>&quot; xmlns:xlink=&quot;<a href="http://www.w3.org/1999/xlink">http://www.w3.org/1999/xlink</a>&quot; xmlns=&quot;<a href="http://www.opengis.net/context">http://www.opengis.net/context</a>&quot; xsi:schemaLocation=&quot;<a href="http://www.opengeospatial.net/context">http://www.opengeospatial.net/context</a> context.xsd&quot; version=&quot;1.1.0&quot; &gt;<br>
  &lt;General&gt;<br>    &lt;BoundingBox maxx=&quot;180.0&quot; maxy=&quot;90.0&quot; minx=&quot;-180.0&quot; miny=&quot;-90.0&quot; SRS=&quot;EPSG:4326&quot; /&gt;<br>    &lt;Title&gt;nasa wmc&lt;/Title&gt;<br>    &lt;KeywordList&gt;<br>
      &lt;Keyword&gt;&lt;/Keyword&gt;<br>    &lt;/KeywordList&gt;<br>  &lt;/General&gt;<br>  &lt;LayerList&gt;<br>&lt;Layer hidden=&quot;false&quot; queryable=&quot;false&quot; &gt;<br>  &lt;Server title=&quot;NASA Earth Observations (NEO) WMS&quot; service=&quot;WMS&quot; version=&quot;1.3.0&quot; &gt;<br>
    &lt;OnlineResource xlink:type=&quot;simple&quot; xlink:href=&quot;<a href="http://neowms.sci.gsfc.nasa.gov/wms/wms">http://neowms.sci.gsfc.nasa.gov/wms/wms</a>&quot; /&gt;<br>  &lt;/Server&gt;<br>  &lt;Name&gt;MOD_143D_RR&lt;/Name&gt;<br>
  &lt;Title&gt;True Color (1 day - Terra/MODIS Rapid Response)&lt;/Title&gt;<br>  &lt;SRS&gt;CRS:84&lt;/SRS&gt;<br>  &lt;FormatList&gt;<br>    &lt;Format&gt;image/png&lt;/Format&gt;<br>    &lt;Format current=&quot;1&quot; &gt;image/jpeg&lt;/Format&gt;<br>
  &lt;/FormatList&gt;<br>  &lt;StyleList&gt;<br>    &lt;Style current=&quot;1&quot; &gt;<br>      &lt;Name&gt;default&lt;/Name&gt;<br>      &lt;Title&gt;default&lt;/Title&gt;<br>    &lt;/Style&gt;<br>  &lt;/StyleList&gt;<br>
  &lt;DimensionList&gt;<br>  &lt;/DimensionList&gt;<br>&lt;/Layer&gt;<br>  &lt;/LayerList&gt;<br>&lt;/ViewContext&gt;</div><div><br></div><div>------------------------------------------------</div><div>El problema viene a la hora de cargar este archivo. Usando gvSIG desktop, versión 2.1.0.2227 testing, yendo por la opción del menú Archivo - Abrir WMC, salta una excepción NullPointerException. Pego a continuación la traza completa</div>
<div><br></div><div>
java.lang.NullPointerException<br>java.lang.NullPointerException: null<br>    org.gvsig.raster.fmap.layers.DefaultFLyrRaster.getProjection(DefaultFLyrRaster.java:1665)<br>    org.gvsig.fmap.mapcontext.layers.FLayers.doAddLayer(FLayers.java:182)<br>
    org.gvsig.fmap.mapcontext.layers.FLayers.addLayer(FLayers.java:238)<br>    org.gvsig.fmap.mapcontext.layers.FLayers.addLayer(FLayers.java:210)<br>    org.gvsig.raster.wms.app.wmsclient.wmc.ImportWebMapContextExtension.readMapContextFile(ImportWebMapContextExtension.java:215)<br>
    org.gvsig.raster.wms.app.wmsclient.wmc.ImportWebMapContextExtension.execute(ImportWebMapContextExtension.java:112)<br>    org.gvsig.andami.actioninfo.impl.DefaultActionInfo.execute(DefaultActionInfo.java:252)<br>    org.gvsig.andami.actioninfo.impl.DefaultActionInfo.actionPerformed(DefaultActionInfo.java:289)<br>
    javax.swing.AbstractButton.fireActionPerformed(Unknown Source)<br>    javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)<br>    javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)<br>    javax.swing.DefaultButtonModel.setPressed(Unknown Source)<br>
    javax.swing.AbstractButton.doClick(Unknown Source)<br>    javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)<br>    javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)<br>    java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)<br>
    java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)<br>    java.awt.Component.processMouseEvent(Unknown Source)<br>    javax.swing.JComponent.processMouseEvent(Unknown Source)<br>    java.awt.Component.processEvent(Unknown Source)<br>
    java.awt.Container.processEvent(Unknown Source)<br>    java.awt.Component.dispatchEventImpl(Unknown Source)<br>    java.awt.Container.dispatchEventImpl(Unknown Source)<br>    java.awt.Component.dispatchEvent(Unknown Source)<br>
    java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)<br>    java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)<br>    java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)<br>    java.awt.Container.dispatchEventImpl(Unknown Source)<br>
    java.awt.Component.dispatchEvent(Unknown Source)<br>    java.awt.EventQueue.dispatchEventImpl(Unknown Source)<br>    java.awt.EventQueue.access<span id="goog_2049568986"></span>0(Unknown Source)<br>    java.awt.EventQueue$1.run(Unknown Source)<br>
    java.awt.EventQueue$1.run(Unknown Source)<br>    java.security.AccessController.doPrivileged(Native Method)<br>    java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)<br>    java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)<br>
    java.awt.EventQueue$2.run(Unknown Source)<br>    java.awt.EventQueue$2.run(Unknown Source)<br>    java.security.AccessController.doPrivileged(Native Method)<br>    java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)<br>
    java.awt.EventQueue.dispatchEvent(Unknown Source)<br>    org.gvsig.andami.ui.AndamiEventQueue.dispatchEvent(AndamiEventQueue.java:50)<br>    java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)<br>    java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)<br>
    java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)<br>    java.awt.EventDispatchThread.pumpEvents(Unknown Source)<br>    java.awt.EventDispatchThread.pumpEvents(Unknown Source)<br>    java.awt.EventDispatchThread.run(Unknown Source)</div>
<div><br></div><div>  -----------------------------------------------------------------</div><div>


Este problema ocurre en las versiones 2.1.0-2225 y 2.1.0-2227, la más reciente. ¿Tiene alguna solución?</div><div><br></div><div>Gracias.<br></div>
</div>