Привет,
написал простенькую программку на яве, которая получает на вход скомпилированный темплейт, и выплевывает Excel документ. Никаких тебе гуи, чисто консольное приложение.
Все работает.
Только вот попутка запустить под Linux, с неправильно выставленной переменной окружения DISPLAY, программка вываливается по исключению.
Exception in thread "main" java.lang.InternalError: Can't connect to X11 window server using ':100' as the value of the DISPLAY variable.
at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method)
at sun.awt.X11GraphicsEnvironment.access$000(X11GraphicsEnvironment.java:53)
at sun.awt.X11GraphicsEnvironment$1.run(X11GraphicsEnvironment.java:142)
at java.security.AccessController.doPrivileged(Native Method)
at sun.awt.X11GraphicsEnvironment.<clinit>(X11GraphicsEnvironment.java:131)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:164)
at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:68)
at net.sf.jasperreports.engine.util.JRStyledTextParser.<clinit>(JRStyledTextParser.java:83)
at net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:174)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:74)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:56)
at net.sf.jasperreports.engine.fill.JRFiller.createFiller(JRFiller.java:143)
at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:53)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:417)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:247)
at JRLauncher.execute(JRLauncher.java:46)
at JRLauncher.main(JRLauncher.java:143)
Неужели у JasperReports привязка к гуи? А то я тут неделю ковырялся, пробовал, радовался, а тут такое. Потом это все должно будет работать на unix сервере где иксами и не пахнет, а будет ли работать? Что я делаю не так?
Спасибо