我在weblogic服务器中创建了一个包含一些jar文件的共享库,现在我有一个EAR应用程序,我想在EAR应用程序中使用的Web应用程序中使用共享库中的类文件.所以我weblogic-application.xml在我的ear-app/META-INF/目录中创建了文件,并使用以下标记引用了共享库:
<library-ref>
<library-name>ebs_endeca_artifacts</library-name>
</library-ref>
Run Code Online (Sandbox Code Playgroud)
但是当我尝试访问应用程序中的类文件时,我会遇到异常 java.lang.ClassNotFoundException
此外,我需要在耳朵级别引用共享库,而不是在weblogic.xml单个war文件的文件中声明.
如果我直接将相同的jar文件放在我的ear-app/APP-INF/lib目录中而不是使用共享库,那么我的应用程序工作正常,没有任何问题.
请帮助我如何在我的耳朵应用程序中使用共享库.我在用weblogic server 10.3.6
我的共享库结构如下:
shared-web-app/WEB-INF/web.xml
shared-web-app/WEB-INF/lib/*.jar
Run Code Online (Sandbox Code Playgroud)
您需要类路径中共享库中的 jar,因为在部署 之前EAR,需要构建应用程序。JDeveloper 不知道这些类存储在哪里,因此它需要位于compile-time.
WAR准备部署应用程序时,您可以为可添加到//中EAR的文件创建过滤器<whatever>。转至Application Properties->Deployment并选择您的部署配置文件。单击该Edit按钮,将出现一个提示屏幕,您可以在其中过滤构建应用程序时可以包含的文件/库。
如果您未将共享库包含在存档中,并且拥有已发布的片段weblogic-application.xml,则 WebLogic 服务器将使用共享库中的类。
希望有帮助。有什么不懂的可以评论问。:)
| 归档时间: |
|
| 查看次数: |
6454 次 |
| 最近记录: |