我如何在 WebSphere 中公开另一个被 TLD 文件引用的 WAR 中的 class
How do I expose a class from one WAR being referenced by TLD file in another in WebSphere
当我 运行 在本地使用 WebSphere 时,我收到 "Failed to open resource" 警告,因为我的 app.tld 文件中的条目引用了另一个 WAR 中的基础 class ] 在同一个 EAR 中。
我无法控制部署,因此压缩这些 class 文件对我来说不是一个好的解决方案。我能想到的唯一其他可行的解决方案是在我的 WAR 中创建一个 subclass,但由于我们的源代码控制,我将不得不手动检查所有 subclasses当基础 class 改变时。
我也试过 classloader 设置,但也不走运。有什么 suggestions/best 处理这种情况的做法吗?
最佳实践是将共享 classes 放在 EAR 的 lib 目录中的 JAR 中。下一个最佳选择是将 JAR 复制到两个 WAR 中。我要考虑的最后一个选项是将应用程序 class 加载程序策略更改为 "Application" 而不是默认的 "Module" 以便使用相同的 class 加载程序加载所有 WAR。有关详细信息,请参阅知识中心的 Class loaders 主题。
当我 运行 在本地使用 WebSphere 时,我收到 "Failed to open resource" 警告,因为我的 app.tld 文件中的条目引用了另一个 WAR 中的基础 class ] 在同一个 EAR 中。
我无法控制部署,因此压缩这些 class 文件对我来说不是一个好的解决方案。我能想到的唯一其他可行的解决方案是在我的 WAR 中创建一个 subclass,但由于我们的源代码控制,我将不得不手动检查所有 subclasses当基础 class 改变时。
我也试过 classloader 设置,但也不走运。有什么 suggestions/best 处理这种情况的做法吗?
最佳实践是将共享 classes 放在 EAR 的 lib 目录中的 JAR 中。下一个最佳选择是将 JAR 复制到两个 WAR 中。我要考虑的最后一个选项是将应用程序 class 加载程序策略更改为 "Application" 而不是默认的 "Module" 以便使用相同的 class 加载程序加载所有 WAR。有关详细信息,请参阅知识中心的 Class loaders 主题。