`
steveoyung
  • 浏览: 28384 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

Struts2 conventionplugin + spring 自动扫描jar包中的action

阅读更多
首先在struts.xml中设置以下常量设置:

 

    设置Convention插件是否从jar包中搜索Action类 [可选] 默认值为true

 

    <constant name="struts.convention.action.disableJarScanningvalue="true" />
    设置Convention插件文件协议类型
    <constant name="struts.convention.action.fileProtocolsvalue="jar,wsjar" />
    设置Convention插件需要搜索的jar包
    <constant name="struts.convention.action.includeJarsvalue=".*?/struts2-action*.*?jar(!/)?" />

 

    该常量指定包作为根包来搜索Action类。

 

    Convention插件除了扫描默认的action,actions,struts,struts2,还会扫描该常量指定的一个或多个包,

 

    Convention会试图从指定包中发现Action类。

    <constant name="struts.convention.action.packagesvalue="com.home.prog" />

设置完常量后,还要保证打出来包要符合搜索条件,之前我就是问题出在了这里,由于我是用的maven构建的项目,于是在pom.xml配置文件中加入了以下打包参数:

 

    <build>

 

        <plugins>

 

            <plugin>

 

                <groupId>org.apache.maven.plugins</groupId>

 

                <artifactId>maven-jar-plugin</artifactId>

 

                <version>2.3.1</version>

 

                <configuration>

 

                    <archive>

 

                        <addMavenDescriptor>false</addMavenDescriptor>

 

                        <manifest>

 

                            <addDefaultImplementationEntries>true</addDefaultImplementationEntries>

 

                            <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>

 

                        </manifest>

 

                    </archive>

 

                </configuration>

 

            </plugin>

 

        </plugins>

 

    </build>

 

 

 

运用maven打包出来的jar中包含了 META-INF 目录

 

然后启动程序,顺利找到jar包中的Action

 

 

 

为了看到struts2应用里的Action等各种资源的影射情况,struts2提供了Config Browser插件。

 

使用方法,将struts2-config-browser-plugin插件引入到项目中

 

    <dependency>
            <groupId>org.apache.struts</groupId>
            <artifactId>struts2-config-browser-plugin</artifactId>
            <version>${struts2.version}</version>
    </dependency>

 

打开首页地址:http://localhost:端口/发布应用名称/config-browser/actionNames.action这里可以看到Config Browser插件的首页。

注:在编辑器调试布置程序中打出来的包中并不包含 META-INF 目录,struts2不能搜索到jar中的Action。

 

 

 

具体配置:

<constant name="struts.i18n.encoding" value="UTF-8" />
    <constant name="struts.i18n.reload" value="true" />
    <constant name="struts.locale" value="zh_CN" />
    <constant name="struts.serve.static.browserCache" value="false" />
    <constant name="struts.ui.theme" value="simple" />
    <constant name="struts.url.includeParams" value="none" />
    <constant name="struts.multipart.saveDir" value="/tmp" />
   
    <constant name="struts.objectFactory" value="spring" />
    <constant name="struts.enable.DynamicMethodInvocation" value="true" />
   
    <constant name="struts.convention.classes.reload" value="true"/>
    <constant name="struts.convention.action.disableJarScanning" value="true"/>
    <constant name="struts.convention.action.packages" value="com.crunii" />
     <constant name="struts.convention.action.fileProtocols" value="jar,wsjar" />
     <constant name="struts.convention.action.includeJars" value=".*?/uie-*.*?jar(!/)?" />
    
    <constant name="struts.convention.result.path" value="/WEB-INF/pages" />
    <constant name="struts.convention.default.parent.package" value="uie-default" />
   
    <package name="uie-default" extends="convention-default" namespace="/">

 

分享到:
评论

相关推荐

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (1)

    12.6 整合Struts、Spring和Hibernate实现用户管理 12.6.1 Struts、Spring和Hibernate的整合方式 12.6.2 编写用户注册画面regedit.jsp 12.6.3 编写用户登录画面login.jsp 12.6.4 编写注册控制器RegeditAction.java ...

    Struts2+Spring+Hibernate+Ehcache+AJAX+JQuery+Oracle 框架集成用户登录注册Demo工程

    2.Action里通过struts2-spring-plugin.jar插件自动根据名字注入。 3.Ajax无刷新异步调用Struts2,返回Json数据,以用户注册为例。 4.在服务端分页查询功能,优点:实时性:跳页才查询。数据量小:只加载当前页的记录...

    struts2+hibernate+spring+ibatis 小实例

    struts2+hibernate+spring+ibatis 小实例struts2+hibernate+spring+ibatis 小实例struts2+hibernate+spring+ibatis 小实例struts2+hibernate+spring+ibatis 小实例struts2+hibernate+spring+ibatis 小实例struts2+...

    struts2 + spring + mybatis 框架整合jar包

    1、在新建的项目上点右键,然后选择MyEclipse-&gt;Add Struts capabilities 2、在struts配置窗口中选择struts 2.1,然后...当然了,myeclipse还做了一件事情,就是把支持struts2的jar包都导入到工程中。 3、编写action类

    Myeclipse开发struts+hibernate+spring新手入门--环境配置---项目开发示例

    同加载struts方式类似,选择Myeclipse后在弹出的二级菜单中选择Add spring in action in action Capabilities…后提示如下图所示: 选择所需要的spring in action in action包,然后默认下一步,直到完成。 到此...

    struts2+spring2+ibates

    1、不要缺少jar 包。 2、在sping配置中注意单元测试里,xml文件的路径问题,要用绝对路径。 3、struts.xml中命名空间和拦截器的使用。 4、sqlmapconfig.xml中传入参数和result的设置,只需要将得到的值result映射到...

    struts+habernate+spring

    把LoginAction中的login和regist方法都配置成逻辑Action。要调用login方法,则相应的把index.jsp中表单元素的action设置

    struts2+Hibernate+Spring学习示例

    struts2+Hibernate+Spring 示例 目的:构建struts2开发框架 使用 Hibernate作为持久层操作 采用Spring容器 适合:有一定struts2基础 对Hibernate有一定的了解 对Spring有一定的知识 实现:通过对用户信息的基本...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (2)

    12.6 整合Struts、Spring和Hibernate实现用户管理 12.6.1 Struts、Spring和Hibernate的整合方式 12.6.2 编写用户注册画面regedit.jsp 12.6.3 编写用户登录画面login.jsp 12.6.4 编写注册控制器RegeditAction.java ...

    struts2+hibernate3.2+spring2.5整合示例

    做了一个ssh2的整合示例,删除了示例中的jar包,资源太大传不上,该示例采用的目前主流的技术struts2.1+hibernate3.2+spring2.5 的整合开发,示例采用面向接口的设计开发模式,使用spring来管理hibernate的事务,...

    (2.0版本)自己写的struts2+hibernate+spring实例

    该项目使用的jar包为以下. spring-beans.jar xwork-2.0.4.jar spring-context.jar ognl-2.6.11.jar spring-web.jar spring-core.jar struts2-core-2.0.11.1.jar commons-logging-...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (3)

    12.6 整合Struts、Spring和Hibernate实现用户管理 12.6.1 Struts、Spring和Hibernate的整合方式 12.6.2 编写用户注册画面regedit.jsp 12.6.3 编写用户登录画面login.jsp 12.6.4 编写注册控制器RegeditAction.java ...

    Struts2 + Spring2.5 + JFreeChart 实现的投票系统,2008年高考作文评价投票

    1、开发环境:MyEclipse6.0, Struts 2.0.11, Spring2.5.4, struts2-spring-plugin-2.0.11.1,JFreeChart 1.0.9, JCommon 1.0.12,struts2-jfreechart-plugin-2.0.11.1,JDK1.5+ 2、下载地址: ...

    Struts1.2+Spring2.5+Hibernate3.2+Jmesa2.4.3+Jmesatag实例2分页A

    一个Struts1.2+Spring2.5+Hibernate3.2+Jmesa2.4.3+JmesaTag实现的强大分页控件例子 里 面有action实现分页和标签实现分页2个例子 action实现的分页 包括了表头排序,导出为PDF,TXT, excel等格式 jar包和数据库...

    JQuery1.4.2+Struts2.1.8+JSON0.34+Spring2.5.6+Hibernate3.5+XFire1.2.6整合实例

    1、JSON0.34使用的是struts2附带的struts2-json-plugin-2.1.8.1.jar 2、db是mysql,名字为test,用户名root,密码空 3、com.morningstar.utility.WSUtility为调用WebService的客户端代码,在调用这个WebService返回...

    eclipse下struts2+spring+ibatis例子

    参考一下链接,修改了下,做了个例子 http://shiningwu.javaeye.com/blog/184117 差别在于action没有继承ModelDriven,并且把所有需要的jar包都打包了,实现了登陆,修改,删除,一览功能 工具为mysql + tomcat6

    干净的struts2+spring+proxool架子

    struts2.2.1 spring2.5.6 proxool0.9.1 jstl1.2 说明:demo实现了最简单的取值,数据库操作。 没有使用hibernate和ibatis。自己写了个基类,包装了获取链接和释放链接。 从action返回后,使用了jstl获取action中的...

    Struts+Spring+Hibernate补充内容

    中的asm-2.2.3.jar和commons-collections-2.1.1.jar 文件删除,否则会引起类冲突 分离配置文件: 在src目录下创建多个xml文件,分别配制项目中的 action,dao,manage,common(sessionfactory,事务,AOP) 以相同的前缀...

    hibernate+struts2+spring+maven

    ssh整合源代码+maven+mysql,全文注解方式写 tomcat访问请http://localhost:8080/项目名称/类名!方法名.action,设计模式采用最新技术。maven下载jar可能下载不完整,请耐心下载多几次,代码绝对正确

Global site tag (gtag.js) - Google Analytics