persistence-unit jar-file路径问题
2014-03-11 11:02
591 查看
最近项目分包以后,很多实体类的扫描需要单个配置,觉得很麻烦,就引用了jar-file的引用方式,但是加载的时候,会因为容器的表现而出现一些差异.
调试的头都大了,翻阅了很多资料,其实jar-file的引入路径是十分重要的.
其中会出现如下问题:
1.java.lang.RuntimeException: error trying to scan <jar-file>
2.java.lang.RuntimeException: Archive browser cannot handle protocol: jndi:/localhost/
3.Cannot resolve jar-file entry in persistence unit without root URL
以上问题其实都是因为没有找到根路径,根据persistence的原始文档描述,persistence加载的根路径到底是什么?
其实就是META-INF文件夹. 在spring的配置文件中声明entityManagerFactory的时候,就需要引入根路径:
该路径可以根据实际情况进行调整.
那么persistence-unit 中的jar-file的路径该怎么设置呢?
其实abc.jar的实际路径是web-inf/lib/abc.jar
以上是解决相对路径的解决方案,请参考
调试的头都大了,翻阅了很多资料,其实jar-file的引入路径是十分重要的.
其中会出现如下问题:
1.java.lang.RuntimeException: error trying to scan <jar-file>
2.java.lang.RuntimeException: Archive browser cannot handle protocol: jndi:/localhost/
3.Cannot resolve jar-file entry in persistence unit without root URL
以上问题其实都是因为没有找到根路径,根据persistence的原始文档描述,persistence加载的根路径到底是什么?
其实就是META-INF文件夹. 在spring的配置文件中声明entityManagerFactory的时候,就需要引入根路径:
<property name="persistenceXmlLocation" value="classpath:META-INF/persistence.xml" />
该路径可以根据实际情况进行调整.
那么persistence-unit 中的jar-file的路径该怎么设置呢?
<jar-file>classpath:../lib/abc.jar</jar-file>
其实abc.jar的实际路径是web-inf/lib/abc.jar
以上是解决相对路径的解决方案,请参考
相关文章推荐
- ant 使用指南
- Linux中的错误:too many open files
- ibats实例
- centos中php5.2 fpm升级到php5.3
- Opencv下视频的读写
- laravel敏捷应用
- java欢迎你
- Strus2 学习笔记 (一)struts的简单配置及实例
- 深入研究Java类加载机制
- 一个简单的WPF MVVM实例
- xp驱动和Win7驱动的区别
- linux下卸载mysql
- java.lang.ClassCastException: sun.jdbc.odbc.JdbcOdbcStatement cannot be cast to java.beans.Statement
- [蓝桥杯历届试题] 错误票据
- C/C++语法知识:typedef struct 用法详解
- C/C++语法知识:typedef struct 用法详解
- text-overflow 文字溢出时的设置
- [蓝桥杯历届试题] 错误票据
- 又是花钱的节奏
- 手动绑定C++类到Lua