在weblogic中引用用于EAR应用程序的共享Java EE库
我已经在weblogic服务器上创建了一个包含一些jar文件的共享库,现在我有一个EAR应用程序,并且想要在EAR应用程序中的Web应用程序中使用共享库中的类文件。 所以我在我的ear-app/META-INF/
目录下创建了weblogic-application.xml
文件,并使用下面的标签给共享库引用:
<library-ref>
<library-name>ebs_endeca_artifacts</library-name>
</library-ref>
但是当我尝试访问我的应用程序中的类文件时,我得到异常java.lang.ClassNotFoundException
此外,我需要在耳朵级别引用共享库,而不是在weblogic.xml
文件中声明单个war文件。
如果我直接在我的ear-app/APP-INF/lib
目录中放置相同的jar文件而不是使用共享库,那么我的应用程序工作正常,没有任何问题。
请帮助我如何在我的耳朵应用程序中使用共享库。 我正在使用weblogic server 10.3.6
我的共享库结构将如下所示:
shared-web-app/WEB-INF/web.xml
shared-web-app/WEB-INF/lib/*.jar
您需要类路径中共享库中的jar,因为在部署EAR
之前,需要构建应用程序。 JDeveloper不知道这些类存储在哪里,因此它在compile-time
需要这些类。
在准备部署应用程序时,可以为WAR
/ EAR
/ <whatever>
可添加的文件创建过滤器。 转至Application Properties
- > Deployment
并选择您的部署配置文件。 点击Edit
按钮,会出现一个屏幕提示,您可以在其中过滤构建应用程序时可以包含的文件/库。
如果您没有在存档中包含共享库,并且已经发布了weblogic-application.xml
的片段,那么WebLogic服务器将使用共享库中的类。
希望有所帮助。 问任何你不了解的评论。 :)
链接地址: http://www.djcxy.com/p/71609.html上一篇: Referring shared Java EE library for EAR application in weblogic