[Geoserver-devel] Latest War

Hey Guys,

We have the "latest" war available at http://vwfs.refractions.net/geoserver.war
Hopefully it is all up-to-date (should be).. feel free to check it out :slight_smile:

Richard

Hi,

Richard Gould a écrit:

We have the "latest" war available at http://vwfs.refractions.net/geoserver.war
Hopefully it is all up-to-date (should be).. feel free to check it out :slight_smile:

I did not evaluate *this* war but I've made my own one with yersterday night's (CET) CVS version. Since then, the only changes I have noticed are related to exceptions messages (probably as a result of http://jira.codehaus.org/secure/ViewIssue.jspa?key=GEOS-160 :wink: so I assume that my evaluation is accurate against your war.

Below you will find some stack traces that were thrown on the different tests. They are totally unordered since I did not have time to make further investigations. Notice also that the stacks traces mentionned in the thread "Test on latest version" (2004/04/19) are still accurate.

Demo test :

transactionBuildingsDelete.xml :

UNCAUGHT EXCEPTION: java.util.NoSuchElementException: Could not locate FeatureTypeConfig 'null' at org.vfny.geoserver.global.Data.getFeatureTypeInfo(Data.java:1004) at org.vfny.geoserver.responses.wfs.TransactionResponse.execute(TransactionResponse.java:228) at org.vfny.geoserver.responses.wfs.TransactionResponse.execute(TransactionResponse.java:104) at org.vfny.geoserver.servlets.AbstractService.doService(AbstractService.java:365) at org.vfny.geoserver.servlets.AbstractService.doPost(AbstractService.java:296) at org.vfny.geoserver.servlets.wfs.WfsDispatcher.doResponse(WfsDispatcher.java:220) at org.vfny.geoserver.servlets.wfs.WfsDispatcher.doPost(WfsDispatcher.java:110) at
...

transactionBuildingsInsertInvalid.xml

org.vfny.geoserver.responses.wfs.WfsTransactionException: fid-15b758:fc13c3a464:-7ffa failed test buildings label check: LABEL is Empty (buildings should be labeled) at org.vfny.geoserver.responses.wfs.TransactionResponse.featureValidation(TransactionResponse.java:581) at org.vfny.geoserver.responses.wfs.TransactionResponse.execute(TransactionResponse.java:416) at org.vfny.geoserver.responses.wfs.TransactionResponse.execute(TransactionResponse.java:104) at org.vfny.geoserver.servlets.AbstractService.doService(AbstractService.java:365) at org.vfny.geoserver.servlets.AbstractService.doPost(AbstractService.java:296) at org.vfny.geoserver.servlets.wfs.WfsDispatcher.doResponse(WfsDispatcher.java:220) at org.vfny.geoserver.servlets.wfs.WfsDispatcher.doPost(WfsDispatcher.java:110) at
...

transactionBuildingsUpdate.xml

org.vfny.geoserver.responses.wfs.WfsTransactionException: buildings.1063 failed test buildings label check: LABEL is Empty (buildings should be labeled) at org.vfny.geoserver.responses.wfs.TransactionResponse.featureValidation(TransactionResponse.java:581) at org.vfny.geoserver.responses.wfs.TransactionResponse.execute(TransactionResponse.java:493) at org.vfny.geoserver.responses.wfs.TransactionResponse.execute(TransactionResponse.java:104) at org.vfny.geoserver.servlets.AbstractService.doService(AbstractService.java:365) at org.vfny.geoserver.servlets.AbstractService.doPost(AbstractService.java:296) at org.vfny.geoserver.servlets.wfs.WfsDispatcher.doResponse(WfsDispatcher.java:220) at org.vfny.geoserver.servlets.wfs.WfsDispatcher.doPost(WfsDispatcher.java:110) at
...

transactionLakeUpdate.xml

null lakes 1: org.geotools.data.DataSourceException: Could not update feature lakes.1 with the_geom=POLYGON ((566063.46 5246440.74, 566063.77 5246410.26, 566026.15 5246393.41, 566019.45 5246393.34, 566015.07 5246404.27, 566016.16 5246416.47, 566025.22 5246424.49, 566063.46 5246440.74)) at org.geotools.data.AbstractFeatureStore.modifyFeatures(AbstractFeatureStore.java:139) at org.geotools.data.AbstractFeatureStore.modifyFeatures(AbstractFeatureStore.java:84) at org.vfny.geoserver.global.GeoServerFeatureStore.modifyFeatures(GeoServerFeatureStore.java:122) at org.vfny.geoserver.responses.wfs.TransactionResponse.execute(TransactionResponse.java:469) at org.vfny.geoserver.responses.wfs.TransactionResponse.execute(TransactionResponse.java:104) at org.vfny.geoserver.servlets.AbstractService.doService(AbstractService.java:365) at org.vfny.geoserver.servlets.AbstractService.doPost(AbstractService.java:296) at org.vfny.geoserver.servlets.wfs.WfsDispatcher.doResponse(WfsDispatcher.java:220) at org.vfny.geoserver.servlets.wfs.WfsDispatcher.doPost(WfsDispatcher.java:110) at
...
Caused by: org.geotools.feature.IllegalAttributeException: expected com.vividsolutions.jts.geom.MultiPolygon , but got com.vividsolutions.jts.geom.Polygon at org.geotools.feature.DefaultFeature.setAttribute(DefaultFeature.java:203) at org.geotools.feature.DefaultFeature.setAttribute(DefaultFeature.java:255) at org.geotools.data.AbstractFeatureStore.modifyFeatures(AbstractFeatureStore.java:137) ... 39 more Caused by: java.lang.IllegalArgumentException: com.vividsolutions.jts.geom.Polygon is not an acceptable class for the_geom as it is not assignable from class com.vividsolutions.jts.geom.MultiPolygon at org.geotools.feature.DefaultAttributeType.validate(DefaultAttributeType.java:344) at org.geotools.feature.DefaultFeature.setAttribute(DefaultFeature.java:200) ... 41 more

transactionStreamsInsert.xml

UNCAUGHT EXCEPTION: java.lang.RuntimeException: problem creating feature at org.vfny.geoserver.requests.wfs.TransactionFeatureHandler.endElement(TransactionFeatureHandler.java:287) at org.geotools.gml.GMLFilterGeometry.endElement(GMLFilterGeometry.java:203) at org.geotools.gml.GMLFilterDocument.endElement(GMLFilterDocument.java:285) at org.xml.sax.helpers.ParserAdapter.endElement(ParserAdapter.java:609) at org.apache.xerces.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:577) at org.apache.xerces.impl.XMLNamespaceBinder.endElement(XMLNamespaceBinder.java:647) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1008) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1469) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:329) at org.apache.xerces.parsers.DTDConfiguration.parse(DTDConfiguration.java:525) at org.apache.xerces.parsers.DTDConfiguration.parse(DTDConfiguration.java:581) at org.apache.xerces.parsers.XMLParser.parse(XMLParser.java:152) at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1175) at org.xml.sax.helpers.ParserAdapter.parse(ParserAdapter.java:431) at org.vfny.geoserver.requests.readers.wfs.TransactionXmlReader.read(TransactionXmlReader.java:66) at org.vfny.geoserver.servlets.AbstractService.doPost(AbstractService.java:284) at org.vfny.geoserver.servlets.wfs.WfsDispatcher.doResponse(WfsDispatcher.java:220) at org.vfny.geoserver.servlets.wfs.WfsDispatcher.doPost(WfsDispatcher.java:110) at
...
Caused by: org.geotools.feature.IllegalAttributeException: expected com.vividsolutions.jts.geom.MultiLineString , but got com.vividsolutions.jts.geom.LineString at org.geotools.feature.DefaultFeature.setAttribute(DefaultFeature.java:203) at org.geotools.feature.DefaultFeature.setAttributes(DefaultFeature.java:232) at org.geotools.feature.DefaultFeature.<init>(DefaultFeature.java:82) at org.geotools.feature.DefaultFeatureType.create(DefaultFeatureType.java:140) at org.geotools.feature.DefaultFeatureType.create(DefaultFeatureType.java:123) at org.vfny.geoserver.requests.wfs.TransactionFeatureHandler.endElement(TransactionFeatureHandler.java:277) ... 48 more Caused by: java.lang.IllegalArgumentException: com.vividsolutions.jts.geom.LineString is not an acceptable class for the_geom as it is not assignable from class com.vividsolutions.jts.geom.MultiLineString at org.geotools.feature.DefaultAttributeType.validate(DefaultAttributeType.java:344) at org.geotools.feature.DefaultFeature.setAttribute(DefaultFeature.java:200) ... 53 more

CiteShapefiles test :

Well... this one hasn't been fully tested. However, here is a preliminary list of problems :

2004-04-22 22:09:27 ApplicationDispatcher[/geoserver] "Servlet.service()" pour la servlet jsp a lancé une exception
org.apache.jasper.JasperException: Exception accessing property wfsGood for bean GeoServer.ApplicationState: java.lang.NullPointerException
     at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:248)
     at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
     at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         ....
----- Root Cause -----
javax.servlet.ServletException: Exception accessing property wfsGood for bean GeoServer.ApplicationState: java.lang.NullPointerException
     at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:530)
     at org.apache.jsp.status_jsp._jspService(status_jsp.java:75)
     at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

2004-04-22 22:09:45 ApplicationDispatcher[/geoserver] "Servlet.service()" pour la servlet jsp a lancé une exception
org.apache.jasper.JasperException: Exception thrown by getter for property dataStoreErrorKeys of bean GeoServer.ApplicationState
     at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:248)
     at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
     at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         ....
----- Root Cause -----
javax.servlet.ServletException: Exception thrown by getter for property dataStoreErrorKeys of bean GeoServer.ApplicationState
     at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:530)
     at org.apache.jsp.Configuration_jsp._jspService(Configuration_jsp.java:176)
     at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

2004-04-22 22:09:51 ApplicationDispatcher[/geoserver] "Servlet.service()" pour la servlet jsp a lancé une exception
org.apache.jasper.JasperException: Exception thrown by getter for property nameSpaceErrorKeys of bean GeoServer.ApplicationState
     at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:248)
     at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
     at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         ....
----- Root Cause -----
javax.servlet.ServletException: Exception thrown by getter for property nameSpaceErrorKeys of bean GeoServer.ApplicationState
     at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:530)
     at org.apache.jsp.WFSConfigMenu_jsp._jspService(WFSConfigMenu_jsp.java:146)
     at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

2004-04-22 22:10:10 ApplicationDispatcher[/geoserver] "Servlet.service()" pour la servlet jsp a lancé une exception
org.apache.jasper.JasperException: Property namespaces returned a null value
     at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:248)
     at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
     at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         ....
----- Root Cause -----
javax.servlet.ServletException: Property namespaces returned a null value
     at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:530)
     at org.apache.jsp.Select_jsp._jspService(Select_jsp.java:73)
     at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

I'll try to investigate further in the day.

Hope this helps,

Cheers,

--
Pierrick Brihaye, informaticien
Service régional de l'Inventaire
DRAC Bretagne
mailto:pierrick.brihaye@anonymised.com
+33 (0)2 99 29 67 78

Quoting Pierrick Brihaye <pierrick.brihaye@anonymised.com>:

I did not evaluate *this* war but I've made my own one with yersterday
night's (CET) CVS version. Since then, the only changes I have noticed
are related to exceptions messages (probably as a result of
http://jira.codehaus.org/secure/ViewIssue.jspa?key=GEOS-160 :wink: so I
assume that my evaluation is accurate against your war.

Yesterday night we were in the midst of debugging TransactionResponse. Against a
gt2-validation.jar that had not been committed to cvs. SF has been so slow
lately that were emailing jars back and forth. The bugs we were working on
resulted in a similar stack trace to the one you posted (i & j variables were
being mixed up in side nested for loops).

Translation these bugs were not in Jira since we were finding so many we did not
bother herding them through Jira. TransactionResponse & validation processor
has recieved an extensive makeover; and we have not had a chance to run cite
tests since this work.

The jars are commited now however. If you are rolling your war own you may also
tru confDemo as an alternative to confUserBasic.

Jody.

Hi again Pierrick:

The more I read your logs the more confused I am: It seems you war was build
with confDemo. And that some of the insert statements are wrong (trying to
insert a Polygon when the dataset expects a multiPolygon).

I am going to be busy for the next couple of days, but i will try and have a
look into these stack traces for you.

Jody

Hi again,

Pierrick Brihaye a écrit:

UNCAUGHT EXCEPTION: java.util.NoSuchElementException: Could not locate FeatureTypeConfig 'null' at org.vfny.geoserver.global.Data.getFeatureTypeInfo(Data.java:1004) at
BTW :

for( Iterator i=featureTypes.values().iterator(); i.hasNext();){
   FeatureTypeInfo fto = (FeatureTypeInfo) i.next();
   if( name != null && name.equals( fto.getName() )){
     found = fto;
   }
}
if( found != null ) return found;

Could be rewritten as :

for( Iterator i=featureTypes.values().iterator(); i.hasNext();){
   FeatureTypeInfo fto = (FeatureTypeInfo) i.next();
   if( name != null && name.equals( fto.getName() )){
     found = fto;
     if( found != null ) return found;
   }
}

Is something valuable is found, we should return ASAP and exit from the iteration.

Very minor improvement however :slight_smile:

Cheers,

--
Pierrick Brihaye, informaticien
Service régional de l'Inventaire
DRAC Bretagne
mailto:pierrick.brihaye@anonymised.com
+33 (0)2 99 29 67 78

Hi again,

jgarnett@anonymised.com a écrit:

> The more I read your logs the more confused I am: It seems you war was build
> with confDemo.

That's right. All the non-PostGIS demoes have been tested.

> I am going to be busy for the next couple of days, but i will try and have a
> look into these stack traces for you.

And I'll try for you :slight_smile:

Cheers,

--
Pierrick Brihaye, informaticien
Service régional de l'Inventaire
DRAC Bretagne
mailto:pierrick.brihaye@anonymised.com
+33 (0)2 99 29 67 78

Hi all,

Richard Gould a écrit:

Hopefully it is all up-to-date (should be).. feel free to check it out :slight_smile:

This time, a test on the "official" war :wink:

I confirm that the stacks traces mentionned in the thread "Test on latest version" (2004/04/19) are still accurate.

Now a few GUI issues :

On welcome.do, we have :

getCapabilities
TestWfsPost

Rather than TestWfsPost, I'd prefer something like "demo". The like for the WMS.

Of course, the "demo" entry in the menu *could* become redundant.

On demo.do :

It it possible to have some Javascript in the request combo that would do the actual "Modify" button's job ? I find this double interaction process a little difficult.

Also, I understand that there are POST request as well as GET requests (the WMS-related ones for example). The latter requests are still processed by the wfs/TestWfsPost context. Isn't it somewhat misleading ? One would certainly expect wms/TestWmsGet or similar, for example wms/Test(Get)...

I get this exception with all the *.xml demoes :

java.lang.IllegalStateException: "getOutputStream()" a déjà été appelé pour cette réponse
  at org.apache.coyote.tomcat4.CoyoteResponse.getWriter(CoyoteResponse.java:614)
  at org.apache.coyote.tomcat4.CoyoteResponseFacade.getWriter(CoyoteResponseFacade.java:173)
  at org.vfny.geoserver.servlets.wfs.TestWfsPost.processRequest(TestWfsPost.java:231)
  at org.vfny.geoserver.servlets.wfs.TestWfsPost.doPost(TestWfsPost.java:72)

(in english : has already been called for this response").

What's wrong ? Can you reproduce that ?

I'm still reluctant with the "status bar" at the *left* side (I'm used to read from left to right :slight_smile: and I am more reluctant when it includes buttons (i.e. permits actions ont the server). Why not put these buttons in the main gray frame ? For example, I still can't understand very well the the "suiteRun" command runs the currently selected test (i.e. IntegrityCheck) or... all the tests !?

Other things :

namespace.do, "default" button : I get a new frame related with *styles* !?
style.do, "default" button : no "*" for a default syle ?

typeSelectSubmit.do (with bc_roads) : why is the bounding box editable ? Isn't it fixed in the Shapefile itself ? Well... it's maybe a way to re(de)fine the original BBox ? In such a case, the fixed bounding box should also be mentionned.

does it make sense to have a *dedicated* page for schema manipulation ?

Well... that all for now :slight_smile:

Cheers,

--
Pierrick Brihaye, informaticien
Service régional de l'Inventaire
DRAC Bretagne
mailto:pierrick.brihaye@anonymised.com
+33 (0)2 99 29 67 78

Hi, trying to figure out how to view some tiger data I've loaded into
postgis and have hooked up to geoserver.

Just installed geoserver 1.2.0-rc1, tested that bc_roads can be rendered
out via wms, added the postgis source via the admin interface, added the
featuretype via the admin interface...

... now i don't quite see how to get to the next step - visualizing my own
data via wms...

I notice that the demo wms queries pass a 'layer name' property - in this
case 'bc_roads' - and I guess that I might need to define a layer name for
my own data source? Perhaps I need to make some kind of feature type or
something in one of the xml files?

- a

(attachments)

anselm@anonymised.com (573 Bytes)