Geoserver: WFS не возвращает узлы для столбцов с нулевыми значениями

GeoServer 2.3 не возвращает пустой узел XML для столбцов с нулевыми значениями. Например, это фрагмент из ответа WFS на запрос CQL:

<gml:featureMember>
<ems:airports fid="airports.3822">
<ems:IKO>KINL</ems:IKO>
<ems:na3>US24271</ems:na3>
<ems:Name>FALLS INTL</ems:Name>
<ems:Type>Civilian/Public</ems:Type>
<ems:the_geom>...</ems:the_geom>
<ems:Mod_time>2011-09-02T20:17:30.831</ems:Mod_time>
</ems:airports>
</gml:featureMember>
<gml:featureMember>
<ems:airports fid="airports.10117">
<ems:IKO>CKV3</ems:IKO>
<ems:Name>DRYDEN BEST WESTERN (Heli)</ems:Name>
<ems:the_geom>
<gml:Point srsName="http://www.opengis.net/gml/srs/epsg.xml#4326">
<gml:coordinates xmlns:gml="http://www.opengis.net/gml" decimal="." cs="," ts=" ">-92.833333,49.783333</gml:coordinates>
</gml:Point>
</ems:the_geom>
<ems:Mod_time>2011-09-08T16:56:07.334</ems:Mod_time>
<ems:Country>Canada</ems:Country>
<ems:Operator>Best Western Motor Inn</ems:Operator>
<ems:Contact>807-223-3201</ems:Contact>
</ems:airports>
</gml:featureMember>

Во втором элементе featureMember отсутствуют узлы na3 и Type, так как они пусты в базе данных.

Есть ли способ настроить GeoServer для возврата пустого узла, когда он встречает столбец с нулевым значением?


person Klaus Nji    schedule 04.03.2014    source источник


Ответы (2)


По-видимому, это задумано, так как это спецификация WFS. Смотрите соответствующее обсуждение:

http://osgeo-org.1560.x6.nabble.com/Why-the-WFS-does-not-return-the-NULL-value-field-td3802398.html

В этом потоке предлагается вместо этого анализировать ответ "DescribeFeatureType", который содержит все поля.

Теперь, если бы только был OpenLayers Control/Plugin, который сочетал бы это поведение, я был бы счастлив, но я думаю, что буду вынужден разрабатывать его с нуля.

person pkExec    schedule 26.08.2014

descriptionfeaturetype возвращает только имена столбцов. Тем не менее, если один столбец содержит null, он не отображается в ответе, даже если для некоторых строк он имеет значение.

person Barak Schoster    schedule 02.01.2015