3dcitydb / 3dcitydb-web-map

Cesium-based 3D viewer and JavaScript API for the 3D City Database
Apache License 2.0
377 stars 125 forks source link

Direct access through WFS #14

Closed bart-simci closed 4 years ago

bart-simci commented 7 years ago

Hi there,

In order to make the 3DcityDB more dynamic in it's usage, I am trying to create a webviewer which connects directly to the WFS, in stead of the intermediate export. This way, we can query the DB dynamically, without the need of preparing an export of a certain region first.

When trying to access the WFS through openlayers, it gives me an error 500, which is probably caused by an HTTPS request being interpreted as an HTTP request.

Is there a place in the code for the WFS that forces to convert the request to HTTPS? Is there anyone who has already tried this approach of loading the WFS directly? Examples seem sparse.

yaozhihang commented 7 years ago

Hi, we (Chair of Geoinformatics at Technical University of Munich) have currently no experience with using WFS for web application. @clausnagel Do you have any idea how to resolve this issue?

clausnagel commented 7 years ago

We mostly use the WFS interface to the 3DCityDB in our web maps to select city objects based on thematic or spatial filter criteria, and to show and edit the attributes of the city objects. We do not use it to directly visualize the city objects. Since CityGML is not a graphics format in the first place, this requires parsing the WFS response and preparing the CityGML content for visualization in the client. In general, the OGC 3DPS service interface seems to be more appropriate.

At our virtualcitySYSTEMS GitHub page, we have extended OpenLayers 2 to be able to parse CityGML. Works for attribute data, but should also work for geometry properties. So you might take a look at this.

Regarding your question: No, there is no code in the WFS servlet converting HTTPS requests to HTTP. You need to configure your servlet container to support HTTPS (for Tomcat, see here). Then the WFS servlet should also work correctly with requests sent through HTTPS.

Hope this helps, Claus

icemagno commented 4 years ago

Have you made it?

Son-HNguyen commented 4 years ago

Closed due to inactivity.