冰面上的火焰

          Jasperreport報表在Linux下無法顯示

          ?? 近日,我們使用Jasperreport給用戶開發了一套報表系統,使用的是PDF格式的報表,系統部署在RedHat Linux9上,在系統測試過程中,沒有發現任何問題。系統上線后,用戶發現報表無法使用,系統報出以下錯誤:
          ?
          javax.servlet.ServletException: Can't connect to X11 window server using ':0.0' as the value of the DISPLAY variable.
          ?
          ??????經過分析得知,該錯誤是由于Jasperreport程序在轉換為PDF時,采用了AWT方式,而AWT會調用操作系統本地窗口資源圖,由于我們測試時,系統運行在X window下,所以報表能夠正常運行,而上線運行后,由于考慮到系統的穩定性,將系統運行在文本界面下,導致了該問題。
          ????? 找到問題所在,就可以著手解決,解決的方法也很簡單,就是讓JVM啟動時不檢測圖形界面,由于我們是用的是Tomcat,所以在 /tomcat/bin/catalina.sh 中添加以下的啟動參數,即:
          ????? CATALINA_OPTS='-Djava.awt.headless=true'
          ?
          ????? 如果使用的不是Tomcat系統,可在啟動JVM的地方添加:
          ????? JAVA_OPTS='-Djava.awt.headless=true'
          ????? 然后重新啟動Tomcat,問題解決。
          ?
          ????? 注意:-Djava.awt.headless=true這個參數是在jdk1.4.1以后才引入的,如果系統使用的JDK是1.4以下的版本,可以參考
          http://java.sun.com/products/java-media/2D/forDevelopers/java2dfaq.html#xvfb

          posted on 2006-11-24 18:00 GuanHui 閱讀(797) 評論(0)  編輯  收藏 所屬分類: 其他

          主站蜘蛛池模板: 榆社县| 崇仁县| 黎平县| 永新县| 高尔夫| 宁都县| 弥渡县| 油尖旺区| 枣庄市| 仙游县| 宁晋县| 天祝| 崇州市| 霞浦县| 山东| 德州市| 额济纳旗| 类乌齐县| 全南县| 色达县| 关岭| 光泽县| 甘谷县| 临江市| 邛崃市| 刚察县| 正蓝旗| 婺源县| 盐源县| 八宿县| 陕西省| 宣化县| 固阳县| 彩票| 高雄市| 盐津县| 上蔡县| 宝应县| 兴化市| 大方县| 孟津县|