Interesting, well that may be your issue? 4326 is a two-dimensional SRS, please make use of a three dimensional SRS.
What does the SRID number say in PostGIS? It should be baked into each geometry (and should not work if if set to 4326). I guess it could be that you have a two dimensional XY geometry, with two measures depends how you have encoded it. -= Jody On Tue, Dec 6, 2022 at 12:35 AM Hans Yperman <hans.yper...@vliz.be> wrote: > Thanks for your help, Jody > > > > The data is indeed XYZM, and the srid is 4326. > > > > > > For reference: This is the full constraint on the column: > > constraint enforce_dims_the_geom > check (st_ndims(the_geom) = 4) > constraint enforce_geotype_the_geom > check ((geometrytype(the_geom) = 'MULTIPOLYGON'::text) OR (the_geom IS > NULL)) > constraint enforce_srid_the_geom > check (st_srid(the_geom) = 4326) > > > > This is a small fragment of the data (note I get the crash even on an > empty table): > > > > SELECT *st_astext*(the_geom) FROM the_relevant_table LIMIT 1 > > > > MULTIPOLYGON ZM ((( .. numbers ..))) > > > > Hans > > > > > > *Hans Yperman* > > Department IT > > > <https://www.google.com/maps/search/Jacobsenstraat+1+%0D%0A+8400+Oostende,+Belgi%C3%AB?entry=gmail&source=g> > > *Vlaams Instituut voor de Zee vzw* > > InnovOcean Campus, Jacobsenstraat 1 > <https://www.google.com/maps/search/Jacobsenstraat+1+%0D%0A+8400+Oostende,+Belgi%C3%AB?entry=gmail&source=g> > > 8400 Oostende, België > <https://www.google.com/maps/search/Jacobsenstraat+1+%0D%0A+8400+Oostende,+Belgi%C3%AB?entry=gmail&source=g> > > > > ☎+32 (0) 59 33 61 13 > > 📧 hans.yper...@vliz.be > > *www.vliz.be* <http://www.vliz.be> > > > > > > *From:* Jody Garnett <jody.garn...@gmail.com> > *Sent:* maandag 5 december 2022 14:45 > *To:* Hans Yperman <hans.yper...@vliz.be> > *Cc:* Geoserver-users <geoserver-users@lists.sourceforge.net> > *Subject:* Re: [Geoserver-users] Output dimension must be 2 or 3 > > > > We added support for dimensions and measures in that timeframe. It looks > like your geometry is setup with 4 dimensions - which is not supported. > > > > What is your coordinate reference system or SRID? > > > > Is your data XYZM? > > > > Jody > > > > On Mon, Dec 5, 2022 at 4:00 AM Hans Yperman <hans.yper...@vliz.be> wrote: > > Hello everybody, > > > > after upgrading from geoserver 2.11 to geoserver 2.22, we have a few > postgis layers that refuse to render in the preview. > > > > Here is a simplified example, in postgis: > > > > create table testhy( > geometry geometry constraint enforce_dims_the_geom check (*st_ndims* > (geometry) = 4) > ); > > > > We get this exception: > > Caused by: java.lang.IllegalArgumentException: Output dimension must be 2 > or 3 > > at org.locationtech.jts.io.WKBWriter.<init>(WKBWriter.java:291) > > at org.locationtech.jts.io.WKBWriter.<init>(WKBWriter.java:270) > > at org.locationtech.jts.io.WKBWriter.<init>(WKBWriter.java:240) > > at > org.geotools.data.postgis.PostGISPSDialect.setGeometryValue(PostGISPSDialect.java:253) > > at > org.geotools.jdbc.JDBCDataStore.setPreparedFilterValues(JDBCDataStore.java:3810) > > at > org.geotools.jdbc.JDBCDataStore.selectSQLPS(JDBCDataStore.java:3728) > > at > org.geotools.jdbc.JDBCFeatureSource.getReaderInternal(JDBCFeatureSource.java:609) > > > > I browsed the code. geoserver gets dimension 4 based on a variant of this > query (PostGISDialect.java): > > > > *SELECT * FROM GEOMETRY_COLUMNS WHERE coord_dimension not in (2,3);* > > > > but the query generated by geoserver to fetch the data is : > > SELECT ST_AsBinary(ST_Force2D("geometry")) as "geometry" FROM > "public"."testhy" WHERE […] > > > > Note the ST_Force2D that removes the Z and M dimension, so there are only > 2 dimensions, not 4. > > > > > > > > > > *Hans Yperman* > > Department IT > > > <https://www.google.com/maps/search/Jacobsenstraat+1+%0D%0A+%0D%0A+8400+Oostende,+Belgi%C3%AB?entry=gmail&source=g> > <https://www.google.com/maps/search/Jacobsenstraat+1+%0D%0A+%0D%0A+8400+Oostende,+Belgi%C3%AB?entry=gmail&source=g> > > *Vlaams Instituut voor de Zee vzw* > > InnovOcean Campus, Jacobsenstraat 1 > <https://www.google.com/maps/search/Jacobsenstraat+1+%0D%0A+8400+Oostende,+Belgi%C3%AB?entry=gmail&source=g> > > 8400 Oostende, België > <https://www.google.com/maps/search/Jacobsenstraat+1+%0D%0A+8400+Oostende,+Belgi%C3%AB?entry=gmail&source=g> > > > > ☎+32 (0) 59 33 61 13 > > 📧 hans.yper...@vliz.be > > *www.vliz.be* <http://www.vliz.be> > > > > > > _______________________________________________ > Geoserver-users mailing list > > Please make sure you read the following two resources before posting to > this list: > - Earning your support instead of buying it, but Ian Turton: > http://www.ianturton.com/talks/foss4g.html#/ > - The GeoServer user list posting guidelines: > http://geoserver.org/comm/userlist-guidelines.html > > If you want to request a feature or an improvement, also see this: > https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer > > > Geoserver-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/geoserver-users > > -- > > -- > > Jody Garnett > -- -- Jody Garnett
_______________________________________________ Geoserver-users mailing list Please make sure you read the following two resources before posting to this list: - Earning your support instead of buying it, but Ian Turton: http://www.ianturton.com/talks/foss4g.html#/ - The GeoServer user list posting guidelines: http://geoserver.org/comm/userlist-guidelines.html If you want to request a feature or an improvement, also see this: https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer Geoserver-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geoserver-users