[Geoserver-devel] PostGIS Error

Hi ,

I am getting the following error with the current trunk build

16 Apr 10:07:50 ERROR [geoserver.ows] -
java.lang.VerifyError: class org.geotools.data.postgis.PostGISDialect overrides
final method decodeGeometryValue.(Lorg/opengis/feature/type/GeometryDescriptor;L
java/sql/ResultSet;ILcom/vividsolutions/jts/geom/GeometryFactory;Ljava/sql/Conne
ction;)Lcom/vividsolutions/jts/geom/Geometry;
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:12
4)
at org.apache.catalina.loader.WebappClassLoader.findClassInternal(Webapp
ClassLoader.java:1847)
at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoa
der.java:890)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoa
der.java:1354)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoa
der.java:1233)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at sun.misc.Service$LazyIterator.next(Service.java:271)
at org.geotools.factory.FactoryRegistry.register(FactoryRegistry.java:82
9)
at org.geotools.factory.FactoryRegistry.scanForPlugins(FactoryRegistry.j
ava:773)
at org.geotools.factory.FactoryRegistry.scanForPluginsIfNeeded(FactoryRe
gistry.java:808)
at org.geotools.factory.FactoryRegistry.getServiceProviders(FactoryRegis
try.java:195)
at org.geotools.data.DataAccessFinder.getAvailableDataStores(DataAccessF
inder.java:206)
at org.geotools.data.DataStoreFinder.getAvailableDataStores(DataStoreFin
der.java:114)
at org.vfny.geoserver.util.DataStoreUtils.aquireFactory(DataStoreUtils.j
ava:114)
at org.vfny.geoserver.util.DataStoreUtils.getDataStore(DataStoreUtils.ja
va:73)
at org.geoserver.catalog.ResourcePool.getDataStore(ResourcePool.java:220
)
at org.geoserver.catalog.ResourcePool.getFeatureType(ResourcePool.java:3
53)
at org.geoserver.catalog.impl.FeatureTypeInfoImpl.getFeatureType(Feature
TypeInfoImpl.java:78)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.geoserver.catalog.impl.ModificationProxy.invoke(ModificationProxy
.java:98)
at $Proxy7.getFeatureType(Unknown Source)
at org.geoserver.wms.kvp.GetMapKvpRequestReader.checkStyle(GetMapKvpRequ
estReader.java:942)
at org.geoserver.wms.kvp.GetMapKvpRequestReader.read(GetMapKvpRequestRea
der.java:330)
at org.geoserver.wms.kvp.GetMapKvpRequestReader.read(GetMapKvpRequestRea
der.java:70)
at org.geoserver.ows.Dispatcher.parseRequestKVP(Dispatcher.java:1092)
at org.geoserver.ows.Dispatcher.dispatch(Dispatcher.java:431)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:20
9)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(
AbstractController.java:153)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.ha
ndle(SimpleControllerHandlerAdapter.java:48)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(Dispatch
erServlet.java:875)
at org.springframework.web.servlet.DispatcherServlet.doService(Dispatche
rServlet.java:809)
at org.springframework.web.servlet.FrameworkServlet.processRequest(Frame
workServlet.java:571)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServl
et.java:501)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCha
racterEncodingFilter.java:108)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(F
ilterChainProxy.java:264)
at org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(Filt
erSecurityInterceptor.java:107)
at org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(Fi
lterSecurityInterceptor.java:72)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(F
ilterChainProxy.java:274)
at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTra
nslationFilter.java:110)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(F
ilterChainProxy.java:274)
at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFil
ter(AnonymousProcessingFilter.java:125)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(F
ilterChainProxy.java:274)
at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicPr
ocessingFilter.java:178)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(F
ilterChainProxy.java:274)
at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilte
r(HttpSessionContextIntegrationFilter.java:229)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(F
ilterChainProxy.java:274)
at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.jav
a:148)
at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.j
ava:98)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.
java:173)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:41)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
ss(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:44
7)
at java.lang.Thread.run(Thread.java:619)


Thanks and Warm Regards
Debasish Sahu

Debasish Sahu ha scritto:

Hi ,

I am getting the following error with the current trunk build

16 Apr 10:07:50 ERROR [geoserver.ows] -
java.lang.VerifyError: class org.geotools.data.postgis.PostGISDialect overrides
final method decodeGeometryValue.(Lorg/opengis/feature/type/GeometryDescriptor;L
java/sql/ResultSet;ILcom/vividsolutions/jts/geom/GeometryFactory;Ljava/sql/Conne
ction;)Lcom/vividsolutions/jts/geom/Geometry;
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:621)

This type of error simply cannot be there when one is using
a consistent build out of GeoTools trunk, you have a mixup of
older and newer jars.

Developing against GeoServer alone, especially in trunk, is
imho simply not possible, too much is changing, too quickly.
What I usually do each morning before starting to work is:
1) checkout/update both GT2 trunk and GS trunk
2) make sure I'm using java 5
3) build GT2 with "mvn clean install -Dall"
4) build GS with "mvn clean install -Pweb2"
5) eventually do a mvn eclipse:eclipse to update the
    Eclipse projects using the same extra params as the
    build

Hope this helps
Cheers
Andrea

Thanks Andrea. Let me follow your steps from now on.

On Thu, Apr 16, 2009 at 12:30 PM, Andrea Aime <aaime@anonymised.com> wrote:

Debasish Sahu ha scritto:

Hi ,

I am getting the following error with the current trunk build

16 Apr 10:07:50 ERROR [geoserver.ows] -
java.lang.VerifyError: class org.geotools.data.postgis.PostGISDialect overrides
final method decodeGeometryValue.(Lorg/opengis/feature/type/GeometryDescriptor;L
java/sql/ResultSet;ILcom/vividsolutions/jts/geom/GeometryFactory;Ljava/sql/Conne
ction;)Lcom/vividsolutions/jts/geom/Geometry;
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:621)

This type of error simply cannot be there when one is using
a consistent build out of GeoTools trunk, you have a mixup of
older and newer jars.

Developing against GeoServer alone, especially in trunk, is
imho simply not possible, too much is changing, too quickly.
What I usually do each morning before starting to work is:

  1. checkout/update both GT2 trunk and GS trunk
  2. make sure I’m using java 5
  3. build GT2 with “mvn clean install -Dall”
  4. build GS with “mvn clean install -Pweb2”
  5. eventually do a mvn eclipse:eclipse to update the
    Eclipse projects using the same extra params as the
    build

Hope this helps
Cheers
Andrea


Thanks and Warm Regards
Debasish Sahu