下面就说下在MyEcliopse中如何建立和使用多个struts-config文件。
1、
在web-info中新建一个struts mode,具体操作为:右键选择“new”|“other”,在弹出的新建对话框中选择“My Eclipse”|“Web-Struts”|“Struts1.1”|“Struts1.1 Mode”,当然,前提是你使用的Struts为1.1了,如果你的工程还没配Struts,那么就选中工程名,然后选择“MyEclipse”|“Add Struts Capabilities”进行配置,具体步骤不详谈了。
2、
继续来说添加Struts的问题。选中Struts1.1 Mode之后,点击Next,在弹出的窗口中选择工程,然后输入Mode的名称,Config Path就自动生成了。
3、
点击Finish,这样Web-Info中就多出一个Struts-ConfigXXX.xml的文件,同时web.xml也自动添加了一些东西:
<
init-param
>
<
param-name
>
config/zhang
</
param-name
>
<
param-value
>
/WEB-INF/struts-config-zhang.xml
</
param-value
>
</
init-param
>
4、
这样的话,在用MyEclipse创建Form和Action时选择这个Struts-Config就可以使用了,需要注意的是,在Form 的Action中需要加上Mode名称,如:<Form action=”zhang/testAction.do”>。但经过我的实验发现,当表单所在的jsp页面根目录下时是可以正常使用,但如果它是在某个子目录下,就报错误。经过反复实验,总算找到了解决方案:把原来Web.xml中的代码
<
init-param
>
<
param-name
>
config
</
param-name
>
<
param-value
>
/WEB-INF/struts-config.xml
</
param-value
>
</
init-param
>
<
init-param
>
<
param-name
>
config/zhang
</
param-name
>
<
param-value
>
/WEB-INF/struts-config-zhang.xml
</
param-value
>
</
init-param
>
改为:
<
init-param
>
<
param-name
>
config
</
param-name
>
<
param-value
>
/WEB-INF/struts-config.xml
,
/WEB-INF/struts-config-zhang.xml
</
param-value
>
</
init-param
>
这样,这两个Struts-Config就位于一个Mode之下了,在使用的时候也就不用考虑Mode名称的问题了。需要注意的是,两个Struts-Config之间用逗号隔开。
到此,多个Struts-Config就基本上完成了,在使用时(用Eclipse创建Form时)选择你要用的Struts-Config就OK了。