Plot Image creation requires X11 connection, X11 not running on server
Added by Kushan Gunaratne over 9 years ago
Application was not possible to do anything as jWt got blocked by the following error:
Exception in thread "http-bio-8085-exec-6" java.lang.InternalError: Can't connect to X11 window server using 'localhost:10.0' as the value of the DISPLAY variable.
at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method)
at sun.awt.X11GraphicsEnvironment.access$200(Unknown Source)
at sun.awt.X11GraphicsEnvironment$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at sun.awt.X11GraphicsEnvironment.<clinit>(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at java.awt.GraphicsEnvironment.createGE(Unknown Source)
at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(Unknown Source)
at java.awt.image.BufferedImage.createGraphics(Unknown Source)
at eu.webtoolkit.jwt.WRasterPaintDevice.init(WRasterPaintDevice.java:203)
at eu.webtoolkit.jwt.WPainter.begin(WPainter.java:174)
at eu.webtoolkit.jwt.WPainter.<init>(WPainter.java:153)
at be.induct.datamanager.client.util.PlotImage.createPlotImage(PlotImage.java:36)
at be.induct.datamanager.client.component.visualize.VisualizeOverviewView.plotOnePanel(VisualizeOverviewView.java:1213)
at be.induct.datamanager.client.component.visualize.VisualizeOverviewView.lists(VisualizeOverviewView.java:217)
at be.induct.datamanager.client.component.VisualizationComponent.populateSubMenu(VisualizationComponent.java:17)
at be.induct.datamanager.client.template.DatamanagerTemplate.addToMenu(DatamanagerTemplate.java:418)
at be.induct.datamanager.client.template.DatamanagerTemplate.<init>(DatamanagerTemplate.java:120)
at be.induct.datamanager.client.DatamanagerMain.createApplication(DatamanagerMain.java:131)
at eu.webtoolkit.jwt.WtServlet.doCreateApplication(WtServlet.java:298)
at eu.webtoolkit.jwt.WebSession.start(WebSession.java:2149)
at eu.webtoolkit.jwt.WebSession.handleRequest(WebSession.java:1500)
at eu.webtoolkit.jwt.WtServlet.doHandleRequest(WtServlet.java:368)
at eu.webtoolkit.jwt.ServletApi.handleRequest(ServletApi.java:27)
at eu.webtoolkit.jwt.ServletApi3.doHandleRequest(ServletApi3.java:98)
at eu.webtoolkit.jwt.WtServlet.handleRequest(WtServlet.java:255)
at eu.webtoolkit.jwt.WtServlet.doGet(WtServlet.java:263)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1008)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
I would like to know if X11 is really necessary or if it can be avoided.
Please help.
Kushan
Replies (1)
RE: Plot Image creation requires X11 connection, X11 not running on server - Added by Koen Deforche over 9 years ago
Kushan,
You need to configure your JVM to be headless.
http://www.oracle.com/technetwork/articles/javase/headless-136834.html
Regards,
koen