严重: Catalina.start: org.apache.catalina.LifecycleException: Failed to start component [StandardServ
2015-09-14 17:08
267 查看
花了三个小时才找到bug,还是Eclipse报错才发现的。
如果你遇到这个错的情形和我是一样的原因。
我是把SpringMVC+Hibernate的项目转换成SpringMVC+Mybatis项目的时候报错这么多。
在web.xml中,配置OpenSessionInView这个过滤器时,要给org.springframework.orm.hibernate3.support.OpenSessionInViewFilter类里面的sessionFactory初始化,在之前使用Hibernate时,没有问题,Spring会自动加载另外一个配置文件中的sessionFactory,而换成mybatis后,由于没有配置sessionFactory,所以一直报错。
最终解决方法,直接将这个过滤器注释掉即可,使用mybatis好像不用配置OpenSessionInView,页面也能得到session数据,暂时不知道原因为何。希望有人可以看到这篇博客帮忙解答下。
============================================================
2016.617 增加
在使用Mybatis时,之所以不用配置OpenSessionInView,是因为我做的小例子里面涉及到的Model就一个,不存在使用懒加载情况,所以直接注释不影响
如果你遇到这个错的情形和我是一样的原因。
我是把SpringMVC+Hibernate的项目转换成SpringMVC+Mybatis项目的时候报错这么多。
严重: Catalina.start: org.apache.catalina.LifecycleException: Failed to start component [StandardServer[8005]] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) at org.apache.catalina.startup.Catalina.start(Catalina.java:684) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:322) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:451) Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardService[Catalina]] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:732) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ... 7 more Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina]] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) at org.apache.catalina.core.StandardService.startInternal(StandardService.java:443) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ... 9 more Caused by: org.apache.catalina.LifecycleException: A child container failed during start at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1131) at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:302) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ... 11 more后来换到另外一台电脑上,报错时,提示找不到sessionFactory,这时,我才想起来我在利用Spring配置Mybatis时根本配置的是jdbcDataSourse和sqlSessionFactory。而Spring配置Hibernate时配置的是dataSourse和sessionFactory。
在web.xml中,配置OpenSessionInView这个过滤器时,要给org.springframework.orm.hibernate3.support.OpenSessionInViewFilter类里面的sessionFactory初始化,在之前使用Hibernate时,没有问题,Spring会自动加载另外一个配置文件中的sessionFactory,而换成mybatis后,由于没有配置sessionFactory,所以一直报错。
最终解决方法,直接将这个过滤器注释掉即可,使用mybatis好像不用配置OpenSessionInView,页面也能得到session数据,暂时不知道原因为何。希望有人可以看到这篇博客帮忙解答下。
============================================================
2016.617 增加
在使用Mybatis时,之所以不用配置OpenSessionInView,是因为我做的小例子里面涉及到的Model就一个,不存在使用懒加载情况,所以直接注释不影响
相关文章推荐
- Linux Generating SSH Keys
- perl脚本实现限制ssh最大登录次数(支持白名单)
- rsync ssh 数据同步分析
- 搭建SSH时的思考和遇到的几个问题的解决方法
- SSH 使用原理 与解释
- SSH整合中 hibernate托管给Spring得到SessionFactory
- Linux VPS利用SSH重置ROOT密码的方法
- 浅析Mybatis 在CS程序中的应用
- ssh,scp自动登陆的实现方法
- linux下使用ssh远程执行命令批量导出数据库到本地
- shell脚本实现ssh自动登录功能分享
- ssh项目环境搭建步骤(web项目)
- 脚本实现SSH登录邮件报警
- Linux SSH 安全策略 限制 IP 登录方法
- 解决SSH连接超时的2个配置方法
- 用shell脚本防ssh和vsftpd暴力破解的详解讲解
- 内网ssh/mysql登录缓慢的解决方法
- Linux sshd_config配置手册中文版
- Linux SSH 安全策略 更改 SSH 端口
- 简单架设SSH+Squid代理服务器的自由上网通道的方法