Java, Only Java!

          統計

          留言簿(20)

          積分與排名

          好友空間

          文檔技巧

          閱讀排行榜

          評論排行榜

          “文檔要求有且只有一個根元素”錯誤原因分析

          Apusic應用服務器在啟動時報錯“文檔要求有且只有一個根元素”,一般是因為修改了config目錄下面的基于XML格式定義的配置文件,修改后沒有采用正確的格式保存而導致出現問題。
          全部錯誤內容如下:
          2007-09-11 13:28:16 致命 [apusic.server.Main] 裝載服務配置失敗。
          javax.management.ServiceNotFoundException: 在分析 URL "file:/C:/Apusic/Apusic-4.0.3/config/apusic.conf" 時出現問題:
          file:/C:/Apusic/Apusic-4.0.3/config/apusic.conf: line 1: 文檔要求有且只有一個根元素。
          ??????? at com.apusic.service.ServiceManager.loadServicesFromURL(Unknown Source)
          ??????? at com.apusic.server.J2EEServer.start(Unknown Source)
          ??????? at com.apusic.server.J2EEServer.startup(Unknown Source)
          ??????? at com.apusic.server.Main.main(Unknown Source)無法被XML Parser正確解析的原因分析如下:

          ×Apusic V4.0.3版本
          情況分析:
          使用記事本(Notepad)打開XML文件后采用UTF-8格式保存了文件,于是保存時會在文件前面自動增加EF BB BF三個字節的內容,作為Unicode的Signature,導致Apusic的XML解析器無法正確讀出從而報錯,但是無論采用何種編輯器打開文件都無法看到這三個字節,使得問題原因非常難以查找。

          解決方案:
          1. 最簡單的辦法就是找到那個配置文件,經常修改的就三個文件:apusic.conf、databases.xml、server.xml,例如上面的錯誤代碼中的就是apusic.conf文件;
          2. 使用Notepad打開后,另存為ANSI的格式。
          ??? 或者,使用EmEditor打開后將文件另存,另存時將“Add a Unicode Signature”選擇取消,保存后就可以正常使用。

          ×Apusic V5.0版本
          不存在這個問題。


          另:其他XML解析中也可能出現這樣的錯誤,原理應該相同。?
          ????????這個是JDK的Bug,在最新的Apusic V4.0.3版本中已經修復。

          posted on 2007-09-11 13:45 zYx.Tom 閱讀(835) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 白朗县| 黎城县| 南开区| 噶尔县| 钟祥市| 永平县| 长垣县| 滦平县| 清远市| 赤水市| 昭通市| 安平县| 蕉岭县| 上林县| 通许县| 洪湖市| 安岳县| 当阳市| 龙川县| 牡丹江市| 贡嘎县| 大宁县| 阿图什市| 合水县| 岫岩| 灌阳县| 黑龙江省| 邹城市| 逊克县| 舒兰市| 特克斯县| 安阳市| 杂多县| 镇江市| 会同县| 嵩明县| 武乡县| 尚志市| 靖宇县| 垫江县| 宁波市|