Hi List!

I have some datas in a PostgreSQL database. I recover datas trough geoserver
via a vector layer with WFS protocol like it seems to be recommended.

I can easily (after some efforts :D ) add or delete somes features but I am
unable to update a feature...

A xml sample that is posted to my geoserver :

<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";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
        <wfs:Update typeName="topp:lumin">
                <wfs:Property>
                        <wfs:Name>the_geom</wfs:Name>
                        <wfs:Value>
                                <gml:Point 
srsName="http://www.opengis.net/gml/srs/epsg.xml#EPSG:21781";>
                                        <gml:pos>538698.2299984342 
182479.15984712465</gml:pos>
                                </gml:Point>
                        </wfs:Value>
                </wfs:Property>
                        <wfs:Name>puissance</wfs:Name>
                        <wfs:Value>125</wfs:Value>
                </wfs:Property>
                <wfs:Property>
                        <wfs:Name>rue</wfs:Name>
                        <wfs:Value>COIN DE TERRE, Rue du</wfs:Value>
                </wfs:Property>
                <wfs:Property>
                        <wfs:Name>num_apic</wfs:Name>
                        <wfs:Value>3974</wfs:Value>
                </wfs:Property>
                <wfs:Property>
                        <wfs:Name>id_comb</wfs:Name>
                        <wfs:Value>48/6</wfs:Value>
                </wfs:Property>
                <wfs:Property>
                        <wfs:Name>id_apic</wfs:Name>
                        <wfs:Value>141776</wfs:Value>
                </wfs:Property>
                <ogc:Filter xmlns:ogc="http://www.opengis.net/ogc";>
                        <ogc:FeatureId fid="lumin.1233"/>
                </ogc:Filter>
        </wfs:Update>
</wfs:Transaction>

And the response (I put geoserver in verbose mode) :

<?xml version="1.0" encoding="UTF-8"?>
<ows:ExceptionReport version="1.0.0"
  xsi:schemaLocation="http://www.opengis.net/ows
http://localhost:8080/geoserver/schemas/ows/1.0.0/owsExceptionReport.xsd";
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
xmlns:ows="http://www.opengis.net/ows";>
  <ows:Exception exceptionCode="InvalidParameterValue">
    <ows:ExceptionText>update error</ows:ExceptionText>
    <ows:ExceptionText>Details:</ows:ExceptionText>
    <ows:ExceptionText>org.geoserver.wfs.WFSException: update error
        at
org.geoserver.wfs.response.v1_1_0.TransactionResponse.write(TransactionResponse.java:49)
        at org.geoserver.ows.Dispatcher.response(Dispatcher.java:712)
        at 
org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:216)
        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:727)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
        at 
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
        at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)
        at
org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
        at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
        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.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
        at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
        at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
        at
org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:163)
        at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
        at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
        at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
        at 
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
        at
org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
        at 
org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
        at 
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
        at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
        at
org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
        at
org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
        at 
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
        at org.mortbay.jetty.Server.handle(Server.java:324)
        at 
org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
        at
org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:842)
        at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
        at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
        at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
        at
org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
        at
org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
</ows:ExceptionText>
  </ows:Exception>
</ows:ExceptionReport>


My wfs declaration :
                                var wfsLayer  = new OpenLayers.Layer.Vector( 
'lumin', {
                                                        strategies: [new 
OpenLayers.Strategy.BBOX(),
saveStrategy ],
                                                        projection: new
OpenLayers.Projection("EPSG:21781"),
                                                        protocol: new 
OpenLayers.Protocol.WFS({
                                                                version: 
'1.1.0',
                                                                srsName: 
'EPSG:21781',
                                                                url:
'http://localhost:8080/geoserver/wfs?strict=true',
                                                                featureNS : 
'http://www.openplans.org/topp',
                                                                featureType: 
'lumin',
                                                                geometryName: 
'the_geom',
                                                                
extractAttribute:true})
                                                                });


And when I modify some feature attributes, I am doing this:
modifiedFeature.state = OpenLayers.State.UPDATE;

Am I doing something wrong? 
-- 
View this message in context: 
http://n2.nabble.com/OL%2C-WFST-T%2C-Geoserver-%7C-Problem-on-update-tp3397344p3397344.html
Sent from the OpenLayers Users mailing list archive at Nabble.com.
_______________________________________________
Users mailing list
[email protected]
http://openlayers.org/mailman/listinfo/users

Reply via email to