整合ssh项目时所遇到的问题总结
2017-01-07 21:25
211 查看
1.异常:/hibernate.cfg.xml not found
使用spring整合hibernate之后,sessionFactory由spring管理,所以再用hibernate的Configuration conf = new Configuration().configure();就会找不到配置文件,这时候必须用spring的sessionFactory或者使用spring提供的hibernateTemplate,用sessionFactory不能管理事务,用hibernateTemplate能管理事务。
2.hibernate.dialect'
must be set when no Connection available错误
Java代码
cfg=new AnnotationConfiguration();
sf=cfg.buildSessionFactory();
在这里没有写
Java代码
cfg=new AnnotationConfiguration().configure();
缺少的是configure();
添加这句话之后程序OK.
new Configuration()默认是读取hibernate.properties
所以使用new Configuration().configure()来读取hibernate.cfg.xml文件
3.java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderL,spring获取context
今天学习spring项目的时候出现了下面的错误信息:
java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1702)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1547)
at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:532)
at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:514)
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:142)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4854)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5434)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)
虽然问题一眼就知道是这句话:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
但是还是有点迷糊,因为以前练习spring的时候,是把jar包都复制到WEB-INF/Lib目录下的,但是最近练习项目的时候都是自己建立自己不同的User libaraies,很明显我已经导入了这些jar包,但是却提示这样的信息..............
看来自己对于JVM是如何引入我们所需要的第三方jar包的机制,后来去网上仔细搜了以下,才明白其原理,下面不废话,直接重点:
原来是我们自使用类似于Ant来获取类的时候是不能象UserLibaray来使用的,因为我们建立的是一个web app,而web app使用的是自定义的ClassLoader,而非JVM中的存在的三种ClassLoader(如上面所说),因此它无法识别出我们写在xml文件中的第三方类库的class文件,而只有我们写在src目录下的java文件才能使用,因此,我们必须要把第三方的类库放入到lib目录下,web app 才会识别我们定义在xml中的类了 .
通这个错误,也让我对classloader的认识也进了一步.虽然以前看过周志明的深入JVM一书中关于类加载器分派体系的介绍,但是不太理解,这样一来,自己也多了一些体会.
4.jquery和struts的结合
1.在 $("#myform").validate({}); 其中#myform这里指的是id为myform的表单
2.rules: {title: {}} 其中的title指的是name为title的input等表单的相关项
3.当input中name使用sort.name这样的命名方式时, 则rules: {"sort.title": {}} 要加上又引号
使用spring整合hibernate之后,sessionFactory由spring管理,所以再用hibernate的Configuration conf = new Configuration().configure();就会找不到配置文件,这时候必须用spring的sessionFactory或者使用spring提供的hibernateTemplate,用sessionFactory不能管理事务,用hibernateTemplate能管理事务。
2.hibernate.dialect'
must be set when no Connection available错误
Java代码
cfg=new AnnotationConfiguration();
sf=cfg.buildSessionFactory();
在这里没有写
Java代码
cfg=new AnnotationConfiguration().configure();
缺少的是configure();
添加这句话之后程序OK.
new Configuration()默认是读取hibernate.properties
所以使用new Configuration().configure()来读取hibernate.cfg.xml文件
3.java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderL,spring获取context
今天学习spring项目的时候出现了下面的错误信息:
java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1702)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1547)
at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:532)
at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:514)
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:142)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4854)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5434)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)
虽然问题一眼就知道是这句话:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
但是还是有点迷糊,因为以前练习spring的时候,是把jar包都复制到WEB-INF/Lib目录下的,但是最近练习项目的时候都是自己建立自己不同的User libaraies,很明显我已经导入了这些jar包,但是却提示这样的信息..............
看来自己对于JVM是如何引入我们所需要的第三方jar包的机制,后来去网上仔细搜了以下,才明白其原理,下面不废话,直接重点:
ava虚拟机是根据Java ClassLoader(类加载器)决定如何加载Class。 系统默认提供了3个ClassLoader Root ClassLoader,ClassPath Loader,Ext ClassLoader 我们也可以编写自己的ClassLoader,去加载特定环境下的Jar文件。 能不能加载Jar,加载哪里的Jar,是由ClassLoader决定的。 楼主的问题可能是 导入的仅仅是jar包的引用,例如在eclipse中通过build path加进user lib……(类似快捷方式) 这种在Java Application中没问题,但在web Application中可能会出现找不到类的异常。 在WEB Application中jar包最好放在webroot或webcontent下的lib文件夹内,特别是xml中用到的jar包。 |
通这个错误,也让我对classloader的认识也进了一步.虽然以前看过周志明的深入JVM一书中关于类加载器分派体系的介绍,但是不太理解,这样一来,自己也多了一些体会.
4.jquery和struts的结合
1.在 $("#myform").validate({}); 其中#myform这里指的是id为myform的表单
2.rules: {title: {}} 其中的title指的是name为title的input等表单的相关项
3.当input中name使用sort.name这样的命名方式时, 则rules: {"sort.title": {}} 要加上又引号
相关文章推荐
- 对第一次项目总结--ssh开发中遇到的小问题总结
- 在这次ssh整合项目中遇到比较难解决的问题!!
- SSH整合时遇到的问题总结
- [总结]配置ssh项目遇到的问题
- ssh整合问题总结--运行项目时报java.lang.StackOverflowError(堆栈溢出)异常
- SSM项目整合遇到的问题总结-Error creating bean with name 'categoryController
- Axis 2 整合到 SSH 项目,Axis2 整合,Axis2 发布,Axis2 部署方法及遇到问题
- springMVC整合mybatis 项目遇到问题总结
- SSH项目部署weblogic遇到的问题总结
- [项目过程中所遇到的各种问题记录]学习篇——对工作以来的学习过的开源项目进行总结—动软代码生成工具
- moss开发实施过程中遇到的问题总结:项目层面
- SSH整合时jar包冲突的问题(持续总结中···)
- 整合SSH过程中遇到错误之运行项目action取不到自动装配的bean
- Flex项目与SSH项目整合问题记录
- struts2总结(自己做项目时遇到的问题加上一些网上的资料)
- 项目管理遇到的问题总结
- Ubuntu 12.04 下安装ssh 服务遇到的问题以及总结
- PDA(WinCE)项目开发中遇到的问题及解决方法总结
- 项目开发中经常遇到的一些问题总结
- 总结项目中遇到的问题以及如何解决