Hi,

I'm Leandro Leal Parente, 21, from Brazil. I'm on 4th year of Computer
Science on UFG University. Today I work at the Laboratory of image
processing and GIS with computer support and program development.

I will develop a web software to processing spatial data with WPS. I will
use one existing WPS implementation (Server and client-side) to realize this
task. Actually, I chose the Geoserver to server and Geotools to client api.
Do Geotools WPS implementation is robust to use on my web software ? When
the module will be stable ?

Yesterday, I tested the Geotools WPS implementation. I started a Geoserver
with WPS service and I did some request by browser, everything works fine.
So I checkout the last code of geotools svn (http://svn.osgeo.org/geotools/,
Revision 35277) and compile it with maven. I implemented a simple class to
connect to the Geoserver like was describing on WPS Plugin geotools user
guide <http://docs.codehaus.org/display/GEOTDOC/WPS+Plugin>. I got two
problem:

*First problem: *
When I was sending a describeProcess request, I got this exception:

java.io.IOException: Server returned HTTP response code: 503 for URL:
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
    at
sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1313)
    at org.apache.xerces.impl.XMLEntityManager.setupCurrentEntity(Unknown
Source)
    at org.apache.xerces.impl.XMLEntityManager.startEntity(Unknown Source)
    at org.apache.xerces.impl.XMLEntityManager.startDTDEntity(Unknown
Source)
    at org.apache.xerces.impl.XMLDTDScannerImpl.setInputSource(Unknown
Source)
    at
org.apache.xerces.impl.XMLDocumentScannerImpl$DTDDispatcher.dispatch(Unknown
Source)
    at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown
Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.geotools.xml.Parser.parse(Parser.java:223)
    at org.geotools.xml.Parser.parse(Parser.java:151)
    at
org.geotools.data.wps.response.DescribeProcessResponse.<init>(DescribeProcessResponse.java:67)
    at
org.geotools.data.wps.WPS1_0_0$InternalDescribeProcessRequest.createResponse(WPS1_0_0.java:135)
    at
org.geotools.data.ows.AbstractWPS.internalIssueRequest(AbstractWPS.java:419)
    at
org.geotools.data.wps.WebProcessingService.issueRequest(WebProcessingService.java:235)
    at WPSClient.executeProcess(WPSClient.java:77)
    at WPSClient.<init>(WPSClient.java:46)
    at WPSClient.main(WPSClient.java:111)

Reading this link (
http://www.w3.org/blog/systeam/2008/02/08/w3c_s_excessive_dtd_traffic), I
understand the problem. To solve the problem I did some hacks.

I added this line on file /etc/hosts:

127.0.0.1              www.w3.org

I put the w3 files (xhtml1-transitional.dtd, xhtml-lat1.ent,
xhtml-special.ent, xhtml-symbol.ent) on my local web server on the folder
/var/www/TR/xhtml1/DTD/xhtml/.

After it I did a sucess request to geoserver, but it is a temporary
solution. I think the right solution is alter the code and put the w3 files
on the gt-xml module jar.

*Second Problem:*

here is my request code:

wps = new WebProcessingService(new URL("
http://localhost:8080/geoserver/ows?service=WPS";));

DescribeProcessRequest descRequest = wps.createDescribeProcessRequest();
descRequest.setIdentifier("gt:FeatureBuffer");

DescribeProcessResponse descResponse = wps.issueRequest(descRequest);
ProcessDescriptionsType processDesc = descResponse.getProcessDesc();

The problem is, the variable processDesc is null. The descResponse haven't a
valid ProcessDescriptionType.

I did this request on my browser:
http://localhost:8080/geoserver/ows?service=WPS&request=DescribeProcess&identifier=gt:Union.
I got the right response, then Geoserver WPS Server is OK.

When I debug the WPS Geotools Module, I found the problem. The method
getOperationURL on WebProcessingService class, line 279, was returning the
wrong URL,
http://localhost:8080/geoserver/?service=wps&request=DescribeProcess&;, then
the request doesn't work.

I will try solve this problem, removing the getOperationURL call and setting
onlineResource = serverURL.
There is another way to solve it ?

Thanks,
Leandro Leal
------------------------------------------------------------------------------
_______________________________________________
Geotools-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to