Spring+Hibernate+Struts+Tomcat+MyEclipse
Tomcat能起来,但一提交页面就报错:
java.lang.IllegalStateException: No WebApplicationContext found: no ContextLoaderListener registered?
查了下说要在Web.xml中给Spring配个监听器,添加了以下代码,Tomcat启动时就抱错:
Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Initialization of bean failed; nested exception is java.lang.NoClassDefFoundError: org/hibernate/cfg/HbmBinder$SecondPass
java.lang.NoClassDefFoundError: org/hibernate/cfg/HbmBinder$SecondPass<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>以下是几个配置文件,望高手帮忙
1.web.xml<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>3</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>user.jsp</welcome-file>
</welcome-file-list>
</web-app>2.struts-config.xml<struts-config>
<data-sources />
<form-beans >
<form-bean name="userForm" type="org.login.struts.form.UserForm" />
</form-beans> <global-exceptions />
<global-forwards />
<action-mappings >
<action
attribute="userForm"
input="/user.jsp"
name="userForm"
path="/user"
scope="request"
type="org.springframework.web.struts.DelegatingActionProxy"
>
<forward name="success" path="/success.jsp" />
<forward name="fail" path="/user.jsp" />
</action>
</action-mappings>
<message-resources parameter="org.login.struts.ApplicationResources" />
<!-- 将Struts集成到Spring 中 -->
</struts-config>3.applicationContext.xml<beans>
<!-- 配置数据源 -->
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName"
value="com.mysql.jdbc.Driver">
</property>
<property name="url"
value="jdbc:mysql://127.0.0.1:3306/SQLLABS">
</property>
<property name="username" value="root"></property>
<property name="password" value="1234"></property>
</bean>
<!-- 集成Hibernate -->
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
</props>
</property>
<property name="mappingResources">
<list>
<value>/org/login/vo/User.hbm.xml</value>
</list>
</property>
</bean>
<!-- -->
<bean id="userDAO" class="org.login.dao.UserDAO">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
<bean id="userService" class="org.login.service.UserService"
abstract="false" singleton="true" lazy-init="default"
autowire="default" dependency-check="default">
<property name="userDao">
<ref local="userDAO" />
</property>
</bean>
<bean name="/user" class="org.login.struts.action.UserAction"
abstract="false" singleton="false" lazy-init="default"
autowire="default" dependency-check="default">
<property name="userService">
<ref local="userService" />
</property>
</bean>
</beans>
Tomcat能起来,但一提交页面就报错:
java.lang.IllegalStateException: No WebApplicationContext found: no ContextLoaderListener registered?
查了下说要在Web.xml中给Spring配个监听器,添加了以下代码,Tomcat启动时就抱错:
Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Initialization of bean failed; nested exception is java.lang.NoClassDefFoundError: org/hibernate/cfg/HbmBinder$SecondPass
java.lang.NoClassDefFoundError: org/hibernate/cfg/HbmBinder$SecondPass<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>以下是几个配置文件,望高手帮忙
1.web.xml<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>3</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>user.jsp</welcome-file>
</welcome-file-list>
</web-app>2.struts-config.xml<struts-config>
<data-sources />
<form-beans >
<form-bean name="userForm" type="org.login.struts.form.UserForm" />
</form-beans> <global-exceptions />
<global-forwards />
<action-mappings >
<action
attribute="userForm"
input="/user.jsp"
name="userForm"
path="/user"
scope="request"
type="org.springframework.web.struts.DelegatingActionProxy"
>
<forward name="success" path="/success.jsp" />
<forward name="fail" path="/user.jsp" />
</action>
</action-mappings>
<message-resources parameter="org.login.struts.ApplicationResources" />
<!-- 将Struts集成到Spring 中 -->
</struts-config>3.applicationContext.xml<beans>
<!-- 配置数据源 -->
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName"
value="com.mysql.jdbc.Driver">
</property>
<property name="url"
value="jdbc:mysql://127.0.0.1:3306/SQLLABS">
</property>
<property name="username" value="root"></property>
<property name="password" value="1234"></property>
</bean>
<!-- 集成Hibernate -->
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
</props>
</property>
<property name="mappingResources">
<list>
<value>/org/login/vo/User.hbm.xml</value>
</list>
</property>
</bean>
<!-- -->
<bean id="userDAO" class="org.login.dao.UserDAO">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
<bean id="userService" class="org.login.service.UserService"
abstract="false" singleton="true" lazy-init="default"
autowire="default" dependency-check="default">
<property name="userDao">
<ref local="userDAO" />
</property>
</bean>
<bean name="/user" class="org.login.struts.action.UserAction"
abstract="false" singleton="false" lazy-init="default"
autowire="default" dependency-check="default">
<property name="userService">
<ref local="userService" />
</property>
</bean>
</beans>
解决方案 »
- SSH2怎样实现不同数据库间的数据共享问题
- java 解析 xml文件, 多层节点读取,请高手帮忙啊 !我要解析的XML已经在下面
- <急>list的问题,遍历显示出来的东西全一样
- 跪求Hibernate事务问题最佳实践
- 在JSP中如何获取取天气预报数据
- java 中文问题再提
- no spring webapplicationinitializer types detected on classpath
- 请教一个jsp和ejb的问题
- 一个有关<jsp:useBean>标签中四种scope属性的问题,谢谢!!!马上送分!!!
- 我用ASP写的一个网站,几经周折,终于可以访问了,请大家来看看!
- 关于数据源的问题,请大家帮下忙
- java写远程文件 不能写入的问题
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<!-- 屏蔽这个listener-->
<!--listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener-->
<!-- 添加contextConfiglocation-->
<context-param>
<param-name> contextConfigLocation </param-name>
<param-value> /WEB-INF/applicationContext.xml </param-value>
</context-param>
<servlet>
<servlet-name> context </servlet-name>
<servlet-class> org.springframework.web.context.ContextLoaderServlet </servlet-class>
<load-on-startup> 1 </load-on-startup>
</servlet>
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>3</param-value>
</init-param>
<!--从0改为2-->
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>user.jsp</welcome-file>
</welcome-file-list>
</web-app>
具体原理请你自己多去看看相关资料(我只知道这么用,原理你可以贴出来我们一起分享哈)。
看看这里
http://www.blogjava.net/fine/archive/2006/08/10/62715.html
struts+spring+hibernate的web应用
http://www.blogjava.net/rickhunter/articles/113084.html