﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-SkyWinder-随笔分类-Struts</title><link>http://www.blogjava.net/SkyWinder/category/13632.html</link><description>Just try to find my memorise...</description><language>zh-cn</language><lastBuildDate>Fri, 10 Aug 2007 00:13:44 GMT</lastBuildDate><pubDate>Fri, 10 Aug 2007 00:13:44 GMT</pubDate><ttl>60</ttl><item><title>Tiles框架的实现</title><link>http://www.blogjava.net/SkyWinder/archive/2006/08/22/65137.html</link><dc:creator>枫中玎玲</dc:creator><author>枫中玎玲</author><pubDate>Tue, 22 Aug 2006 11:28:00 GMT</pubDate><guid>http://www.blogjava.net/SkyWinder/archive/2006/08/22/65137.html</guid><wfw:comment>http://www.blogjava.net/SkyWinder/comments/65137.html</wfw:comment><comments>http://www.blogjava.net/SkyWinder/archive/2006/08/22/65137.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/SkyWinder/comments/commentRss/65137.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/SkyWinder/services/trackbacks/65137.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 实现Tiles框架的步骤。。。也许对你有所帮助哦～&nbsp;&nbsp;<a href='http://www.blogjava.net/SkyWinder/archive/2006/08/22/65137.html'>阅读全文</a><img src ="http://www.blogjava.net/SkyWinder/aggbug/65137.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/SkyWinder/" target="_blank">枫中玎玲</a> 2006-08-22 19:28 <a href="http://www.blogjava.net/SkyWinder/archive/2006/08/22/65137.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>搞定：Validator验证框架</title><link>http://www.blogjava.net/SkyWinder/archive/2006/08/09/62660.html</link><dc:creator>枫中玎玲</dc:creator><author>枫中玎玲</author><pubDate>Wed, 09 Aug 2006 14:52:00 GMT</pubDate><guid>http://www.blogjava.net/SkyWinder/archive/2006/08/09/62660.html</guid><wfw:comment>http://www.blogjava.net/SkyWinder/comments/62660.html</wfw:comment><comments>http://www.blogjava.net/SkyWinder/archive/2006/08/09/62660.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/SkyWinder/comments/commentRss/62660.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/SkyWinder/services/trackbacks/62660.html</trackback:ping><description><![CDATA[      今天终于把Validator验证框架看的差不多了，自己想想也应该写个测试了，动手开始：<br />      偶的IDE用的是EC＋MyEC，一开始就遇到问题，IDE不熟悉。。。差点找不到validation.xml的DTD文件。。。开始的标记全部自己手写了一遍，后来在朋友的帮助下，终于找到了DTD文件。（自己手写了一遍感觉要好很多，这样才能更好的理解每个标记的意义。。。强烈建议写XML文件的时候，第一次最好手写，而不要过分依赖IDE）<br />      首先把validation-rules.xml文件从struts包中copy到WebRoot下面，创建validation.xml文件，然后在struts-config.xml文件中添加如下配置：<br /><br />  &lt;message-resources parameter="com.anita.struts.ApplicationResources" /&gt;<br />   &lt;plug-in className="org.apache.struts.validator.ValidatorPlugIn"&gt;<br />        &lt;set-property property="pathnames" value="/WEB-INF/validator-rules.xml,<br />                                                  /WEB-INF/validation.xml"/&gt;<br />      &lt;/plug-in&gt;<br />注意位置哈：是在 &lt;message-resources &gt;标记的后面，这是指定validator-rules.xml文件和validation.xml文件的位置，因为Validator框架是以插件的形式存在于Struts框架中的，故需要在服务器启动时读取文件，所以需要如此配置。<br />      <br /><br />      然后编写validation.xml文件（程序员的任务）。（什么？有哪些标记都不知道，那你还是先赶快看看书吧）<br /><br /><br />      最后编写struts-config.xml文件，在这里，有两种选择，ValidatorForm和ValidatorActionForm两种FormBean，他们的区别在于：<br />      采用ValidatorForm时，Struts配置文件&lt;action&gt;元素的name属性与validation.xml文件中的&lt;form&gt;元素的name属性相对应。<br />      采用ValidatorActionForm时，Struts配置文件&lt;action&gt;元素的path属性与validation.xml文件中的&lt;form&gt;元素的name属性相对应。<br />以上两种FormBean应当按照实际情况选用。<br />      当然一般情况下大家使用Validator框架，主要目的就是不创建太多的FormBean,所以在这里，我们建议使用DynaValidatorForm和DynaValidatorActionForm，他们用于生成动态配置表单。<br />      DynaValidatorForm----------&gt;ValidatorForm<br />      DynaValidatorActionForm----------&gt;ValidatorActionForm<br /><br />HOHO以上只是偶在初步学习Validator验证框架时的一点心得，有更好的建议一定要提哦～～<img src ="http://www.blogjava.net/SkyWinder/aggbug/62660.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/SkyWinder/" target="_blank">枫中玎玲</a> 2006-08-09 22:52 <a href="http://www.blogjava.net/SkyWinder/archive/2006/08/09/62660.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>终于搞定：多模块的配置</title><link>http://www.blogjava.net/SkyWinder/archive/2006/07/31/61018.html</link><dc:creator>枫中玎玲</dc:creator><author>枫中玎玲</author><pubDate>Mon, 31 Jul 2006 06:57:00 GMT</pubDate><guid>http://www.blogjava.net/SkyWinder/archive/2006/07/31/61018.html</guid><wfw:comment>http://www.blogjava.net/SkyWinder/comments/61018.html</wfw:comment><comments>http://www.blogjava.net/SkyWinder/archive/2006/07/31/61018.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/SkyWinder/comments/commentRss/61018.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/SkyWinder/services/trackbacks/61018.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;好高兴，今天终于把Struts多模块的配置问题搞定，一个人看书摸索真的好痛苦，这个问题缠绕我三天了。。。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;流程：<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;首先在WEB-INF文件下建立一个你的相关模块的xml文件，有多少个模块，就创建多少个xml文件，每个xml文件对应一个模块。xml文件中配置了其相对模块的信息。注：一般xml文件的命名采用：struts-config-XXX.xml(XXX表示模块名字)<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;然后在web.xml文件声明这些模块：<br>默认模块：（必须的）<br>&nbsp;&nbsp;&nbsp; &lt;init-param&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param-name&gt;config&lt;/param-name&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param-value&gt;/WEB-INF/struts-config.xml&lt;/param-value&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/init-param&gt;<br><br>我的模块：<br>&nbsp;&nbsp;&nbsp; &lt;init-param&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&lt;param-name&gt;config/firstmodule&lt;/param-name&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&lt;param-value&gt;/WEB-INF/firstmodule/struts-config-firstmodule.xml&lt;/param-value&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/init-param&gt;<br>如上所示，该代码声名了一个叫firstmodule的模块，其中config的前缀是必须的：config/XXX，在&lt;param-value&gt;标记中录入该模块配置文件相对于WebRoot的路径。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;好了，到这里我们已经成功了一半了HOHO（happy一下）<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;最后哦，当然，有了模块不能访问，那拿模块来干嘛～<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;要访问模块内的资源，只需要在跳转到模块的时候前面加上模块名，<br>如：<br>&lt;forward name="to firstmodule"<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; contextRelative="true"<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; path="/firstmodule/firstmodule.do"<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; redirect="true"<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; &gt;<br>&lt;/forward&gt;<br>个人推荐这种方法，不喜欢用SwitchAction。<br>注意，在，模块中跳转时不需要加模块名。<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;模块给程序员带来了很多方便，让并行开发成为了可能（多个模块同时开始&lt;在大性项目中常常&gt;）<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;我在模块配置的时候调了三天多的代码才搞定，总是报空指针异常，郁闷了三天，最后终于找出来了，原来在我重定向的网页的Action中，我作了取出信息的操作，而此时从默认模块跳转过来，并未有任何信息，而我在后面代码中又把存储该信息的变量取出来进行比较，（居然用null去比较，我发现我真的细心的可以了。。。）以后不能犯如此恶心的问题了，加油～ 
<img src ="http://www.blogjava.net/SkyWinder/aggbug/61018.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/SkyWinder/" target="_blank">枫中玎玲</a> 2006-07-31 14:57 <a href="http://www.blogjava.net/SkyWinder/archive/2006/07/31/61018.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>