随笔-37  评论-58  文章-4  trackbacks-0
      好高兴,今天终于把Struts多模块的配置问题搞定,一个人看书摸索真的好痛苦,这个问题缠绕我三天了。。。
      流程:
      首先在WEB-INF文件下建立一个你的相关模块的xml文件,有多少个模块,就创建多少个xml文件,每个xml文件对应一个模块。xml文件中配置了其相对模块的信息。注:一般xml文件的命名采用:struts-config-XXX.xml(XXX表示模块名字)

      然后在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/firstmodule</param-name>
     <param-value>/WEB-INF/firstmodule/struts-config-firstmodule.xml</param-value>
    </init-param>
如上所示,该代码声名了一个叫firstmodule的模块,其中config的前缀是必须的:config/XXX,在<param-value>标记中录入该模块配置文件相对于WebRoot的路径。
      好了,到这里我们已经成功了一半了HOHO(happy一下)

      最后哦,当然,有了模块不能访问,那拿模块来干嘛~
      要访问模块内的资源,只需要在跳转到模块的时候前面加上模块名,
如:
<forward name="to firstmodule"
         contextRelative="true"
         path="/firstmodule/firstmodule.do"
         redirect="true"
         >
</forward>
个人推荐这种方法,不喜欢用SwitchAction。
注意,在,模块中跳转时不需要加模块名。

      模块给程序员带来了很多方便,让并行开发成为了可能(多个模块同时开始<在大性项目中常常>)
      我在模块配置的时候调了三天多的代码才搞定,总是报空指针异常,郁闷了三天,最后终于找出来了,原来在我重定向的网页的Action中,我作了取出信息的操作,而此时从默认模块跳转过来,并未有任何信息,而我在后面代码中又把存储该信息的变量取出来进行比较,(居然用null去比较,我发现我真的细心的可以了。。。)以后不能犯如此恶心的问题了,加油~
posted on 2006-07-31 14:57 枫中玎玲 阅读(427) 评论(1)  编辑  收藏 所属分类: Struts

评论:
# re: 终于搞定:多模块的配置 2007-11-05 09:30 | 熊有为
大哥 你能告诉我你这段代码是写到哪里的吗?
<forward name="to firstmodule"
contextRelative="true"
path="/firstmodule/firstmodule.do"
redirect="true"
>
</forward>
还有 页面提交到子模块的action 在form 的action地址中写什么呢
我现在也碰到多模块的问题
不知道怎么解决 谢谢你了  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航: