mybatis与struts1 [java.lang.NoClassDefFoundError:org/apache/ibatis/io/Resources]

问题描述

在Action中,当我要向数据库中插入一条记录时,报了下面的错误:javax.servlet.ServletException: java.lang.NoClassDefFoundError: org/apache/ibatis/io/Resourcesorg.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:294)org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:187)com.zrxx.action.ProjectAction.execute(ProjectAction.java:33)org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)javax.servlet.http.HttpServlet.service(HttpServlet.java:637)javax.servlet.http.HttpServlet.service(HttpServlet.java:717)java.lang.NoClassDefFoundError: org/apache/ibatis/io/Resourcescom.zrxx.util.SqlSessionFactoryTool.getSqlSessionFactory(SqlSessionFactoryTool.java:30)com.zrxx.dao.BaseDao.openSession(BaseDao.java:15)com.zrxx.dao.BaseDao.openSession(BaseDao.java:10)com.zrxx.dao.ProjectDao.insertPro(ProjectDao.java:13)com.zrxx.action.ProjectAction.add(ProjectAction.java:54)sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)java.lang.reflect.Method.invoke(Method.java:597)org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:270)org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:187)com.zrxx.action.ProjectAction.execute(ProjectAction.java:33)org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)javax.servlet.http.HttpServlet.service(HttpServlet.java:637)javax.servlet.http.HttpServlet.service(HttpServlet.java:717)这个错误是当dao对象已经创建了,调用dao.insert()时发出的附上我的SqlSessionFactoryTool源代码:public class SqlSessionFactoryTool {private static SqlSessionFactoryTool tool;private SqlSessionFactory factory;public static SqlSessionFactoryTool getInstance(){if(tool == null)tool = new SqlSessionFactoryTool();return tool;}public SqlSessionFactory getSqlSessionFactory(){String resource = "/mybatis.xml";Reader reader = null;try {reader = Resources.getResourceAsReader(resource);} catch (IOException e) {e.printStackTrace();}factory = new SqlSessionFactoryBuilder().build(reader);return factory;}这是我的目录结构 问题补充:Wind_ZhongGang 写道

解决方案

org/apache/ibatis/io/Resources 是Ibatis核心包的类,明显你没有把ibatis核心包加入运行的classpath:/WEB-INF/lib/下
解决方案二:
ibatis相关包导入不全,看看你的lib下的ibatis包有哪些?

时间: 2024-09-21 22:52:40

mybatis与struts1 [java.lang.NoClassDefFoundError:org/apache/ibatis/io/Resources]的相关文章

DRP问题集结(一)-Tomcat无法启动,报错java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory

             问题一:  Tomcat无法启动,报错java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory           问题二:[Error]JavaWeb: 严重: Failed to initialize end point associated with ProtocolHandler ["http-bio-8080"]           问题三:The APR based Apa

Tomcat不能启动的问题 java.lang.NoClassDefFoundError: org/apache/juli/loggi ng/LogFactory

问题描述 错误提示:Exceptioninthread"main"java.lang.NoClassDefFoundError:org/apache/juli/logging/LogFactoryatorg.apache.catalina.startup.Bootstrap.<clinit>(Bootstrap.java:54)这是怎么回事?谢谢各位!! 解决方案 解决方案二:在你eclipse里设置的存放class文件的路径指定得不对吧!解决方案三:把Bulidpath的

java.lang.NoClassDefFoundError: org/apache/struts2/util/ObjectFactoryDestroyable

问题描述 初次使用struts2,遇到了一个很奇怪的异常.我只是运用struts2做了一个简单的登录界面,可以按照预想的结果正常运行,没有任何错误,但是,将项目remove出Tomcat时,居然报异常,java.lang.NoClassDefFoundError:org/apache/struts2/util/ObjectFactoryDestroyableatorg.apache.struts2.dispatcher.Dispatcher.cleanup(Dispatcher.java:254

java.lang.NoClassDefFoundError:org/apache/commons/lang/exception/NestableRuntimeException 异常的处理

在做eclipse插件开发的时候,有需要使用到json的处理.然后把以前web开发中用到的json包拿过来使用,发现在web开发时候没问题的代码,在eclipse插件开发时不能用了.. 出现以下的异常: java.lang.NoClassDefFoundError:org/apache/commons/lang/exception/NestableRuntimeException 经度娘后,发现是commons lang包出的问题.我使用的是3.3版本的.更换回2.6版本的lang包.问题得到解

无法装入 servlet:java.lang.NoClassDefFoundError: org/apache/xmlbeans/XmlException

问题描述 这些是需要导入的包,我全部都导入了,<classpathentrykind="lib"path="/xmlbeans/resolver.jar"/><classpathentrykind="lib"path="/xmlbeans/saxon9.jar"/><classpathentrykind="lib"path="/xmlbeans/saxon9-ant.

【JUnit 报错】java.lang.NoClassDefFoundError: org/apache/logging/log4j/message/Message

  使用JUnit的时候,报错:java.lang.NoClassDefFoundError: org/apache/logging/log4j/message/Message 原因是因为项目中导入的架包有冲突: 只留下中间的log4j-1.2.17.jar,上下的两个都不要了. 然后 好了  

logging-异常 java.lang.NoClassDefFoundError

问题描述 异常 java.lang.NoClassDefFoundError java.lang.NoClassDefFoundError:org/apache/commons/logging/LogFactory 是这个错误,是不是缺了 org.apache.commons.logging.LogFactory 这个包? 解决方案 的是你的运行方式不对啊?你试着用configuration运行一下,不知道你的程序结构是怎样写的啊!你自己找一下看有那个类没 解决方案二: 是少了org.apach

产生 java.lang.NoClassDefFoundError 的另一种意外情况:jar包部分的物理性损坏

产生 java.lang.NoClassDefFoundError 的另一种意外情况:jar包部分的物理性损坏 环境:BEA WebLogic 9.2 MP1 + Spring 2.0.6 + XFire 1.2.8 + ... 部署:部署时是以整个 ear 包进行项目部署,部署倒是完成可以成功,只是在调用 Web Services 时产生错误 org.springframework.beans.factory.BeanCreationException: Error creating bean

unittest-Unittest时报了java.lang.NoClassDefFoundError:

问题描述 Unittest时报了java.lang.NoClassDefFoundError: Unittest时报了java.lang.NoClassDefFoundError: oracle/as/config/persistence/PersistenceManager这个错,是什么原因 解决方案 java.lang.NoClassDefFoundErrorjava中,进行Json转换时出错:java.lang.NoClassDefFoundError: org/apache/common