Details
-
Type:
Bug
-
Status:
Open
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: None
-
Fix Version/s: 2.7.6
-
Component/s: None
-
Labels:None
-
Environment:GeoTools Trunk
Description
WPS execute request ends in:
org.eclipse.emf.common.util.BasicEList$BasicIndexOutOfBoundsException:
index=0, size=0
at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:512)
at org.geotools.data.wps.WPSUtils.createResultMap(WPSUtils.java:380)
at org.geotools.data.wps.WPSProcess.execute(WPSProcess.java:143)
at
I guess (no proof) this result parameter containing a base64 encoded and zipped shapefile could be the reason:
<Output>
<ows:Identifier>IdentifiedAffectedAreasFeatureCollection</ows:Identifier>
<ows:Title>The resulting feature collection that contains the
Identified Affected Areas (returned as a zipped shapefile)</ows:Title>
<ComplexOutput>
<Default>
<Format>
<MimeType>application/zip</MimeType>
<Encoding>base64</Encoding>
</Format>
</Default>
<Supported>
<Format>
<MimeType>application/zip</MimeType>
<Encoding>base64</Encoding>
</Format>
</Supported>
</ComplexOutput>
</Output>
A solution could be not to inline the result but to advice the WPS to return only the URL for the result/resource. Currently setting 'asReference="true"' for response parameters is not possible.
<wps:Execute>
...
<wps:DataInputs>
... input parameters here
</wps:DataInputs>
<wps:ResponseForm>
<wps:ResponseDocument>
<wps:Output asReference="true">
<ows:Identifier>IdentifiedAffectedAreasFeatureCollection</ows:Identifier>
</wps:Output>
<wps:Output>
<ows:Identifier>NumberOfIdentifiedAffectedAreas</ows:Identifier>
</wps:Output>
<wps:Output>
<ows:Identifier>TotalProcessExecutionTime</ows:Identifier>
</wps:Output>
</wps:ResponseDocument>
</wps:ResponseForm>
</wps:Execute>