`
ityc
  • 浏览: 4300 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

struts2整合spring遇到错误信息

阅读更多
首先我把struts2做了一个简单的登录的实现。没有出错
主要的代码和配置文件如下:
--------------------
web.xml
-------------------
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="person" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
   
    <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>
    <welcome-file-list>
        <welcome-file>/login.jsp</welcome-file>
    </welcome-file-list>
    </web-app>

-------------------------------
struts.xml
-------------------------------
<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE struts PUBLIC
      "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
      "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="cn" extends="struts-default" >
		<action name="Login" class="cn.ityc.action.LoginAction">
			<result name="success">/index.jsp</result>
			<result name="error">/error.jsp</result>
		</action>
		
</package>
	
</struts>


----------------
LoginAction
-----------------
package cn.ityc.action;

public class LoginAction{
	
	private String username;
	private String password;
	
	public String getUsername(){
		return username;
	}
	
	public void setUsername(String username){
	 	this.username = username;
	}

	public String getPassword(){
		return password;
	}
	
	public void setPassword(String password){
		this.password=password;
	}

	public String execute() throws Exception{
		if(getUsername().equals("ityc")&&getPassword().equals("ityc")){
			return "error";	
		}else{
			return "success";
		}
	}
}

------------
login.jsp
-------------

<%@ page language="java" contentType="text/html;charset=GBK"%>
<html>
<head>
<title>登录页面</title>
</head>
<body>
	<form action="Login.action" method="post">
		<table align="center">
			<caption><h3>用户登陆</h3></caption>
			<tr>
				<td>用户名:<input type="text" name="username" /></td>
			</tr>
			<tr>
				<td>密&nbsp;&nbsp;码:<input type="password" name="password" /></td>
			</tr>
			<tr align="center">
				<td colspan="2"><input type="submit" value="登录" />
			</tr>
		</table>
	</form>
</body>
</html>


----------------------------
上面没有问题
然后我想把action用spring管理
------------------------
下面我在web.xml中添加以后
----------
web.xml
-----------
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="person" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
   
    <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>
    <welcome-file-list>
        <welcome-file>/login.jsp</welcome-file>
    </welcome-file-list>
    <context-param>
    	<param-name>contextConfigLocation</param-name>
		<param-value>/WEB-INF/classes/applicationContext.xml</param-value>
    </context-param>
	<servlet> 
	<servlet-name>SpringContextServlet</servlet-name> 
	<servlet-class>org.springframework.web.context.ContextLoaderServlet</servlet-class> 
	<load-on-startup>1</load-on-startup> 
	</servlet>
</web-app>


启动tomcat以后就报错。。
-------------
错误信息
-------------
严重: Error loading WebappClassLoader
  delegate: false
  repositories:
    /WEB-INF/classes/
----------> Parent Classloader:
org.apache.catalina.loader.StandardClassLoader@6f50a8
 org.springframework.web.context.ContextLoaderServlet
java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderServlet
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204)
	at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1083)
	at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:981)
	at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4045)
	at org.apache.catalina.core.StandardContext.start(StandardContext.java:4351)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
	at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920)
	at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883)
	at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
	at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138)
	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
	at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
	at org.apache.catalina.core.StandardService.start(StandardService.java:516)
	at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:566)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:585)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
2008-1-1 13:48:32 org.apache.catalina.core.StandardContext loadOnStartup
严重: Servlet /kongtiaoDemo threw load() exception
java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderServlet
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204)
	at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1083)
	at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:981)
	at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4045)
	at org.apache.catalina.core.StandardContext.start(StandardContext.java:4351)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
	at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920)
	at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883)
	at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
	at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138)
	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
	at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
	at org.apache.catalina.core.StandardService.start(StandardService.java:516)
	at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:566)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:585)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
2008-1-1 13:48:32 org.apache.coyote.http11.Http11Protocol start
信息: Starting Coyote HTTP/1.1 on http-8080
2008-1-1 13:48:33 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:8009
2008-1-1 13:48:33 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/31  config=null
2008-1-1 13:48:33 org.apache.catalina.startup.Catalina start
信息: Server startup in 9935 ms


我用的spring和hibernate是用myeclipse加载的包

我弄了整整40个小时了。
网上说是hibernate和spring的包冲突
我也弄不明白。

有哪位仁兄,有过这个经历请指点一下。我的QQ:531345341
QQ技术群:26572256
分享到:
评论
4 楼 gsvince 2008-01-07  
Hibernate和Spring包冲突,例如asm2.2.3.jar , asm.jar
删除asm2.2.3.jar应该就可以了
3 楼 fuliang 2008-01-01  
hilor 写道
按照你说的, 极有可能是包的冲突所造成的...
我有次也是用myeclipse加载的包, 直接连JVM都启动不了.. 郁闷了一个星期, 才在偶然之下发现是有个包冲突...
如果你还没解决的话可以给我发站内短信, 你QQ需要验证问题:x

Spring和hibernate的asm包冲突,可以把带版本号的那个asm包去掉
2 楼 hilor 2008-01-01  
按照你说的, 极有可能是包的冲突所造成的...
我有次也是用myeclipse加载的包, 直接连JVM都启动不了.. 郁闷了一个星期, 才在偶然之下发现是有个包冲突...
如果你还没解决的话可以给我发站内短信, 你QQ需要验证问题:x
1 楼 retitan 2008-01-01  
可以看我的BLOG我成功了,你可以看下

http://retitan.iteye.com/

相关推荐

    struts2和spring3注解整合问题

    1. **Struts2和Spring3的整合原理** - **Struts2**:主要负责处理HTTP请求,通过Action映射到业务逻辑,返回结果视图。Struts2支持基于XML的配置和注解方式定义Action。 - **Spring3**:提供了强大的DI和AOP功能,...

    struts2 hibernate spring整合(出错的)

    总之,"struts2 hibernate spring整合(出错的)"意味着开发者可能在整合过程中遇到了困难,需要对每个框架的配置、相互间的配合以及常见的问题有深入理解,才能找出并修复错误。这通常需要对Java Web开发有扎实的基础...

    MyEclipse 搭建Struts2+Spring2+Hibernate3整合SSH2

    在Java开发领域,Struts2、Spring和Hibernate这三大框架的整合,简称SSH2,是常见的企业级应用开发模式。MyEclipse作为一款强大的Java集成开发环境,提供了便捷的SSH2整合支持。以下是详细的搭建步骤及知识点解析: ...

    quartz.*整合struts2、spring一个的demo

    在整合过程中,可能遇到的常见问题包括版本兼容性、依赖冲突以及配置错误。确保所有使用的库(如Quartz、Struts2、Spring及其相关依赖)的版本相互兼容是非常重要的。如果程序报错,通常需要检查是否存在缺失的jar包...

    struts2-spring-plugin-2.2.1.1.jar

    Struts2-Spring-Plugin-2.2.1.1.jar是Apache Struts 2框架的一个重要插件,主要用于整合Struts 2与Spring框架。这个插件在开发基于SSH(Struts 2、Spring、Hibernate)的企业级应用时扮演着关键角色。SSH是一个流行...

    Struts2+Spring4+Hibernate4框架整合小项目,包含ssh源码及SQL文件(MySQL)

    在这个SSH整合项目中,开发者首先需要配置三个框架的环境,包括添加相应的库到项目的类路径,配置Struts2的struts.xml,Spring4的spring-context.xml以及Hibernate4的hibernate.cfg.xml。然后,创建实体类(Entity)...

    struts2spring5hibernate5整合包

    总的来说,"struts2spring5hibernate5整合包"是一个用于快速搭建基于SSH的Java Web项目的工具包,它集成了三个框架的最新稳定版本,经过测试,可以正常运行。开发者可以通过这个整合包,快速开始一个包含MVC、业务...

    struts2+spring+hibernate整合中spring注入出错。页面中报空指针异常。高手来看看怎么决绝。

    标题提到的问题是“struts2+spring+hibernate整合中spring注入出错,页面中报空指针异常”,这通常是由于Spring的依赖注入没有正确配置导致的。 首先,让我们深入了解一下Struts2、Spring和Hibernate各自的核心概念...

    Spring+Struts2 整合测试

    在整合Spring和Struts2时,主要涉及以下几个关键知识点: 1. **Spring框架**:Spring的核心是IoC(Inversion of Control,控制反转)和DI(Dependency Injection,依赖注入),它通过管理对象的生命周期和对象间的...

    struts2+hibernate+spring整合

    Struts2、Hibernate和Spring是Java开发中常用的三大框架,它们各自负责Web应用的不同层面:Struts2专注于表现层管理,Hibernate处理数据持久化,而Spring则作为一个全面的框架,涵盖了依赖注入、事务管理、安全控制...

    struts2+spring3+hibernate整合教程

    ### Struts2+Spring3+Hibernate整合知识点概述 #### 整合框架介绍 整合Struts2、Spring3和Hibernate三大框架是Java企业级开发中的常见做法,旨在构建Web应用程序。这种整合模式允许开发者利用Struts2进行Web层的...

    MyEclipse下struts2、spring、hibernate整合

    在本文中,我们将深入探讨如何在MyEclipse环境中整合Struts2、Spring和Hibernate这三个流行的技术框架。这个过程对于开发企业级Java应用至关重要,因为它提供了模型-视图-控制器(MVC)架构、依赖注入以及持久化数据...

    Struts2.1+Spring2+Hibernate3.3整合

    Struts2.1+Spring2+Hibernate3.3的整合是Java Web开发中常见的MVC框架集成方案,常被称为SSH2整合。这三个框架分别扮演不同的角色:Struts2作为前端控制器,负责处理用户请求和视图展示;Spring则提供依赖注入(DI)...

    spring,hirbernate,struts2,框架整合资源/SSH整合全套案例

    在IT行业中,SSH(Spring、Hibernate、Struts2)是一个常见的Java Web开发框架组合,用于构建高效、可维护的企业级应用程序。这三个框架分别处理不同层面的问题:Spring是全面的轻量级应用框架,Hibernate是对象关系...

    struts2整合hibernate

    8. **错误和异常处理**:整合过程中可能会遇到各种错误和异常,例如SQL异常、空指针异常等。合理地捕获和处理这些异常,提供友好的错误信息给用户,是提高用户体验的关键。 9. **安全性考虑**:Struts2和Hibernate...

    Eclipse搭建SSH(Struts2+Spring3+Hibernate3)框架项目教程

    在教程中,作者尝试整合Spring3.2.3版本,因为3.1版本在整合时出现了空指针异常。这涉及到Spring框架的依赖注入(DI)、控制反转(IoC)、Bean生命周期管理等核心概念。此外,Spring的应用上下文...

    struts2+spring2.5+hibernate3.2中文开发手册

    Struts2、Spring和Hibernate是Java企业级应用开发中的三大框架,它们的组合,通常被称为SSH(Struts2 + Spring + Hibernate)。这个“struts2+spring2.5+hibernate3.2中文开发手册”是针对这些框架的详细指南,旨在...

    Struts2.1.6+Spring2.5.6+Hibernate3.3.1框架整合常见错误

    在使用Struts2.1.6、Spring2.5.6与Hibernate3.3.1进行框架整合时,开发者经常会遇到一些常见的问题。这些问题可能会导致程序无法正常运行或出现异常行为。下面我们将针对这些常见错误进行详细的分析,并提供可能的...

Global site tag (gtag.js) - Google Analytics