Java 使用CompositeFeatureCollection的FeatureJSON
我在Maven项目中使用fromJava 使用CompositeFeatureCollection的FeatureJSON,java,json,geojson,geotools,web-feature-service,Java,Json,Geojson,Geotools,Web Feature Service,我在Maven项目中使用fromorg.geotools:gt geojson:15-SNAPSHOT依赖关系,我能够为的实例提供geojson服务,而且没有任何问题。然而,我发现自己想要为WFS提供多种功能类型,因此我从org.geotools:gt WFS:15-SNAPSHOT依赖项添加了功能,但当我尝试编写CompositeFeatureCollection时,我在writeFeatureCollection()中得到了NullPointerException由于在CompositeFe
org.geotools:gt geojson:15-SNAPSHOT
依赖关系,我能够为的实例提供geojson服务,而且没有任何问题。然而,我发现自己想要为WFS提供多种功能类型,因此我从org.geotools:gt WFS:15-SNAPSHOT
依赖项添加了功能,但当我尝试编写CompositeFeatureCollection
时,我在writeFeatureCollection()中得到了NullPointerException
由于在CompositeFeatureCollection
中实现了getSchema()
返回null
你们中有谁知道GeoTools的这两个类(FeatureJSON
和CompositeFeatureCollection
)是否被设计为协同工作,如果是,如何做到这一点?到目前为止,谷歌只在搜索这两个项目时才找到文档结果
为了帮助解决此问题,我创建了一个将工作和非工作案例显示为单元测试的hack子类,以及一个到
CompositeFeatureCollection
的hack子类,该子类返回一个伪SimpleFeatureType
,并显示了即使绕过此NullPointerException
时,它如何被错误地用于映射传递给的列表中每个SimpleFeatureCollection
的内容,而不是每个SimpleFeatureCollection
内部的SimpleFeatureType
,当前GeoJSON模块只支持简单功能,因此需要进行一些开发工作才能引入复杂功能。如果您感兴趣,那么最好从unsupported开始,它目前在原始GeoJSON模块周围提供了一个基于ContentStore的数据存储包装器 谢谢你的确认。目前,我的解决方法是为我的每种功能类型创建单独的SimpleFeatureCollection
s,然后从每个生成的JSON手动组合features
数组。