概要
访问 http://127.0.0.1:8080/geoserver/gwc/service/wmts?service=WMTS&version=1.1.1&request=GetCapabilities 时异常,异常内容为:java.lang.NullPointerException: A legend image format is mandatory.
异常详情:
09 Oct 01:35:06 ERROR [geowebcache.GeoWebCacheDispatcher] - Request failed java.lang.NullPointerException: A legend image format is mandatory. at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:921) at org.geowebcache.config.legends.LegendInfoBuilder.build(LegendInfoBuilder.java:121) at org.geoserver.gwc.layer.GeoServerTileLayer.getLayerLegendsInfo(GeoServerTileLayer.java:1450) at org.geowebcache.service.wmts.WMTSGetCapabilities.getLegendsInfo(WMTSGetCapabilities.java:549) at org.geowebcache.service.wmts.WMTSGetCapabilities.layerStyles(WMTSGetCapabilities.java:571) at org.geowebcache.service.wmts.WMTSGetCapabilities.layer(WMTSGetCapabilities.java:486) at org.geowebcache.service.wmts.WMTSGetCapabilities.contents(WMTSGetCapabilities.java:438) at org.geowebcache.service.wmts.WMTSGetCapabilities.generateGetCapabilities(WMTSGetCapabilities.java:172) at org.geowebcache.service.wmts.WMTSGetCapabilities.writeResponse(WMTSGetCapabilities.java:114) at org.geowebcache.service.wmts.WMTSService.handleRequest(WMTSService.java:594) at org.geowebcache.service.wmts.WMTSService$$FastClassBySpringCGLIB$$e221a779.invoke(
) at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
思路
图例是在样式中配置的,猜测其中图例配置缺少format。
解决方法
-
编辑所有样式,“Legend”-“自动检测图像的大小和类型”,点击保存。
-
重新访问 http://127.0.0.1:8080/geoserver/gwc/service/wmts?service=WMTS&version=1.1.1&request=GetCapabilities,正常响应。