天天看點

XMLSpy編輯工具中設定XML的DTD/XSD校驗指向本地,而不要直接指向網絡去

<a href="http://yulimin.javaeye.com/blog/24495">http://yulimin.javaeye.com/blog/24495</a>

關鍵字:   xml dtd xsd 校驗    

xmlspy編輯工具中如何設定xml的dtd/xsd校驗指向本地,而不要直接指向網絡去?

前提:在不修改xml的條件下,修改xml的,不要這個,這個變态的誰都會。。。

其它的工具及另外的方法如下,但是想擷取到類似xmlbuddy的cache一樣的功能。何辦?

  xmlbuddy

  由于打開xml檔案時會根據xml檔案裡定義的dtd去網上查找相應的dtd檔案,這樣導至打開的時候會相當慢,特别是如果你的機器上不了外網的話,就更慢了。

  解決的辦法有兩個:

  一、在本機開啟web服務(如tomcat等等),并設定端口為80,然後根據dtd 的目錄結建構立相應的結構,并把dtd檔案放進去。然後在hosts檔案裡把本機的位址映射到相應的dtd指定的網站去,如:

代碼

  127.0.0.1 www.springframework.org   

  這樣打開xml檔案時就會在本機尋找dtd檔案進行驗證,速度就快很多了

  二、打開xmlbuddy插件的安裝目錄,并找到其中的cache目錄,比如:%eclipse_home%/pluginsnew/xmlbuddy/eclipse/plugins/com.objfac.xmleditor_2.0.72/.cache

  打開meta.xml檔案,一看就知道怎麼處理了吧,如法炮制,選把dtd檔案拷貝到這個cache目錄裡,再增加内容到meta.xml裡來,比如:

&lt;file&gt;  

&lt;pub&gt;-//spring//dtd  bean//en&lt;/pub&gt;  

&lt;abs&gt;http://www.springframework.org/dtd/spring-beans.dtd&lt;/abs&gt;  

&lt;rel&gt;spring-beans.dtd&lt;/rel&gt;  

&lt;/file&gt;  

  要增加其它的dtd檔案方法類似,不斷地增加說明與dtd檔案即可。

  于是在編輯xml檔案時就會有相關的提示及錯誤提示資訊,可以減少一些書寫xml檔案時發生的低級錯誤了。

在xmlspy裡一直沒有找到這個相應的功能,有誰知道嗎?

問題得到解決,方法總結如下:

安裝主目錄假定為%xmlspy_home%

1、在%xmlspy_home%/下有個maincatalog.xml,修改屬性為可寫,并打開,就知道如何象xmlbuddy炮制了。

2、将你的dtd如spring-beans.dtd拷貝%xmlspy_home%/schemas/java/目錄下;

3、在maincatalog.xml的

&lt;!--java section--&gt;   

下增加一行

&lt;public publicid="-//spring//dtd bean//en" uri="schemas/java/spring-beans.dtd"/&gt;   

儲存,重新打個xmlspy即可進行驗證了。

其它的dtd/xsd等檔案如法炮制即可。