这篇文章主要是介绍在eclipse 平台中是如何支持xml开发的,着重讲解的是xmlbuddy插件。
这里只介绍不要money的一种,就是xmlbuddy,它主要提供是有关dtd方面的验证、代码助手等功能;还有一种是要money的,是xmlbuddy pro,它相对于xmlbuddy来说,扩展了许多功能,比如对schema、xslt、relax ng 的支持。对于xml的一般编写,xmlbuddy已经够用了,而且它是免费的,很容易得到,所以这里就着重谈谈它了。
一、下载与安装
1. 下载
xmlbuddy的主页地址是:http://www.xmlbuddy.com/
下载要注意是xmlbuddy,不是xmlbuddy pro。这里给出一个下载地址,是xmlbuddy 2.0.38版本的:
http://xmlbuddy.com/2.0/78945789020508924908525/8902390238490587584751/xmlbuddy_2.0.38.zip
注意:这个版本匹配的是eclipse 3.0.1-3.1m5。
为了讲解方便,我使用的eclipse的版本是3.0.1,并且安装了中文语言包,没有安装其它插件。如图:

2. 安装
安装xmlbuddy 2.0.38
先解压这个下载的文件,然后将com.objfac.xmleditor_2.0.38这个目录复制到eclipse安装目录下的plugins目录中即可;或者采用links方式安装也可以。
再次启动eclipse,应该可以发现xmlbuddy已经安装了。

3. 定制
如果要定制xmlbuddy,可以通过 窗口 ->首选项 ->xmlbuddy 来修改:

二、使用xmlbuddy
下面开始讲解如何使用xmlbuddy:
? 新建一个名称为“xmlbuddydemo”的java项目,然后建立一个web.xml文件。如下:
<?xml version="1.0" encoding="gbk"?>
<!doctype web-app
public "-//sun microsystems, inc.//dtd web application 2.3//en"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>
? 如果此时没有连接因特网的话,如下图:

这时,如果你输入代码,也不会出现代码提示的功能。
? 连接因特网,重新打开web.xml文件,停顿片刻(xmlbuddy会自动下载web-app_2_3.dtd),然后如图进行操作:

还可以使用“alt+/”进行代码提示。
? 完成后的代码:
<?xml version="1.0" encoding="gbk"?>
<!doctype web-app
public "-//sun microsystems, inc.//dtd web application 2.3//en"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
<error-page>
<error-code>
404
</error-code>
<location>
/error.jsp
</location>
</error-page>
</web-app>
怎么样,方便吧!
补充:
如果你打开eclipse目录/workspace/.metadata/.plugins/com.objfac.xmleditor/.cache 下的“f1”文件(不一定是f1这个名称,可能是f2、f3等名称),会发现这个文件就是web-app_2_3.dtd。
? 如果不能连接因特网,或者名称空间中所含的链接是失效的,可以先通过别的途径取得web-app_2_3.dtd文件,比如将它放在d:/xml目录下,然后直接引用即可,如下:
<?xml version="1.0" encoding="gbk"?>
<!doctype web-app
public "-//sun microsystems, inc.//dtd web application 2.3//en"
"file:///d:/xml/web-app_2_3.dtd">
<web-app>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>
你可以试试将名称空间(即!doctype标记)去掉,一样是可以部署在tomcat中的。
? xmlbuddy还有其它功能,比如“格式化”代码。

三、一些题外话
其它插件,比如lomboz、jboss-ide等虽然也可以编辑xml文件,但就其性能来说,不如xmlbuddy,这里也就不多说了。
但有一点要注意,当安装多个插件后,xml文件的默认打开方式不一定是xmlbuddy了(这是安装jboss-ide后的结果),这时,可以选中要打开的xml文件,右击,选择xmlbuddy打开,当下次再打开这个xml文件时,eclipse会默认调用xmlbuddy来操作。当然,也可以选择其它插件打开。你还可以通过修改xml文件的默认打开方式来进行操作(窗口 ->首选项 ->工作台 ->文件关联),甚至可以调用一个外部软件(比如 xml spy)操作xml文件(如果你认为这些插件都不合心意的话)。

总的来说,xmlbuddy对于xml文档类型为dtd的文件来说,操作还是很不错的,但对于xml文档类型为w3c xml schema模式的文件来说,就不太好了,当然,你可以使用xmlbuddy pro版本编辑,不过似乎也不大好用。还好,大部分还是dtd的,这样xmlbuddy还是有的用的。
现在,eclipse下有一个项目,是“eclipse web tools platform project”,当前版本是 1.0m3,主要是用来开发j2ee及web方面的应用的,当然可以编辑xml文件了。试用了一下还是很不错的,下面给个图来给大家解解渴:

其实,我一直认为,xml文件是程序与程序进行交流的一种方式,但不应该是程序与程序员进行交流的一种方式。我总觉得它太罗嗦了,真是受不了,跟唐僧似的(开个玩笑,放松放松)。所以我一般不大情愿编写xml文件,经常是利用xdoclet来生成xml文件。这些都是题外话了,就不罗嗦了。
闽公网安备 35060202000074号