Hello GeoTools community,
I'm new to GeoTools. Currently I'm trying to establish a connection to a WMTS. I followed the instructions in the WMTS — GeoTools 28-SNAPSHOT User Guide. Unfortunately the request to the WMTS failes.
Here are my system information:
GeoTools version 28-SNAPSHOT (built from r175672287370cf2c54eb30f2bbaa04f743835523)
Java version: 17.0.4.1
Operating system: Windows 10 10.0
GeoTools jars on classpath:
Java version: 17.0.4.1
Operating system: Windows 10 10.0
GeoTools jars on classpath:
I use Maven. My pom.xml is pretty much the one from the quickstart tutorial but of course I added the gt-wmts dependency.
Here is my error message:
Nov. 30, 2022 9:39:18 AM org.geotools.data.ows.AbstractOpenWebService internalIssueRequest
SCHWERWIEGEND: Failed to execute request https://gibs.earthdata.nasa.gov/wmts/epsg4326/best/wmts.cgi?REQUEST=GetCapabilities&VERSION=1.0.0&SERVICE=WMTS
Exception in thread "main" java.lang.RuntimeException: Parsing failed for height: java.lang.NumberFormatException: For input string: "85.5"
at org.geotools.xsd.impl.ParseExecutor.visit(ParseExecutor.java:153)
at org.geotools.xsd.impl.BindingWalker$BindingExecutionChain.execute(BindingWalker.java:218)
at org.geotools.xsd.impl.BindingWalker.walk(BindingWalker.java:184)
at org.geotools.xsd.impl.BindingWalker.walk(BindingWalker.java:188)
at org.geotools.xsd.impl.ElementHandlerImpl.startElement(ElementHandlerImpl.java:180)
at org.geotools.xsd.impl.ParserHandler.startElement(ParserHandler.java:378)
at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:518)
at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:183)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:351)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2726)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:605)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:112)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:542)
at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:889)
at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:825)
at java.xml/com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1224)
at java.xml/com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:637)
at java.xml/com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:326)
at org.geotools.xsd.Parser.parse(Parser.java:183)
at org.geotools.xsd.Parser.parse(Parser.java:125)
at org.geotools.ows.wmts.response.WMTSGetCapabilitiesResponse.<init>(WMTSGetCapabilitiesResponse.java:84)
at org.geotools.ows.wmts.WMTSSpecification$GetCapsRequest.createResponse(WMTSSpecification.java:415)
at org.geotools.ows.wmts.WMTSSpecification$GetCapsRequest.createResponse(WMTSSpecification.java:387)
at org.geotools.data.ows.AbstractOpenWebService.internalIssueRequest(AbstractOpenWebService.java:461)
at org.geotools.data.ows.AbstractOpenWebService.issueRequest(AbstractOpenWebService.java:489)
at org.geotools.data.ows.AbstractOpenWebService.negotiateVersion(AbstractOpenWebService.java:287)
at org.geotools.data.ows.AbstractOpenWebService.<init>(AbstractOpenWebService.java:124)
at org.geotools.data.ows.AbstractOpenWebService.<init>(AbstractOpenWebService.java:97)
at org.geotools.data.ows.AbstractOpenWebService.<init>(AbstractOpenWebService.java:88)
at org.geotools.data.ows.AbstractOpenWebService.<init>(AbstractOpenWebService.java:77)
at org.geotools.ows.wmts.WebMapTileServer.<init>(WebMapTileServer.java:151)
at org.geotools.tutorial.App.main(App.java:28)
Caused by: java.lang.NumberFormatException: For input string: "85.5"
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:67)
at java.base/java.lang.Integer.parseInt(Integer.java:668)
at java.base/java.math.BigInteger.<init>(BigInteger.java:536)
at java.base/java.math.BigInteger.<init>(BigInteger.java:674)
at org.geotools.xs.bindings.XSIntegerBinding.parse(XSIntegerBinding.java:96)
at org.geotools.xsd.impl.ParseExecutor.visit(ParseExecutor.java:142)
... 32 more
SCHWERWIEGEND: Failed to execute request https://gibs.earthdata.nasa.gov/wmts/epsg4326/best/wmts.cgi?REQUEST=GetCapabilities&VERSION=1.0.0&SERVICE=WMTS
Exception in thread "main" java.lang.RuntimeException: Parsing failed for height: java.lang.NumberFormatException: For input string: "85.5"
at org.geotools.xsd.impl.ParseExecutor.visit(ParseExecutor.java:153)
at org.geotools.xsd.impl.BindingWalker$BindingExecutionChain.execute(BindingWalker.java:218)
at org.geotools.xsd.impl.BindingWalker.walk(BindingWalker.java:184)
at org.geotools.xsd.impl.BindingWalker.walk(BindingWalker.java:188)
at org.geotools.xsd.impl.ElementHandlerImpl.startElement(ElementHandlerImpl.java:180)
at org.geotools.xsd.impl.ParserHandler.startElement(ParserHandler.java:378)
at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:518)
at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:183)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:351)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2726)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:605)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:112)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:542)
at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:889)
at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:825)
at java.xml/com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1224)
at java.xml/com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:637)
at java.xml/com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:326)
at org.geotools.xsd.Parser.parse(Parser.java:183)
at org.geotools.xsd.Parser.parse(Parser.java:125)
at org.geotools.ows.wmts.response.WMTSGetCapabilitiesResponse.<init>(WMTSGetCapabilitiesResponse.java:84)
at org.geotools.ows.wmts.WMTSSpecification$GetCapsRequest.createResponse(WMTSSpecification.java:415)
at org.geotools.ows.wmts.WMTSSpecification$GetCapsRequest.createResponse(WMTSSpecification.java:387)
at org.geotools.data.ows.AbstractOpenWebService.internalIssueRequest(AbstractOpenWebService.java:461)
at org.geotools.data.ows.AbstractOpenWebService.issueRequest(AbstractOpenWebService.java:489)
at org.geotools.data.ows.AbstractOpenWebService.negotiateVersion(AbstractOpenWebService.java:287)
at org.geotools.data.ows.AbstractOpenWebService.<init>(AbstractOpenWebService.java:124)
at org.geotools.data.ows.AbstractOpenWebService.<init>(AbstractOpenWebService.java:97)
at org.geotools.data.ows.AbstractOpenWebService.<init>(AbstractOpenWebService.java:88)
at org.geotools.data.ows.AbstractOpenWebService.<init>(AbstractOpenWebService.java:77)
at org.geotools.ows.wmts.WebMapTileServer.<init>(WebMapTileServer.java:151)
at org.geotools.tutorial.App.main(App.java:28)
Caused by: java.lang.NumberFormatException: For input string: "85.5"
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:67)
at java.base/java.lang.Integer.parseInt(Integer.java:668)
at java.base/java.math.BigInteger.<init>(BigInteger.java:536)
at java.base/java.math.BigInteger.<init>(BigInteger.java:674)
at org.geotools.xs.bindings.XSIntegerBinding.parse(XSIntegerBinding.java:96)
at org.geotools.xsd.impl.ParseExecutor.visit(ParseExecutor.java:142)
... 32 more
Here is my code sample:
public class App {
public static void main(String[] args) throws ServiceException, IOException {
System.out.println(GeoTools.getAboutInfo());
URL url = ""> try {
url = "" URL("https://gibs.earthdata.nasa.gov/wmts/epsg4326/best/wmts.cgi");
} catch (MalformedURLException e) {
// will not happen
}
public static void main(String[] args) throws ServiceException, IOException {
System.out.println(GeoTools.getAboutInfo());
URL url = ""> try {
url = "" URL("https://gibs.earthdata.nasa.gov/wmts/epsg4326/best/wmts.cgi");
} catch (MalformedURLException e) {
// will not happen
}
WebMapTileServer wmts = null;
try {
wmts = new WebMapTileServer(url);
} catch (IOException e) {
// There was an error communicating with the server
// For example, the server is down
} catch (ServiceException e) {
// The server returned a ServiceException (unusual in this case)
} catch (SAXException e) {
// Unable to parse the response from the server
// For example, the capabilities it returned was not valid
}
System.out.println(wmts.getCapabilities().getService().getName());
}
}
try {
wmts = new WebMapTileServer(url);
} catch (IOException e) {
// There was an error communicating with the server
// For example, the server is down
} catch (ServiceException e) {
// The server returned a ServiceException (unusual in this case)
} catch (SAXException e) {
// Unable to parse the response from the server
// For example, the capabilities it returned was not valid
}
System.out.println(wmts.getCapabilities().getService().getName());
}
}
I tried different servers. I get a response to a manual request from all of them.
It would be very much appreciated if anyone has a solution or a hint for me.
Thanks in advance,
Daniel
_______________________________________________ GeoTools-GT2-Users mailing list GeoTools-GT2-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users