[Geoserver-devel] LayerInfo/LayerInfoImpl missmatch

Hi,

I am getting an exception at geoserver startup leading to a wipe out of all the layers. The exception is:
java.lang.IllegalArgumentException: argument type mismatch
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:597)
at org.geoserver.catalog.impl.CatalogImpl.resolveCollections(CatalogImpl.java:1548)

This is because of the mismatch in LayerInfo.getMetadata():Map<String, Serializable> and LayerInfoImpl.getMetadata():MetadataMap

So CatalogImpl.resolveCollections tries to assign an empty HashMap instead of a MetadataMap.

Ok to change the declaration of LayerInfo.getMetadata and commit?

(and know why this didn't come up before?)

Cheers,
Gabriel.

--
Gabriel Roldan
OpenGeo - http://opengeo.org
Expert service straight from the developers.

Oops, this has to do with the commits for GEOS-3313. I ran into the same issue with LayerGroupInfo, missed it for LayerInfo though. But yeah, changing the declaration will do the trick. Fix commited.

-Justin

Gabriel Roldan wrote:

Hi,

I am getting an exception at geoserver startup leading to a wipe out of all the layers. The exception is:
java.lang.IllegalArgumentException: argument type mismatch
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:597)
at org.geoserver.catalog.impl.CatalogImpl.resolveCollections(CatalogImpl.java:1548)

This is because of the mismatch in LayerInfo.getMetadata():Map<String, Serializable> and LayerInfoImpl.getMetadata():MetadataMap

So CatalogImpl.resolveCollections tries to assign an empty HashMap instead of a MetadataMap.

Ok to change the declaration of LayerInfo.getMetadata and commit?

(and know why this didn't come up before?)

Cheers,
Gabriel.

--
Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.