如果我想调用 geomesa wps 服务,我可以编写如下代码:
HttpURLConnection conn = connfactory.openConnection();
conn.setRequestProperty("Content-Type", "text/xml");
conn.setRequestMethod("POST");
OutputStreamWriter out = new OutputStreamWriter(conn.getOutputStream());
out.write(document.asXML());
out.close();
//connect to the http service
........
这是一个java程序。变量“文档”是一个 XML 元素,它是从 XML 文件中读取的。如果我想生成这个 xml 文件,我必须使用像 dom4j 这样的 xml 工具来构建这个文件。这是非常复杂和耗时的。我可以使用像“wps:datainputs”这样的java对象生成这个xml文件吗?
例如像这样
wps.datainputs wps1 = new wps:datainputs();
wps.input.Identifilter = new filter();
Xml xml = wps1.toXml();
我该如何实施?
首先十分感谢。
xml 文件如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<wps:Execute version="1.0.0" service="WPS"
xmlns:wfs="http://www.opengis.net/wfs"
xmlns:gml="http://www.opengis.net/gml"
xmlns:xlink="http://www.w3.org/1999/xlink">
<ows:Identifier>geomesa:Query</ows:Identifier>
<wps:DataInputs>
<wps:Input>
<ows:Identifier>filter</ows:Identifier>
<wps:Data>
<wps:ComplexData mineType="text/plain; subtype=cql"></wps:ComplexData>
</wps:Data>
</wps:Input>
</wps:DataInputs>
<wps:ResponseForm>
<wps:RawDataOutput mineType="application/json">
<ows:Identifier>result</ows:Identifier>
</wps:RawDataOutput>
</wps:ResponseForm>