Also, is anyone else able to reproduce Russ issue? If so we could maybe do a blind fix, surround that call with a try/catch and disable access to fonts in case an exception occurs, while saving the ability to display the status page.
Cheers Andrea On Wed, Jan 30, 2019 at 7:33 PM Andrea Aime <andrea.a...@geo-solutions.it> wrote: > Hi Russ, > thanks for the feedback. > Interesting... I've just verified on my local machine, the status page is > working fine (I'm on a Linux Mint 19.1): > > [image: image.png] > > What the GeoServer code is doing there, in the stack trace, is a legit > call to a JDK method, GraphicsEnvironment.getAllFonts, so I've searched for > the error message and found a JDK bug that looks similar... but it's marked > as resolved in JDK 9 and later JDK 8 builds: > > https://bugs.java.com/bugdatabase/view_bug.do?bug_id=JDK-8144703 > > Is it possible that you're not actually running on JDK 11 but instead an > older JDK 8? > Or maybe it's related to the specific local font configuration, don't know. > > Cheers > Andrea > > On Tue, Jan 29, 2019 at 1:26 PM Russ Hore <r...@russ-hore.co.uk> wrote: > >> I just installed 2.15 onto Ubuntu 18.04.1 using Java 11. This is a >> Virtual machine running under VMWare ESXi 6.7. >> >> All seems to work fine as far as I have tested except for if I go to >> “Server Status” from the Admin screen. >> >> *Details* >> >> Build Information >> >> - GeoServer Version2.15-RC >> - Git Revision5003db5a6f6aeb3b2685545c447ff08435bbf9db >> - Build Date27-Jan-2019 10:46 >> - GeoTools Version21-RC (rev e8178fdab8916dbf1a08eb8e1a856c3dcd1a1124) >> - GeoWebCache Version1.15-RC (rev >> 1.15.x/56389371f6d92b5493100b1c519f05a5037bc1b0) >> >> >> *Error* >> >> - An error occurred while loading the page >> >> Oops, something went wrong... >> Sorry, something unexpected happened on the server. >> >> The GeoServer user list might help you address this issue. Click here to >> subscribe, and then include in your message the GeoServer version, the >> stack trace below and the steps to reproduce the problem. >> <http://geoserver.org/comm/> >> >> >> *Stack trace* >> >> org.apache.wicket.WicketRuntimeException: Error attaching this container >> for rendering: [Page class = org.geoserver.web.admin.StatusPage, id = 77, >> render count = 1] at >> org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1848) >> at org.apache.wicket.Component.onBeforeRender(Component.java:3916) at >> org.apache.wicket.Page.onBeforeRender(Page.java:801) at >> org.apache.wicket.Component.internalBeforeRender(Component.java:950) at >> org.apache.wicket.Component.beforeRender(Component.java:1018) at >> org.apache.wicket.Component.internalPrepareForRender(Component.java:2236) >> at org.apache.wicket.Page.internalPrepareForRender(Page.java:242) at >> org.apache.wicket.Component.render(Component.java:2325) at >> org.apache.wicket.Page.renderPage(Page.java:1018) at >> org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:124) >> at >> org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:236) >> at >> org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175) >> at >> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:895) >> at >> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64) >> at >> org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:265) >> at >> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:222) >> at >> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:293) >> at >> org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:261) >> at >> org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:203) >> at >> org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:137) >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:634) at >> javax.servlet.http.HttpServlet.service(HttpServlet.java:741) at >> org.springframework.web.servlet.mvc.ServletWrappingController.handleRequestInternal(ServletWrappingController.java:165) >> at >> org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:177) >> at >> org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:52) >> at >> org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1038) >> at >> org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942) >> at >> org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:998) >> at >> org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:890) >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:634) at >> org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:875) >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) >> at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) >> at >> org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:26) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) >> at >> org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:69) >> at >> org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:73) >> at >> org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:66) >> at >> org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:41) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) >> at >> org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:37) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320) >> at >> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70) >> at >> org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:127) >> at >> org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:91) >> at >> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74) >> at >> org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) >> at >> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70) >> at >> org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119) >> at >> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74) >> at >> org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) >> at >> org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:51) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) >> at >> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70) >> at >> org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:200) >> at >> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74) >> at >> org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91) >> at >> org.geoserver.security.filter.GeoServerUserNamePasswordAuthenticationFilter.doFilter(GeoServerUserNamePasswordAuthenticationFilter.java:112) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) >> at >> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70) >> at >> org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:158) >> at >> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74) >> at >> org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) >> at >> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:70) >> at >> org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105) >> at >> org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:52) >> at >> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:74) >> at >> org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) >> at >> org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215) >> at >> org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178) >> at >> org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:141) >> at >> org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:357) >> at >> org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:270) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) >> at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:90) at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) >> at >> org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:79) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) >> at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42) at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) >> at >> org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:46) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) >> at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:42) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) >> at >> org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) >> at >> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) >> at >> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199) >> at >> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) >> at >> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) >> at >> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) >> at >> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) >> at >> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:668) >> at >> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) >> at >> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) >> at >> org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) >> at >> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) >> at >> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:834) >> at >> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1417) >> at >> org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) >> at >> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) >> at >> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) >> at >> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) >> at java.base/java.lang.Thread.run(Thread.java:834) Caused by: >> java.lang.ClassCastException: class sun.font.CompositeFont cannot be cast >> to class sun.font.PhysicalFont (sun.font.CompositeFont and >> sun.font.PhysicalFont are in module java.desktop of loader 'bootstrap') at >> java.desktop/sun.font.SunFontManager.getDefaultPhysicalFont(SunFontManager.java:1086) >> at >> java.desktop/sun.font.SunFontManager.initialiseDeferredFont(SunFontManager.java:965) >> at >> java.desktop/sun.font.SunFontManager.initialiseDeferredFonts(SunFontManager.java:831) >> at java.desktop/sun.font.SunFontManager.loadFonts(SunFontManager.java:3182) >> at java.desktop/sun.awt.X11FontManager.loadFonts(X11FontManager.java:438) >> at >> java.desktop/sun.font.SunFontManager.getAllInstalledFonts(SunFontManager.java:3543) >> at >> java.desktop/sun.java2d.SunGraphicsEnvironment.getAllFonts(SunGraphicsEnvironment.java:209) >> at >> java.desktop/sun.java2d.HeadlessGraphicsEnvironment.getAllFonts(HeadlessGraphicsEnvironment.java:72) >> at org.geoserver.web.admin.StatusPanel.initUI(StatusPanel.java:157) at >> org.geoserver.web.admin.StatusPanel.<init>(StatusPanel.java:84) at >> org.geoserver.web.admin.AbstractStatusPage$1.getPanel(AbstractStatusPage.java:45) >> at >> org.geoserver.web.admin.AbstractStatusPage$1.getPanel(AbstractStatusPage.java:41) >> at >> org.apache.wicket.extensions.markup.html.tabs.PanelCachingTab.getPanel(PanelCachingTab.java:67) >> at >> org.apache.wicket.extensions.markup.html.tabs.TabbedPanel.setCurrentTab(TabbedPanel.java:422) >> at >> org.apache.wicket.extensions.markup.html.tabs.TabbedPanel.setSelectedTab(TabbedPanel.java:397) >> at >> org.apache.wicket.extensions.markup.html.tabs.TabbedPanel.onBeforeRender(TabbedPanel.java:268) >> at org.apache.wicket.Component.internalBeforeRender(Component.java:950) at >> org.apache.wicket.Component.beforeRender(Component.java:1018) at >> org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1836) >> ... 122 more >> >> On 28 Jan 2019, at 09:57, Ian Turton <ijtur...@gmail.com> wrote: >> >> Please test out the release candidate for 2.15. This is your last chance >> to get any bugs fixed before the release of the new version, any that you >> miss you will end up having to live with for the next 2 months. >> >> Read all about the new features, improvements and bug fixes at >> http://blog.geoserver.org/2019/01/28/geoserver-2-15-rc-released/ >> >> Ian >> >> -- >> Ian Turton >> _______________________________________________ >> Geoserver-users mailing list >> >> Please make sure you read the following two resources before posting to >> this list: >> - Earning your support instead of buying it, but Ian Turton: >> http://www.ianturton.com/talks/foss4g.html#/ >> - The GeoServer user list posting guidelines: >> http://geoserver.org/comm/userlist-guidelines.html >> >> If you want to request a feature or an improvement, also see this: >> https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer >> >> >> Geoserver-users@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/geoserver-users >> >> >> _______________________________________________ >> Geoserver-users mailing list >> >> Please make sure you read the following two resources before posting to >> this list: >> - Earning your support instead of buying it, but Ian Turton: >> http://www.ianturton.com/talks/foss4g.html#/ >> - The GeoServer user list posting guidelines: >> http://geoserver.org/comm/userlist-guidelines.html >> >> If you want to request a feature or an improvement, also see this: >> https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer >> >> >> Geoserver-users@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/geoserver-users >> > > > -- > > Regards, Andrea Aime == GeoServer Professional Services from the experts! > Visit http://goo.gl/it488V for more information. == Ing. Andrea Aime > @geowolf Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054 > Massarosa (LU) phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 339 > 8844549 http://www.geo-solutions.it http://twitter.com/geosolutions_it > ------------------------------------------------------- *Con riferimento > alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 - > Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni > circostanza inerente alla presente email (il suo contenuto, gli eventuali > allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i > destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per > errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le > sarei comunque grato se potesse darmene notizia. This email is intended > only for the person or entity to which it is addressed and may contain > information that is privileged, confidential or otherwise protected from > disclosure. We remind that - as provided by European Regulation 2016/679 > “GDPR” - copying, dissemination or use of this e-mail or the information > herein by anyone other than the intended recipient is prohibited. If you > have received this email by mistake, please notify us immediately by > telephone or e-mail.* > -- Regards, Andrea Aime == GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information. == Ing. Andrea Aime @geowolf Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054 Massarosa (LU) phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 339 8844549 http://www.geo-solutions.it http://twitter.com/geosolutions_it ------------------------------------------------------- *Con riferimento alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 - Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni circostanza inerente alla presente email (il suo contenuto, gli eventuali allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le sarei comunque grato se potesse darmene notizia. This email is intended only for the person or entity to which it is addressed and may contain information that is privileged, confidential or otherwise protected from disclosure. We remind that - as provided by European Regulation 2016/679 “GDPR” - copying, dissemination or use of this e-mail or the information herein by anyone other than the intended recipient is prohibited. If you have received this email by mistake, please notify us immediately by telephone or e-mail.*
_______________________________________________ Geoserver-users mailing list Please make sure you read the following two resources before posting to this list: - Earning your support instead of buying it, but Ian Turton: http://www.ianturton.com/talks/foss4g.html#/ - The GeoServer user list posting guidelines: http://geoserver.org/comm/userlist-guidelines.html If you want to request a feature or an improvement, also see this: https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer Geoserver-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geoserver-users