04-11-2018 05:33 AM - edited 04-11-2018 06:05 AM
Hi,
I have postgres table rzgw2, that is configured in GMSC2016. In postgres table is situated in public schema.
I cannot show this table on the map. Whan can be wrong?
On GMSC log thw following error appears:
2018-04-11 15:04:05 SEVERE: The following tile can't be loaded because of an exception! [OnlineFeatureTile[feature=13, identifier=000070, bounds=[-666.64,779999.98,1030666.64,130000.02]]] --> [pool-14-thread-8] com.intergraph.web.core.data.loader.ParallelFeatureLoader$1.call
java.io.IOException: The MapService returns the following status code: 500 The MapService returns an Internal Server Error.
at com.intergraph.web.core.data.loader.LiveDataLoader.handleHttpResponse(LiveDataLoader.java:266)
at com.intergraph.web.core.data.loader.LiveDataLoader.download(LiveDataLoader.java:202)
at com.intergraph.web.core.data.loader.LiveDataLoader.processTile(LiveDataLoader.java:116)
at com.intergraph.web.core.data.loader.ParallelFeatureLoader$1.call(ParallelFeatureLoader.java:63)
at com.intergraph.web.core.data.loader.ParallelFeatureLoader$1.call(ParallelFeatureLoader.java:57)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
2018-04-11 15:04:19 SEVERE: The following tile can't be loaded because of an exception! [OnlineFeatureTile[feature=13, identifier=000071, bounds=[-71688.19,779999.93,1101688.19,130000.07]]] --> [pool-14-thread-2] com.intergraph.web.core.data.loader.ParallelFeatureLoader$1.call
java.io.IOException: The MapService returns the following status code: 500 The MapService returns an Internal Server Error.
at com.intergraph.web.core.data.loader.LiveDataLoader.handleHttpResponse(LiveDataLoader.java:266)
at com.intergraph.web.core.data.loader.LiveDataLoader.download(LiveDataLoader.java:202)
at com.intergraph.web.core.data.loader.LiveDataLoader.processTile(LiveDataLoader.java:116)
at com.intergraph.web.core.data.loader.ParallelFeatureLoader$1.call(ParallelFeatureLoader.java:63)
at com.intergraph.web.core.data.loader.ParallelFeatureLoader$1.call(ParallelFeatureLoader.java:57)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Solved! Go to Solution.
04-11-2018 07:15 AM
I've found that it's data problem. Probably it's about geometry_spa column. Content of this column seems to be need to correctly display records. But what can I do in situation, when my database records have geometry_spa column empty? How can I fill it?
04-11-2018 07:21 AM
It looks like your geometry field is also empty. So there are no geometries in that table.
Pavel
04-11-2018 08:13 AM - edited 04-12-2018 01:21 AM
I can see data in map view in GeoMedia, so geometry data is stored somehow. Probably pgadmin4 presents bytea type fields content as null, even if it is not null.
04-16-2018 03:58 AM
Ok, the reason was, that some records in postgres database are GeometryCollection type.
When I delete those two records, all works correctly.
Is GMSC2016 support GeometryCollection in Postgis2016?
04-16-2018 04:26 AM
SmartClient cannot display multiple geometries if the geometry field type is GEOMETRY or other generic geometry type. This is because most of the PostGIS geometry functions do not operate on such geometries. However, you can view multiple geometries if you define a view forcing the geometry type to be MULTIPOINT, MULTILINESTRING or MULTIPOLYGON. You can do that for example as:
CREATE VIEW mylineview AS SELECT linetest1.id,
linetest1.name,
linetest1.geometry,
st_force_2d(st_collectionextract(linetest1.geometry_spa, 2)) AS geometry_spa
FROM linetest1;
this is for linear features. It will be similar for point (type 1) and area (type 3). After creating such a view, it can be displayed in SmartClient.
Pavel
04-16-2018 06:37 AM
That's good idea.
Thanks!