天天看点

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等文件如法炮制即可。