使用应用程序中捆绑的jar而不是默认值 - Glassfish 3.1.2

时间:2012-10-09 15:17:25

标签: jar glassfish-3

我目前工作的公司有一个由另一家公司提供的Java应用程序,该应用程序旨在在Websphere上运行。虽然它在Websphere上运行良好,但鉴于我们产品的复杂性及其与系统必要用途的关系,我们迫切需要使用64位JVM。我们正试图避免购买Websphere的许可证,因为它将花费很多钱。

我试图在几乎所有我能找到的Java Application Server上安装这个应用程序,而Glassfish似乎是最有前途的。它似乎有的问题是如何处理它想要使用的库。

与应用程序捆绑在一起的是一个jaxb.jar文件,以及它的一个非常古老的版本。我在独立应用程序上对该文件进行了快速测试,以查看版本号,该版本号为1.0。我确实在里面使用了一些任意的类。然后,我在部署应用程序时创建了一个简单的jsp来测试同一个类的版本。它出现在2.2.6。我知道Glassfish有一个更新版本的jaxb jar文件,所以它显然正在使用这个。

如何强制我的应用程序使用自己的lib文件夹中的类而不是应用程序服务器使用的类?我觉得这是阻止Glassfish成为我的替代应用服务器的唯一因素。

注意:我确实尝试从Glassfish中删除导致问题的文件,但之后无法重新启动。它们必须是服务器运行所必需的。提前谢谢。

1 个答案:

答案 0 :(得分:0)

在GlassFish中部署/运行webapp时的确切问题是什么? 你能更新应用程序中的jaxb jar而不是篡改GlassFish中的jar吗?

也许您可以阅读GlassFish类加载层次结构here。 这可能会为您提供解决此问题的线索。特别是认可机制可能有用。