2016-08-22 79 views
1

我可以从SpatiaLite表创建SpatiaLite图层。但是,我想创建一个基于SpatiaLite视图的图层。我从“新建层”屏幕上单击“配置新的Sql视图”。然后我可以创建sql视图。但是,在基于SpatiaLite视图创建新图层之后,我无法获得针对SpatiaLite表的运行查询。如果我去到新创建的层,我点击“编辑SQL视图”,我在已知的工作SQL此SpatiaLite DB如键入:在GeoServer中为SpatiaLite创建视图

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

我认为这个问题更适合在gis.stackexchange.com – HimBromBeere

+0

谢谢,我看了一下我在网上找到的所有信息,它看起来是GEOSERVER的SpatiaLite提供者的限制,因为它不允许创建自定义视图。 –

回答

0

我看了看所有我在网上找到的信息,它看起来是的限制用于GEOSERVER的SpatiaLite提供程序,因为它不允许在GEOSERVER中创建自定义SQL视图。

+0

你能分享一个与信息源的链接吗? – antonio

+0

随意使用谷歌并自行搜索。尝试一下,你会发现它不可能在geoserver中创建一个自定义的SpatiaLite sql视图。 –

+0

我只是建议你改善你的答案根据http://stackoverflow.com/help/how-to-answer – antonio