我可以从SpatiaLite表创建SpatiaLite图层。但是,我想基于SpatiaLite视图创建一个图层。我点击"配置新的Sql View"来自" New Layer"屏幕。然后我就可以创建sql视图了。但是,在我基于SpatiaLite视图创建新图层后,我无法获取针对SpatiaLite表运行的查询。如果我进入新创建的图层,我点击"编辑sql视图",我为这个SpatiaLite数据库键入一个已知的工作sql,例如:
select * from lines
然后在属性下,我点击"刷新"它没有显示任何字段。此外,如果我点击"图层预览",选择图层并单击GML,我会收到以下错误:
error:java.lang.RuntimeException: java.io.IOException java.lang.RuntimeException: java.io.IOException java.io.IOExceptionjava.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (near "FROM": syntax error) [SQLITE_ERROR] SQL error or missing database (near "FROM": syntax error)
不知何故,它找不到sqlite表。任何帮助将不胜感激。
更新#1
我在geoserver.log文件中找到了这个:
Could not find mapping for 'GEOMETRY', ignoring the column and setting the feature type read only
答案 0 :(得分:0)
我查看了我在网上找到的所有信息,它看起来是GEOSERVER的SpatiaLite提供程序的限制,因为它不允许在GEOSERVER中创建自定义SQL视图。