精华帖 (0) :: 良好帖 (1) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-10-11
Struts2 集成 Spring 需要以下几个步骤 1 加入struts2-spring-plugin-2.0.9.jar到项目中(web项目就是丢到/WEB-INF/lib中) 2 Web.xml文件里加入以下listener <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!--默认加载/WEB-INF 目录下的applicationContext.xml --> 如果需要其它的spring配置文件可以在web.xml中加入以下配置 <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/applicationContext-*.xml,classpath*:applicationContext-*.xml</param-value> </context-param> <!--param-value 中间的多个配置文件可以使用 , 隔开--> 3 在/WEB-INF 目录下新建applicationContext.xml,并在其中配置Struts2的action及其它需要的bean 4 在struts.xml中将 <action 元素中 class="" 的属性改为spring配置文件中的id <!-- spring 配置文件中配置 action --> <bean id="loginAction" class="login.LoginAction" scope="prototype"> <property name="userService" ref="userService" /> </bean> <!-- struts 配置文件中配置 action 注意class属性不再是类带路径全名了 --> <action name="Login" class="loginAction"> <result name="success">/login/success.jsp</result> <result name="error">/login/error.jsp</result> </action> - - - Spring 集成 Hibernate 就不累述了,网上到处都有 - - 附件里有原代码,导入eclipse(需要myeclipse插件),修改数据源,就能运行了 数据源在src目录下dataSource.properties里,我将数据源配置在外部properties 文件里,spring的配置文件动态载入其内容,如果使用的不是mysql,请注意修改hibernate方言 <prop key="hibernate.dialect"> org.hibernate.dialect.MySQLDialect </prop> 说明:项目内没有所需要的包(struts2,spring2,hibernate3),导入项目以后需要自己 导入相应的三方包,spring使用的是2.0 - struts2 好像支持不了spring2.0 基于 XML Schmea 的配置,基于这个配置事务应用程序就出错,如果有人知道怎么在struts2集成spring2中使用spring2的xml Schmea的配置,请告知 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-10-15
不错,可以继续重构。不过你所说的:“struts2 好像支持不了spring2.0 基于 XML Schmea 的配置,基于这个配置事务应用程序就出错”。我没有太明白
|
|
返回顶楼 | |
发表时间:2007-10-15
kyo100900 写道 不错,可以继续重构。不过你所说的:“struts2 好像支持不了spring2.0 基于 XML Schmea 的配置,基于这个配置事务应用程序就出错”。我没有太明白
我使用的是XML Schmea 的配置没有出现问题. <aop:config> <aop:pointcut id="serviceOperation" expression="execution(* edu.jlu.fuliang.Service.impl.*ServiceImpl.*(..))"/> <aop:advisor pointcut-ref="serviceOperation" advice-ref="txAdvice"/> </aop:config> <tx:advice id="txAdvice"> <tx:attributes> <tx:method name="get*" read-only="true"/> <tx:method name="*"/> </tx:attributes> </tx:advice> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory"> <ref bean="sessionFactory"/> </property> </bean> |
|
返回顶楼 | |
发表时间:2007-10-16
遇见鬼了,我只要一使用XML Schmea配置,就会出错
报下面的错误..... 2007-10-16 21:06:54 org.apache.catalina.core.StandardContext start 严重: Error listenerStart 2007-10-16 21:06:54 org.apache.catalina.core.StandardContext start 严重: Context [/ssh2] startup failed due to previous errors |
|
返回顶楼 | |
发表时间:2007-10-16
不错!
|
|
返回顶楼 | |
发表时间:2007-10-17
yufei 写道 遇见鬼了,我只要一使用XML Schmea配置,就会出错
报下面的错误..... 2007-10-16 21:06:54 org.apache.catalina.core.StandardContext start 严重: Error listenerStart 2007-10-16 21:06:54 org.apache.catalina.core.StandardContext start 严重: Context [/ssh2] startup failed due to previous errors 是否Web.xml配置有误,仔细检查了吗? |
|
返回顶楼 | |
发表时间:2007-10-17
引用 是否Web.xml配置有误,仔细检查了吗?
web.xml只有下面那点内容.... 而且只要把spring配置文件里事务的配置方式改为1.x的配置方式,而不使用XML Schmea配置,就不会有问题 <filter> <filter-name>struts2</filter-name> <filter-class> org.apache.struts2.dispatcher.FilterDispatcher </filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <listener> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> </listener> |
|
返回顶楼 | |
发表时间:2007-10-19
少了包或多了很包,请检查
|
|
返回顶楼 | |
发表时间:2007-10-22
spring2也支持dtd
|
|
返回顶楼 | |
发表时间:2007-10-22
我也没有遇到问题。
|
|
返回顶楼 | |