http://yulimin.javaeye.com/blog/24495
关键字: XML DTD XSD 校验
XMLSpy编辑工具中如何设置XML的DTD/XSD校验指向本地,而不要直接指向网络去? 前提:在不修改XML的条件下,修改XML的,不要这个,这个变态的谁都会。。。 其它的工具及另外的方法如下,但是想获取到类似XMLBuddy的cache一样的功能。何办? XMLBuddy 由于打开XML文件时会根据XML文件里定义的DTD去网上查找相应的DTD文件,这样导至打开的时候会相当慢,特别是如果你的机器上不了外网的话,就更慢了。 解决的办法有两个: 一、在本机开启Web服务(如Tomcat等等),并设置端口为80,然后根据DTD 的目录结构建立相应的结构,并把DTD文件放进去。然后在hosts文件里把本机的地址映射到相应的DTD指定的网站去,如: 代码
这样打开XML文件时就会在本机寻找DTD文件进行验证,速度就快很多了 二、打开XMLBuddy插件的安装目录,并找到其中的cache目录,比如:%ECLIPSE_HOME%/PlugInsNew/xmlbuddy/eclipse/plugins/com.objfac.xmleditor_2.0.72/.cache 打开meta.xml文件,一看就知道怎么处理了吧,如法炮制,选把DTD文件拷贝到这个cache目录里,再增加内容到meta.xml里来,比如: 代码
要增加其它的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的
代码
- <!--Java Section-->
下增加一行
代码
- <public publicId="-//SPRING//DTD BEAN//EN" uri="schemas/java/spring-beans.dtd"/>
保存,重新打个XMLSpy即可进行验证了。
其它的DTD/XSD等文件如法炮制即可。