0

所以我正在做一个项目,我们需要创建一个自定义的 Tomcat Realm 实现来从 mongo 支持的数据存储中读取身份验证凭据。

这非常轻松,但是我们提出的实现对外部库有几个依赖关系,即 scala 库、java mongo-db 驱动程序、spring、salat(一个 mongodb ORM)等。

现在为了让 Tomcat 使用这个 Realm,我们必须将我们的 Jar(以及所有依赖的 jar)部署到 tomcats lib 文件夹。

作为 Java 的新手,我不知道这是一个多大的问题,但这对我来说似乎并不好。所以真的,我的问题是将大量 JAR 转储到 Tomcat 的 lib 目录中会有什么问题?

干杯,克里斯。

4

1 回答 1

1

最有可能的依赖将成为一个问题。您放置的所有 JARtomcat/lib对您以后部署的 WAR 都是可见的。我想您的 Realm 实现是一个或多个 Web 应用程序的基础。

假设您的 Realm 依赖于 Spring 2.0,并且您需要将这些库放入其中,tomcat/lib然后使用 Spring 3.0 部署 WAR。WAR 将看到所有可用的tomcat/lib类——Spring 2.0 类。因此,您的 WAR 在 中提供 3.0 类WEB-INF/lib,在运行时它可以在 lib 中看到 Spring 2.0 库tomcat/lib以及它自己的 Spring 3.0 库WEB-INF。这会带来麻烦...

我不知道一个简单的解决方案,也许你应该看看OSGI and Tomcat integration。毫无疑问,它不会让生活更轻松......

于 2011-08-04T16:36:36.883 回答