Hi,

I am not sure what is going wrong but otherwise I have a feeling that your fid 
is not optimal.  Do you have an integer field as a primary key in the table?  
The righ way to handle fids is a bit complicated and you will need at least a 
sequence to take new values from. In production environment you will need to 
use also a trigger and possibly some other things to guarantee that concurrent 
users doing updates are getting unique fid for their inserts.

-Jukka Rahkonen-

David Alda Fernandez de Lezea wrote:

> Hi list,

> I'm having some problems performing a wfs-t insert. So far, I've working with 
> some other oracle tables and everything has worked fine, but now I'm facing a 
> different situation. Everything seems to be OK but I've found something 
> strange in the logs. While trying to construct the GeoServer request to 
> Oracle, the GeoServer instance apparently misses the geometry field

> 2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting GEOMETRY to
> 2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting 14 to

While in other requests from another application I developed a while ago,

>2011-08-24 13:36:03,730 DEBUG [org.geotools.jdbc] - Setting PENDIENTE to 89
>2011-08-24 13:36:03,730 DEBUG [org.geotools.jdbc] - Setting 16 to 89
>2011-08-24 13:36:03,730 DEBUG [org.geotools.jdbc] - Setting GEOMETRY to 
>POLYGON ((...))
>2011-08-24 13:36:03,730 DEBUG [org.geotools.jdbc] - Getting next FID: SELECT 
>MAX(GID) + 1 FROM USRCARTO.TB_PRUEBA_WFST
>2011-08-24 13:36:03,730 DEBUG [org.geotools.jdbc] - Inserting new feature with 
>ps: INSERT INTO USRCARTO.TB_PRUEBA_WFST ( 
>PROVINCIA,MUNICIPIO,POLIGONO,PARCELA,RECINTO,DN_SURFACE,DN_PERIMET,ELEGIBILID,COEF_REGAD,COEF_PASTO,PARCELA_AG,DN_OID,FECHA,USO_SIGPAC,USO_2003,PENDIENTE,GEOMETRY,GID
> ) VALUES ( ?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
>2011-08-24 13:36:03,730 DEBUG [org.geotools.jdbc] - 1 = 1

GeoServer Log:

2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting CODEX to 
010130050002
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting 0 to 010130050002
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting UG to 17
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting 1 to 17
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting VERSION to 1
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting 2 to 1
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting TOPONIMO to UG_17
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting 3 to UG_17
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting PROVINCIA to 1
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting 4 to 1
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting MUNICIPIO to 13
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting 5 to 13
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting AGREGADO to 0
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting 6 to 0
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting ZONA to 0
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting 7 to 0
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting POLIGONO to 3
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting 8 to 3
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting PARCELA to 506
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting 9 to 506
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting RECINTO to 1
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting 10 to 1
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting PARCELA_AG to null
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting 11 to null
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting CONUSUCOD to null
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting 12 to null
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting CONMODFEC to null
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting 13 to null
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting GEOMETRY to
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting 14 to
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting GRUPO to null
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Setting 15 to null
2011-08-24 13:56:54,714 DEBUG [org.geotools.jdbc] - Getting next FID: SELECT 
MAX(GID) + 1 FROM USRCARTO.GT_ARLOGIS_UG_ED50
2011-08-24 13:56:54,714 ERROR [org.geoserver.wfs] - Transaction failed
org.geoserver.wfs.WFSTransactionException: Error performing insert
        at 
org.geoserver.wfs.InsertElementHandler.execute(InsertElementHandler.java:204)
        at org.geoserver.wfs.Transaction.execute(Transaction.java:334)
        at org.geoserver.wfs.Transaction.transaction(Transaction.java:109)
        at 
org.geoserver.wfs.DefaultWebFeatureService.transaction(DefaultWebFeatureService.java:163)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at 
org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
        at org.geoserver.ows.util.EMFLogger.invoke(EMFLogger.java:51)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at 
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
        at $Proxy19.transaction(Unknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.geoserver.ows.Dispatcher.execute(Dispatcher.java:599)
        at 
org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:230)
        at 
org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
        at 
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
        at 
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:875)
        at 
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
        at 
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
        at 
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:511)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
        at 
org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
        at 
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
        at 
org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)
        at 
org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)
        at 
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at 
org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
        at 
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at 
org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
        at 
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at 
org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
        at 
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at 
org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
        at 
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at 
org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
        at 
org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
        at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
        at 
org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
        at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
        at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
        at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:879)
        at 
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
        at 
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
        at 
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
        at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
        at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to 
com.vividsolutions.jts.geom.Geometry
        at org.geotools.jdbc.JDBCDataStore.insertSQLPS(JDBCDataStore.java:3350)
        at org.geotools.jdbc.JDBCDataStore.insert(JDBCDataStore.java:1240)
        at org.geotools.jdbc.JDBCDataStore.insert(JDBCDataStore.java:1207)
        at 
org.geotools.jdbc.JDBCInsertFeatureWriter.write(JDBCInsertFeatureWriter.java:73)
        at 
org.geotools.data.InProcessLockingManager$1.write(InProcessLockingManager.java:335)
        at 
org.geotools.data.store.ContentFeatureStore.addFeatures(ContentFeatureStore.java:255)
        at 
org.geoserver.feature.retype.RetypingFeatureStore.addFeatures(RetypingFeatureStore.java:87)
        at 
org.vfny.geoserver.global.GeoServerFeatureStore.addFeatures(GeoServerFeatureStore.java:81)
        at 
org.geoserver.wfs.InsertElementHandler.execute(InsertElementHandler.java:173)


Fail Transaction request:

<wfs:Transaction xmlns:wfs="http://www.opengis.net/wfs"; service="WFS" 
version="1.1.0" xsi:schemaLocation="http://www.opengis.net/wfs 
http://schemas.opengis.net/wfs/1.1.0/wfs.xsd http://192.168.3.15/ikt 
http://192.168.3.15/geoserver/wfs?request=DescribeFeatureType&version=1.1.0&typename=IKT:UnidadesGestion";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
<wfs:Insert>
<feature:UnidadesGestion xmlns:feature="http://192.168.3.15/ikt"; 
fid="RecintosSigpac.fid--21720f22_131f62e83e7_5838">
<feature:GEOMETRY>
<gml:Polygon xmlns:gml="http://www.opengis.net/gml"; srsName="EPSG:23030">
<gml:exterior>
<gml:LinearRing>
<gml:posList>...</gml:posList>
</gml:LinearRing>
</gml:exterior>
</gml:Polygon>
</feature:GEOMETRY>
<feature:CODEX>010130050002</feature:CODEX>
<feature:UG>17</feature:UG>
<feature:TOPONIMO>UG_17</feature:TOPONIMO>
<feature:VERSION>1</feature:VERSION>
<feature:PROVINCIA>1</feature:PROVINCIA>
<feature:MUNICIPIO>13</feature:MUNICIPIO>
<feature:POLIGONO>3</feature:POLIGONO>
<feature:PARCELA>504</feature:PARCELA>
<feature:RECINTO>1</feature:RECINTO>
<feature:AGREGADO>0</feature:AGREGADO>
<feature:ZONA>0</feature:ZONA>
</feature:UnidadesGestion>
</wfs:Insert>
</wfs:Transaction>

Success Transaction request

<wfs:Transaction xmlns:wfs="http://www.opengis.net/wfs";
service="WFS" version="1.1.0"
xsi:schemaLocation="http://www.opengis.net/wfs
http://schemas.opengis.net/wfs/1.1.0/wfs.xsd
http://192.168.3.15/ikt
http://192.168.3.15/geoserver/wfs?request=DescribeFeatureType&version=1.1.0&typename=IKT:prueba_wfst";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
<wfs:Insert>
<feature:prueba_wfst xmlns:feature="http://192.168.3.15/ikt"; 
fid="RecintosSigpac.fid--21720f22_131f62e83e7_5a75">
<feature:GEOMETRY>
<gml:Polygon xmlns:gml="http://www.opengis.net/gml"; srsName="EPSG:23030">
<gml:exterior>
<gml:LinearRing>
<gml:posList>...</gml:posList>
</gml:LinearRing>
</gml:exterior>
</gml:Polygon>
</feature:GEOMETRY>
<feature:GID>3630175</feature:GID>
<feature:PROVINCIA>1</feature:PROVINCIA>
<feature:MUNICIPIO>59</feature:MUNICIPIO>
<feature:POLIGONO>215</feature:POLIGONO>
<feature:PARCELA>153</feature:PARCELA>
<feature:RECINTO>1</feature:RECINTO>
<feature:ELEGIBILID>0</feature:ELEGIBILID>
<feature:COEF_REGAD>0</feature:COEF_REGAD>
<feature:COEF_PASTO>100</feature:COEF_PASTO>
<feature:USO_SIGPAC>TA</feature:USO_SIGPAC>
<feature:USO_2003>TA</feature:USO_2003>
<feature:DN_OID>966</feature:DN_OID>
<feature:DN_SURFACE>78547.42855</feature:DN_SURFACE>
<feature:DN_PERIMET>2516.2231</feature:DN_PERIMET>
<feature:PENDIENTE>89</feature:PENDIENTE>
<feature:FECHA_INI>2011-06-06</feature:FECHA_INI>
</feature:prueba_wfst>
</wfs:Insert>
</wfs:Transaction>

Do you see any difference between the two transactions??

I think I'm missing something in the table configuration but I'm not sure. Any 
ideas??

GeoServer instance 2.0.2
DB: Oracle Spatial
OS: Window Server 2003

Thanks in advance.

Regards,

Un saludo,

··················································································

David Alda Fernández de Lezea
Lurralde eta Biodibertsitate Saila / Dpto. de Territorio y Biodiversidad

IKT
Granja Modelo s/n · 01192 · Arkaute (Araba)

··················································································
Tlfnos.: 945-00-32-95                         Fax: 945-00.32.90
··················································································
email: [email protected]                                web: www.ikt.es
··················································································

------------------------------------------------------------------------------
EMC VNX: the world's simplest storage, starting under $10K
The only unified storage solution that offers unified management
Up to 160% more powerful than alternatives and 25% more efficient.
Guaranteed. http://p.sf.net/sfu/emc-vnx-dev2dev
_______________________________________________
Geoserver-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-users

------------------------------------------------------------------------------
EMC VNX: the world's simplest storage, starting under $10K
The only unified storage solution that offers unified management 
Up to 160% more powerful than alternatives and 25% more efficient. 
Guaranteed. http://p.sf.net/sfu/emc-vnx-dev2dev
_______________________________________________
Geoserver-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-users

Reply via email to