您的位置:首页 > 其它

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的时候,就需要引入根路径:

<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

以上是解决相对路径的解决方案,请参考
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: