[Geoserver-users] WMS: Service exception when requesting GetLegendGraphic

Hi geoserver list,
i got an exception when requesting a GetLegendGraphic. First i was trying with a mapclient and got no legend. When looking into the log i found this exception:

--------- 8< -------------------------------------------
20 Okt 14:13:11 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/wms?REQUEST=GetLegendGraphic&VERSION=1.0.0&FORMAT=image/png&WIDTH=20&HEIGHT=400&LAYER=sde:GEOLOGIE.V_GUEK_GUEK300P” “Mozilla/5.0 (Windows; U; Windows NT 5.2; de; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12” “”

20 Okt 14:13:11 WARN [geoserver.ows] -
java.lang.NullPointerException
at org.geotools.renderer.style.SLDStyleFactory.getTexturePaint(SLDStyleFactory.java:1105)
at org.geotools.renderer.style.SLDStyleFactory.getPaint(SLDStyleFactory.java:1030)
at org.geotools.renderer.style.SLDStyleFactory.createPolygonStyle(SLDStyleFactory.java:376)
at org.geotools.renderer.style.SLDStyleFactory.createStyleInternal(SLDStyleFactory.java:330)
--------- 8< -------------------------------------------

I styled this polygon-layer with an SLD. Inside the SLD i used about 30 different bitmaps (jpeg and png) for styling of some hatching and dot fill patterns. I referenced them as externalGraphics.

After getting the exception i tried a plain browser-http GetLegendGraphic with the same success. But the strange thing is: The GetMap is beeing served without exception.

I’m using geoserver 1.6.3 with ArcSDE Backend on a WIN2003 Server platform, java 1.5/tomcat 5.5.26. Could you please take a look at the stack:

2008-10-20 14:01:46,409 [Thread-1] INFO org.apache.struts.tiles.TilesPlugin - Tiles definition factory loaded for module ‘’.

20 Okt 14:01:48 ERROR [geoserver.global] -

  • GEOSERVER_DATA_DIR: C:\Programme\Apache_Software_Foundation\apache-tomcat-5.5.26\instanzen\tomcat1\webapps\geoserver\data

20 Okt 14:01:48 WARN [referencing.factory] - Axis elements found in a wkt definition, the force longitude first axis order hint might not be respected:

PROJCS[“WGS84 / Simple Mercator”, GEOGCS[“WGS 84”, DATUM[“WGS_1984”, SPHEROID[“WGS_1984”, 6378137.0, 298.257223563]], PRIMEM[“Greenwich”, 0.0], UNIT[“degree”, 0.017453292519943295], PROJECTION[“Mercator_1SP_Google”], PARAMETER[“latitude_of_origin”, 0.0], PARAMETER[“central_meridian”, 0.0], PARAMETER[“scale_factor”, 1.0], PARAMETER[“false_easting”, 0.0], PARAMETER[“false_northing”, 0.0], UNIT[“m”, 1.0], AXIS[“x”, EAST], AXIS[“y”, NORTH], AUTHORITY[“EPSG”,“54004”]]

log4j:WARN File option not set for appender [geoserverlogfile].
log4j:WARN Are you using FileAppender instead of ConsoleAppender?
20 Okt 14:01:49 INFO [geoserver.global] - Loading feature type ‘geo1mig_oracle:::FFH_SDO’ (layer 1/8)
20 Okt 14:01:49 WARN [geotools.factory] - Can’t load a service for category “DataStoreFactorySpi”. Cause is “NoClassDefFoundError: org/geotools/data/DataStoreFactorySpi”.

20 Okt 14:01:51 INFO [geoserver.global] - Loading feature type ‘geo1mig_oracle_wasser:::KA_KOM_EINL_SDO’ (layer 2/8)
20 Okt 14:01:52 INFO [geoserver.global] - Loading feature type ‘geo1mig_sde:::NATUR.FFH’ (layer 3/8)
20 Okt 14:01:52 WARN [arcsde.pool] - No database name specified
20 Okt 14:01:52 WARN [arcsde.pool] - No database name specified
20 Okt 14:01:55 INFO [geoserver.global] - Loading feature type ‘geo1mig_sde:::RKH.HAUPT’ (layer 4/8)
20 Okt 14:01:56 INFO [geoserver.global] - Loading feature type ‘geo1mig_sde_guek300:::GEOLOGIE.V_GUEK_GUEK300L’ (layer 5/8)

20 Okt 14:01:56 WARN [arcsde.pool] - No database name specified
20 Okt 14:01:56 WARN [arcsde.pool] - No database name specified
20 Okt 14:01:56 INFO [geoserver.global] - Loading feature type ‘geo1mig_sde_guek300:::GEOLOGIE.V_GUEK_GUEK300P’ (layer 6/8)

20 Okt 14:01:57 INFO [geoserver.global] - Loading feature type ‘geo1mig_SDE_hydgeoview:::HYDGEO.PV_TWSHQS’ (layer 7/8)
20 Okt 14:01:57 WARN [arcsde.pool] - No database name specified
20 Okt 14:01:57 WARN [arcsde.pool] - No database name specified
20 Okt 14:01:58 INFO [geoserver.global] - Loading feature type ‘geo1mig_SDE_WASSER:::WASSER.KA_KOM_EINL’ (layer 8/8)
20 Okt 14:01:58 WARN [arcsde.pool] - No database name specified
20 Okt 14:01:58 WARN [arcsde.pool] - No database name specified
20 Okt 14:02:01 WARN [arcsde.pool] - No database name specified
20 Okt 14:02:01 WARN [arcsde.pool] - No database name specified
20 Okt 14:02:01 WARN [arcsde.pool] - No database name specified
20 Okt 14:02:01 WARN [arcsde.pool] - No database name specified
20 Okt 14:02:01 WARN [arcsde.pool] - No database name specified
2008-10-20 14:02:06,300 [TP-Processor3] INFO org.apache.struts.tiles.TilesRequestProcessor - Tiles definition factory found for request processor ‘’.

2008-10-20 14:02:06,972 [TP-Processor3] INFO de.conterra.mapclient.businesstier.mapprocessing.IMCImageMergerJAI - JAI - Tilesize is java.awt.Dimension[width=256,height=256]

2008-10-20 14:02:06,972 [TP-Processor3] INFO de.conterra.mapclient.businesstier.mapprocessing.IMCImageMergerJAI - Maximal 8 threads merging concurrently.

20 Okt 14:02:07 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/wms?REQUEST=GetCapabilities&SERVICE=WMS” “Java/1.5.0_15” “”

20 Okt 14:02:07 INFO [responses.helpers] - Supported JAIMapResponse’s MIME Types: [image/jpeg]
20 Okt 14:02:07 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/wms?REQUEST=GetCapabilities&SERVICE=WMS” took 563ms

2008-10-20 14:02:07,675 [TP-Processor3] INFO de.conterra.suite.adapter.wms.WMService - setServiceID(20)
2008-10-20 14:02:07,675 [TP-Processor3] WARN de.conterra.mapclient.businesstier.mapprocessing.IMCMapBuilder - no string field found while constructing #ALL#-queryField for layer [GEOLOGIE.V_GUEK_GUEK300P_Type, 2000]

2008-10-20 14:02:07,675 [TP-Processor3] WARN de.conterra.mapclient.businesstier.mapprocessing.IMCMapBuilder - no string field found while constructing #ALL#-queryField for layer [GEOLOGIE.V_GUEK_GUEK300L_Type, 2001]

2008-10-20 14:02:07,691 [TP-Processor3] INFO de.conterra.mapclient.businesstier.mapprocessing.IMCMapBuilder - No overview map information present.

2008-10-20 14:02:07,706 [TP-Processor3] INFO de.conterra.mapclient.businesstier.mapaccess.acetateimage.IMCAcetateRenderer - constructor(outputPath="C:\Programme\mapClient\webapp\output", outputUrl = “http://localhost/mapClient/output/”)

2008-10-20 14:02:07,706 [TP-Processor3] INFO de.conterra.mapclient.businesstier.mapaccess.acetateimage.IMCAcetateRenderer - configureLayers

2008-10-20 14:02:07,706 [TP-Processor3] INFO de.conterra.mapclient.businesstier.mapaccess.acetateimage.IMCAcetateRenderer - setLayerVisibility

2008-10-20 14:02:07,706 [TP-Processor3] INFO de.conterra.mapclient.businesstier.mapaccess.generic.IMCCanvasDatasource - setDotsPerInch

2008-10-20 14:02:07,706 [TP-Processor3] INFO de.conterra.mapclient.businesstier.mapaccess.acetateimage.IMCAcetateRenderer - setLegendTitle

2008-10-20 14:02:07,706 [TP-Processor3] INFO de.conterra.mapclient.businesstier.mapaccess.generic.IMCCanvasDatasource - setImageHeight(0)

2008-10-20 14:02:07,706 [TP-Processor3] INFO de.conterra.mapclient.businesstier.mapaccess.generic.IMCCanvasDatasource - setImageWidth(0)

2008-10-20 14:02:07,706 [TP-Processor3] INFO de.conterra.mapclient.businesstier.mapaccess.generic.IMCCanvasDatasource - setSRS

2008-10-20 14:02:07,706 [TP-Processor3] INFO de.conterra.mapclient.businesstier.mapaccess.acetateimage.IMCAcetateRenderer - setImageFormat(image/png)

2008-10-20 14:02:07,706 [TP-Processor3] INFO de.conterra.mapclient.businesstier.mapaccess.acetateimage.IMCAcetateRenderer - setImageFormat successful

2008-10-20 14:02:07,706 [TP-Processor3] INFO de.conterra.mapclient.webtier.struts.actions.InitSDIViewerConfigurationAction - mapClient-Properties wurden noch nicht geladen. Lade mapClient-Properties…

2008-10-20 14:02:08,050 [TP-Processor2] INFO de.conterra.mapclient.businesstier.mapaccess.generic.IMCCanvasDatasource - setImageHeight(576)

2008-10-20 14:02:08,050 [TP-Processor2] INFO de.conterra.mapclient.businesstier.mapaccess.generic.IMCCanvasDatasource - setImageWidth(910)

2008-10-20 14:02:08,050 [TP-Processor2] INFO de.conterra.mapclient.businesstier.mapaccess.generic.IMCCanvasDatasource - setExtent((3469665.0, 5531574.0)-(3509329.0, 5565226.0))

2008-10-20 14:02:08,050 [TP-Processor2] INFO de.conterra.mapclient.businesstier.mapaccess.generic.IMCCanvasDatasource - setSRS

2008-10-20 14:02:09,331 [TP-Processor2] INFO de.conterra.mapclient.businesstier.mapaccess.generic.IMCCanvasDatasource - setExtent((3462914.2569444445, 5531574.0)-(3516079.7430555555, 5565226.0))

2008-10-20 14:02:09,331 [TP-Processor2] INFO de.conterra.mapclient.businesstier.mapaccess.generic.IMCCanvasDatasource - setSRS

2008-10-20 14:02:09,331 [Thread-39] INFO de.conterra.mapclient.businesstier.mapaccess.acetateimage.IMCAcetateRenderer - fitLayersToExtent

2008-10-20 14:02:09,331 [Thread-39] INFO de.conterra.mapclient.businesstier.mapaccess.acetateimage.IMCAcetateRenderer - doRefresh

2008-10-20 14:02:09,331 [Thread-39] INFO de.conterra.mapclient.businesstier.mapaccess.acetateimage.IMCAcetateRenderer - acetatesPresent → false

20 Okt 14:02:09 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/wms?SERVICE=WMS&REQUEST=GetMap&VERSION=1.1.1&FORMAT=image%2Fpng&SRS=EPSG%3A31467&LAYERS=sde%3AGEOLOGIE.V_GUEK_GUEK300P%2Csde%3AGEOLOGIE.V_GUEK_GUEK300L&STYLES=GEOLOGIE.V_GUEK_GUEK300P_style%2CGEOLOGIE.V_GUEK_GUEK300L_style&BBOX=3462914.256944%2C5531574%2C3516079.743056%2C5565226&WIDTH=910&HEIGHT=576&TRANSPARENT=TRUE&BGCOLOR=0xFFFFFF” “Java/1.5.0_15” “”

20 Okt 14:02:13 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_7.jpg” “Java/1.5.0_15” “”
20 Okt 14:02:13 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_7.jpg” took 0ms
20 Okt 14:02:13 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid6.png” “Java/1.5.0_15” “”
20 Okt 14:02:13 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid6.png” took 0ms
20 Okt 14:02:14 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_10.jpg” “Java/1.5.0_15” “”
20 Okt 14:02:14 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_10.jpg” took 0ms
20 Okt 14:02:14 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_8.jpg” “Java/1.5.0_15” “”
20 Okt 14:02:14 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_8.jpg” took 0ms
20 Okt 14:02:15 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_3.jpg” “Java/1.5.0_15” “”
20 Okt 14:02:15 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_3.jpg” took 0ms
20 Okt 14:02:15 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_74.jpg” “Java/1.5.0_15” “”
20 Okt 14:02:15 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_74.jpg” took 0ms
20 Okt 14:02:16 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid86.png” “Java/1.5.0_15” “”
20 Okt 14:02:16 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid86.png” took 0ms
20 Okt 14:02:17 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_87.png” “Java/1.5.0_15” “”
20 Okt 14:02:17 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_87.png” took 0ms
20 Okt 14:02:17 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_89.jpg” “Java/1.5.0_15” “”
20 Okt 14:02:17 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_89.jpg” took 0ms
20 Okt 14:02:18 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_88.jpg” “Java/1.5.0_15” “”
20 Okt 14:02:18 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_88.jpg” took 0ms
20 Okt 14:02:18 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_75.jpg” “Java/1.5.0_15” “”
20 Okt 14:02:18 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_75.jpg” took 0ms
20 Okt 14:02:19 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_90.png” “Java/1.5.0_15” “”
20 Okt 14:02:19 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_90.png” took 0ms
20 Okt 14:02:19 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid92.png” “Java/1.5.0_15” “”
20 Okt 14:02:19 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid92.png” took 0ms
20 Okt 14:02:20 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_81.png” “Java/1.5.0_15” “”
20 Okt 14:02:20 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_81.png” took 0ms
20 Okt 14:02:21 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_20.png” “Java/1.5.0_15” “”
20 Okt 14:02:21 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_20.png” took 0ms
20 Okt 14:02:21 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid48.png” “Java/1.5.0_15” “”
20 Okt 14:02:21 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid48.png” took 0ms
20 Okt 14:02:23 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_82.png” “Java/1.5.0_15” “”
20 Okt 14:02:23 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_82.png” took 0ms
20 Okt 14:02:24 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_91.jpg” “Java/1.5.0_15” “”
20 Okt 14:02:24 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_91.jpg” took 0ms
20 Okt 14:02:28 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/wms?SERVICE=WMS&REQUEST=GetMap&VERSION=1.1.1&FORMAT=image%2Fpng&SRS=EPSG%3A31467&LAYERS=sde%3AGEOLOGIE.V_GUEK_GUEK300P%2Csde%3AGEOLOGIE.V_GUEK_GUEK300L&STYLES=GEOLOGIE.V_GUEK_GUEK300P_style%2CGEOLOGIE.V_GUEK_GUEK300L_style&BBOX=3462914.256944%2C5531574%2C3516079.743056%2C5565226&WIDTH=910&HEIGHT=576&TRANSPARENT=TRUE&BGCOLOR=0xFFFFFF” took 18688ms

2008-10-20 14:02:28,019 [TP-Processor2] INFO de.conterra.mapclient.businesstier.mapdata.IMCMap - Merging Time around: 0ms

2008-10-20 14:02:28,019 [TP-Processor2] INFO de.conterra.mapclient.webtier.struts.actions.IMCRefreshMapAction - MapRefreshAction

2008-10-20 14:02:33,019 [TP-Processor3] INFO de.conterra.mapclient.businesstier.mapaccess.acetateimage.IMCAcetateRenderer - getLegendURL

20 Okt 14:02:33 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/wms/GetLegendGraphic?VERSION=1.0.0&FORMAT=image/png&WIDTH=20&HEIGHT=20&LAYER=sde:GEOLOGIE.V_GUEK_GUEK300L” “Mozilla/5.0 (Windows; U; Windows NT 5.2; de; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12” “http://localhost/mapClient/LegendOn.do

20 Okt 14:02:33 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/wms/GetLegendGraphic?VERSION=1.0.0&FORMAT=image/png&WIDTH=20&HEIGHT=20&LAYER=sde:GEOLOGIE.V_GUEK_GUEK300P” “Mozilla/5.0 (Windows; U; Windows NT 5.2; de; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12” “http://localhost/mapClient/LegendOn.do

20 Okt 14:02:33 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_5.jpg” “Java/1.5.0_15” “”
20 Okt 14:02:33 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_5.jpg” took 0ms
20 Okt 14:02:33 INFO [geoserver.filters] - Not compressing output for mimetype: image/png
20 Okt 14:02:33 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/wms/GetLegendGraphic?VERSION=1.0.0&FORMAT=image/png&WIDTH=20&HEIGHT=20&LAYER=sde:GEOLOGIE.V_GUEK_GUEK300L” took 156ms

20 Okt 14:02:33 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid9.png” “Java/1.5.0_15” “”
20 Okt 14:02:33 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid9.png” took 0ms
20 Okt 14:02:34 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_11.png” “Java/1.5.0_15” “”
20 Okt 14:02:34 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_11.png” took 0ms
20 Okt 14:02:34 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid19.png” “Java/1.5.0_15” “”
20 Okt 14:02:34 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid19.png” took 0ms
20 Okt 14:02:35 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_24.png” “Java/1.5.0_15” “”
20 Okt 14:02:35 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_24.png” took 0ms
20 Okt 14:02:35 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid27.png” “Java/1.5.0_15” “”
20 Okt 14:02:35 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid27.png” took 0ms
20 Okt 14:02:36 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_28.jpg” “Java/1.5.0_15” “”
20 Okt 14:02:36 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_28.jpg” took 0ms
20 Okt 14:02:36 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid33.png” “Java/1.5.0_15” “”
20 Okt 14:02:36 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid33.png” took 0ms
20 Okt 14:02:37 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid37.png” “Java/1.5.0_15” “”
20 Okt 14:02:37 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid37.png” took 0ms
20 Okt 14:02:37 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_97.jpg” “Java/1.5.0_15” “”
20 Okt 14:02:37 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_97.jpg” took 0ms
20 Okt 14:02:38 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_45.png” “Java/1.5.0_15” “”
20 Okt 14:02:38 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_45.png” took 0ms
20 Okt 14:02:38 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_49.png” “Java/1.5.0_15” “”
20 Okt 14:02:38 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_49.png” took 0ms
20 Okt 14:02:39 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_51.png” “Java/1.5.0_15” “”
20 Okt 14:02:39 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_51.png” took 0ms
20 Okt 14:02:39 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_52.png” “Java/1.5.0_15” “”
20 Okt 14:02:39 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_52.png” took 0ms
20 Okt 14:02:40 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_99.jpg” “Java/1.5.0_15” “”
20 Okt 14:02:40 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_99.jpg” took 0ms
20 Okt 14:02:40 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_55.png” “Java/1.5.0_15” “”
20 Okt 14:02:40 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_55.png” took 0ms
20 Okt 14:02:41 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_103.jpg” “Java/1.5.0_15” “”
20 Okt 14:02:41 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_103.jpg” took 0ms
20 Okt 14:02:41 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid104.png” “Java/1.5.0_15” “”
20 Okt 14:02:41 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_geoid104.png” took 0ms
20 Okt 14:02:42 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_105.jpg” “Java/1.5.0_15” “”
20 Okt 14:02:42 INFO [geoserver.filters] - 127.0.0.1 “GET /geoserver/bitmaps/geologie_105.jpg” took 0ms
20 Okt 14:02:42 WARN [geoserver.ows] -
java.lang.NullPointerException
at org.geotools.renderer.style.SLDStyleFactory.getTexturePaint(SLDStyleFactory.java:1105)
at org.geotools.renderer.style.SLDStyleFactory.getPaint(SLDStyleFactory.java:1030)
at org.geotools.renderer.style.SLDStyleFactory.createPolygonStyle(SLDStyleFactory.java:376)
at org.geotools.renderer.style.SLDStyleFactory.createStyleInternal(SLDStyleFactory.java:330)
at org.geotools.renderer.style.SLDStyleFactory.createStyle(SLDStyleFactory.java:295)
at org.vfny.geoserver.wms.responses.DefaultRasterLegendProducer.produceLegendGraphic(DefaultRasterLegendProducer.java:245)

at org.vfny.geoserver.wms.responses.GetLegendGraphicResponse.execute(GetLegendGraphicResponse.java:81)
at org.geoserver.ows.adapters.ResponseAdapter.getMimeType(ResponseAdapter.java:48)
at org.geoserver.ows.Dispatcher.response(Dispatcher.java:616)
at org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:192)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:139)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:44)

at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:684)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:625)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:392)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:347)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:69)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:41)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:264)
at org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)
at org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:178)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:229)

at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:148)
at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)

at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Thread.java:595)

Thanks
Albrecht


Albrecht Weiser,
E6, GIS Center
Hessische Zentrale für Datenverarbeitung (HZD)

Albrecht.Weiser@anonymised.com ha scritto:

Hi geoserver list,
i got an exception when requesting a GetLegendGraphic. First i was trying with a mapclient and got no legend. When looking into the log i found this exception:

--------- 8< -------------------------------------------
20 Okt 14:13:11 INFO [geoserver.filters] - 127.0.0.1 "GET /geoserver/wms?REQUEST=GetLegendGraphic&VERSION=1.0.0&FORMAT=image/png&WIDTH=20&HEIGHT=400&LAYER=sde:GEOLOGIE.V_GUEK_GUEK300P" "Mozilla/5.0 (Windows; U; Windows NT 5.2; de; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12" ""

20 Okt 14:13:11 WARN [geoserver.ows] -
java.lang.NullPointerException
        at org.geotools.renderer.style.SLDStyleFactory.getTexturePaint(SLDStyleFactory.java:1105)

My guess is that one of the bitmaps could not be found on the disk, but I'm not sure, the stack trace position is completely off compared
to the current sources (the getTexturePaint method is around line 800
now) so I cannot pinpoint what's going on there.

Any change you can send me, by private mail, the sld, all the images,
and a sample of the data in shapefile format?

Alternatively, can you try out GeoServer 1.7 and tell me if the
bug is still there, and what's the stack trace in that case?

Cheers
Andrea

--
Andrea Aime
OpenGeo - http://opengeo.org
Expert service straight from the developers.

I currently did. It was a missing size declaration:

          <PolygonSymbolizer>
            <Fill>
              <GraphicFill>
                <Graphic>
                  <ExternalGraphic>
                    <OnlineResource xmlns:xlink="http://www.w3.org/1999/xlink&quot; xlink:type="simple" xlink:href="http://localhost:9080/geoserver/bitmaps/geologie_105.png&quot;/&gt;
                    <Format>image/png</Format>
                  </ExternalGraphic>
                  <Size></Size>
                </Graphic>
              </GraphicFill>
            </Fill>
          </PolygonSymbolizer>

The whole time i was looking for a faulty URL or filename. I even checked if the bitmaps are wrong themselves. The strange thing is, that the map itself has been rendered correctly even though the size statement was missing.
By the way, what i found out about the sizes of external graphics:
The size is always to be defined with respect to the largest dimension. For example if i have a 5x5 png the size has to be of course 5. If i have a 3x7 bitmap the size have to be 7. If 7x3 it also needs to be 7.
If this guideline is not beeing followed, the rendering engine seems to have problems and starts resampling, so that the resoluting style looks unsymmetric and knotty.

Best regards
Albrecht

--
Albrecht Weiser,
E6, GIS Center

Hessische Zentrale für Datenverarbeitung (HZD)
Mainzer Straße 29, 65185 Wiesbaden
E-Mail: albrecht.weiser@anonymised.com

-----Ursprüngliche Nachricht-----
Von: Andrea Aime [mailto:aaime@anonymised.com]
Gesendet: Mittwoch, 22. Oktober 2008 16:06
An: Weiser, Albrecht (HZD)
Betreff: Re: AW: [Geoserver-users] WMS: Service exception
when requesting GetLegendGraphic

Albrecht.Weiser@anonymised.com ha scritto:
> Hi Andrea, i just debugged my SLD again by excluding every single
> externelGraphic reference and found the faulty definition. You're
> right - it's not a bug in GS. I still don't know where the
problem is
> with this def. because it looks like each of the other 30
> definitions. I will find out. Thanks again & best regards Albrecht

When you find out I'm curious to know, I can try to add better logging
and/or better error messages for that case

Cheers
Andrea

--
Andrea Aime
OpenGeo - http://opengeo.org
Expert service straight from the developers.