appfuse 1.9.4 学习心得 -Ant脚本简化-AppGen

AppGen
1、在AppGen中没有能够生成Struts的Form
在gen的target的中,添加生成Struts Form的子任务
        <!-- generate struts forms -->
        <xdoclet destdir="${build.dir}/${gen.dir}/web" excludedtags="@version,@author"
            addedtags="@xdoclet-generated at ${TODAY}" force="${xdoclet.force}"
            mergedir="metadata/web">
            <fileset dir="F:\\Java\\Eclipse\\Space\\appfuse\\WEB-INF\\src"/>

            <configParam name="basePackageName" value="org.appfuse"/>

            <!-- generate struts forms -->
            <actionform templateFile="${template.dir}/generic/struts_form.xdt">
                <packageSubstitution packages="model" substituteWith="webapp.form"/>
            </actionform>
        </xdoclet>

2、在AppGen中没有能够生成struts-config.xml
在gen的target中添加生成Struts-config.xml的子任务。
        <taskdef name="webdoclet" classname="xdoclet.modules.web.WebDocletTask">
            <classpath>
                <path refid="xdoclet.classpath"/>
                <path refid="web.libs.classpath"/>
            </classpath>
        </taskdef>
        <webdoclet destdir="build/gen/web/WEB-INF" force="true"
            mergedir="metadata/web" excludedtags="@version,@author" verbose="true">
            <fileset dir="${model.src.dir}"/>
            <strutsconfigxml validateXML="true" version="1.2"/>
            <strutsvalidationxml version="1.1.3"/>
        </webdoclet>
其中需要注意的是web.libs.classpath,一开始我没有添加这些库,结果无法正确生成配置文件。
在Appfuse中,大多数的Action是继承BaseAction的,只有UploadAction是直接继承Struts的Action;在没有添加库文件时,生成的struts-config.xml只包含一个UploadAction的映射。
添加完整的库文件后,才能生成正确的配置文件。

最后整理一下,使用AppGen生成的文件:

1、ApplicationContext-hibernate.xml中添加personDao的配置,ApplicationContext-service.xml中添加personManager的配置
2、PersonDaoHibernate.java,PersonManager.java,PersonManagerImpl.java,PersonAction.java,PersonForm.java,PersonAction.java
3、PersonForm.jsp,PersonList.jsp
4、struts-config.xml覆盖
5、menu-config-Person.xml合并到menu-config.xml中,menu-Person.jsp添加到common\menu.jsp中
6、sample-data-Person.xml,用于测试的数据



你可能感兴趣的:(appfuse 1.9.4 学习心得 -Ant脚本简化-AppGen)