null pointer exception in oracle WFS insert

View: New views
6 Messages — Rating Filter:   Alert me  

null pointer exception in oracle WFS insert

by zerogeek :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I'm using the most recent version of geoserver and the oracle plugin - works great for all WMS and WFS getFeature requests.  However, when I try to do an insert I get the following error:

07 Feb 11:13:32 ERROR [geoserver.wfs] - Transaction failed
org.geoserver.wfs.WFSTransactionException: Error performing insert
        at org.geoserver.wfs.InsertElementHandler.execute(InsertElementHandler.java:191)
        at org.geoserver.wfs.Transaction.execute(Transaction.java:328)
        at org.geoserver.wfs.Transaction.transaction(Transaction.java:104)
        at org.geoserver.wfs.DefaultWebFeatureService.transaction(DefaultWebFeatureService.java:156)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:292)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:155)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:122)
        at org.geoserver.wfs.WFSLogger.invoke(WFSLogger.java:44)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144)
        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:174)
        at $Proxy0.transaction(Unknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.geoserver.security.OperationSecurityInterceptor.invoke(OperationSecurityInterceptor.java:41)
        at org.geoserver.ows.Dispatcher.execute(Dispatcher.java:495)
        at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:188)
        at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:139)
        at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:44)
        at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:684)
        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:625)
        at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:392)
        at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:357)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
        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:264)
        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:274)
        at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
        at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
        at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:178)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
        at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:229)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
        at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:148)
        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.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:544)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
        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(Thread.java:595)
Caused by: java.lang.NullPointerException
        at org.geotools.data.oracle.OracleFeatureWriter.doInsert(OracleFeatureWriter.java:183)
        at org.geotools.data.jdbc.JDBCFeatureWriter.write(JDBCFeatureWriter.java:216)
        at org.geotools.data.InProcessLockingManager$1.write(InProcessLockingManager.java:330)
        at org.geotools.data.jdbc.JDBCFeatureStore.addFeatures(JDBCFeatureStore.java:378)
        at org.vfny.geoserver.global.GeoServerFeatureStore.addFeatures(GeoServerFeatureStore.java:76)
        at org.geoserver.wfs.InsertElementHandler.execute(InsertElementHandler.java:164)
        ... 63 more
07 Feb 11:13:32 INFO [geoserver.wfs] -
Request: transaction
        handle = null
        service = WFS
        version = 1.0.0
        baseUrl = http://localhost:80/geoserver/
        lockId = null
        group = [net.opengis.wfs:insert=net.opengis.wfs.impl.InsertElementTypeImpl@b0f534 (feature: [Feature[ id=fid-5cfd3aa0_117f482d95b_-7ff6 , NAME=null , GEOMETRY=null ]], handle: null, idgen: <unset>, inputFormat: <unset>, srsName: null)]
        insert = [net.opengis.wfs.impl.InsertElementTypeImpl@b0f534 (feature: [Feature[ id=fid-5cfd3aa0_117f482d95b_-7ff6 , NAME=null , GEOMETRY=null ]], handle: null, idgen: <unset>, inputFormat: <unset>, srsName: null)]
        update = []
        delete = []
        native = []
        releaseAction = ALL

To me it appears that the geometry and name elements aren't getting populated somehow.  When I try a similar transaction against a shape file (like in the example) it works great.

Any help will be greatly appreciated.

Thanks,
Rob


Re: null pointer exception in oracle WFS insert

by aaime :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

zerogeek ha scritto:
> I'm using the most recent version of geoserver and the oracle plugin - works
> great for all WMS and WFS getFeature requests.  However, when I try to do an
> insert I get the following error:
...
> Caused by: java.lang.NullPointerException
>         at
> org.geotools.data.oracle.OracleFeatureWriter.doInsert(OracleFeatureWriter.java:183)
...

> [net.opengis.wfs:insert=net.opengis.wfs.impl.InsertElementTypeImpl@b0f534
> (feature: [Feature[ id=fid-5cfd3aa0_117f482d95b_-7ff6 , NAME=null ,
> GEOMETRY=null ]], handle: null, idgen: <unset>, inputFormat: <unset>,
> srsName: null)]
>         insert = [net.opengis.wfs.impl.InsertElementTypeImpl@b0f534
> (feature: [Feature[ id=fid-5cfd3aa0_117f482d95b_-7ff6 , NAME=null ,
> GEOMETRY=null ]], handle: null, idgen: <unset>, inputFormat: <unset>,
> srsName: null)]
>         update = []
>         delete = []
>         native = []
>         releaseAction = ALL
>
> To me it appears that the geometry and name elements aren't getting
> populated somehow.  When I try a similar transaction against a shape file
> (like in the example) it works great.
>
> Any help will be greatly appreciated.

It seems a solid bug. We'll most likely be unable to fix it for
GeoServer 1.6.0, Oracle datastore is unmantained and the final
is due out in a few days.

Anyways, if you want to see it solved, the first step it to
provide an sql script to create the same table as yours,
the WFS insert request, and put everything in our bug
tracker at jira.codehaus.org, so that we can look at it,
reproduce and hopefully fix.

Cheers
Andrea

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Geoserver-users mailing list
Geoserver-users@...
https://lists.sourceforge.net/lists/listinfo/geoserver-users

Re: null pointer exception in oracle WFS insert

by zerogeek :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thanks for the reply andrea,

Do I have any hope of this working in prior versions?  I can't be the first person who's attempted to do an WFS intsert on an oracle featureset....does anyone else have this working?

Thanks,
Rob

____________

It seems a solid bug. We'll most likely be unable to fix it for
GeoServer 1.6.0, Oracle datastore is unmantained and the final
is due out in a few days.

Anyways, if you want to see it solved, the first step it to
provide an sql script to create the same table as yours,
the WFS insert request, and put everything in our bug
tracker at jira.codehaus.org, so that we can look at it,
reproduce and hopefully fix.

Cheers
Andrea

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Geoserver-users mailing list
Geoserver-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users



Re: null pointer exception in oracle WFS insert

by aaime :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

zerogeek ha scritto:
> Thanks for the reply andrea,
>
> Do I have any hope of this working in prior versions?  

Hum, 1.6.0 is due out too soon and you still haven't provided the
information to reproduce the bug, so no, definitely not in 1.6.0.
If you provide the information needed into a jira issue there's hope
for 1.6.1 (which should be available soon).

> I can't be the first
> person who's attempted to do an WFS intsert on an oracle featureset....does
> anyone else have this working?

No one of the developers is using Oracle. I do have it on my machine
just to make some bug fixes, but I always think twice before starting
that monster (eats a ton of memory and eats my 8080 port, both very
annoying).

Cheers
Andrea

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Geoserver-users mailing list
Geoserver-users@...
https://lists.sourceforge.net/lists/listinfo/geoserver-users

Re: null pointer exception in oracle WFS insert

by zerogeek :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

This has been solved!

The fields on the insert must be in caps.  Once I did that features now are inserting just fine.

Thanks,
rob

Re: null pointer exception in oracle WFS insert

by aaime :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

zerogeek ha scritto:
> This has been solved!
>
> The fields on the insert must be in caps.  Once I did that features now are
> inserting just fine.

Ah, yes, you always have to use the attribute names as they are reported
by the feature type editor page. Afaik it's Oracle that's throwing
at us uppercase names, we cannot do anything about it

Cheers
Andrea

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Geoserver-users mailing list
Geoserver-users@...
https://lists.sourceforge.net/lists/listinfo/geoserver-users