java - 如何在 WebLogic 11g 上部署同一个 Web 应用程序两次?

标签 java web-applications deployment weblogic-10.x java-ee-5

我们开发了一个 JEE5 网络应用程序 (WAR) 并在 WebLogic 11g (10.3.5) 下在生产环境中运行它。

现在,同一个应用程序应该作为不同的应用程序部署在同一个 WebLogic 上,供不同的客户(不同的 URL、不同的数据)使用。

我通过在部署后为每个上下文根设置不同的上下文根来管理第一部分。

但我还没有让它们使用不同的数据源 - 因为我想避免客户特定的构建,persistence.xml 对于所有应用程序都是相同的,因此持久性单元名称也是如此。

这个场景的最佳设置是什么?我是否被迫进行单独的构建和不同的 WAR,或者我是否必须在服务器中分离托管服务器或域,或者是否有更好的方法来解决它?

最佳答案

我知道这个帖子很老了,但是回复一下,这样它可以帮助有同样问题的人在这个帖子上绊倒。

最新的 weblogic 12.2.1 带有 Multi-Tenancy (我猜是附加组件),它可以让您在单个域中运行相同的应用程序。

编辑:Weblogic 12.2.1 引入了称为分区的概念。分区是 weblogic 域的配置和运行时分割。在单个 weblogic 域中,您可以创建多个分区。每个分区将有一个或多个资源组。资源组是 weblogic 资源的逻辑分组,如数据源、jms、Java EE 应用程序等。例如,为了实现原始帖子的要求,我们创建了一个资源组模板,其中将 Web 应用程序和数据源作为资源。在数据源配置中,我们可以提供一个占位符变量而不是实际的 URL 作为 DB URL。然后我们可以创建两个引用此资源组模板的分区(每个分区现在将有一个单独的 Web 应用程序和数据源)。每个分区将通过创建两个具有相同 JNDI 名称的数据源来覆盖那里的 DB URL 属性。在每个分区中,我们创建虚拟主机/端口,以便客户端可以使用它来访问在各自分区中运行的应用程序。

可以在 https://blogs.oracle.com/WebLogicServer/entry/domain_partitions_for_multi_tenancy 中找到关于此的更好、更详细的信息。

关于java - 如何在 WebLogic 11g 上部署同一个 Web 应用程序两次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9818961/

相关文章:

python - 迁移 django 数据库时 azure 用户名无效

java - 比较java中的2个列表

java - 使用 Ibatis 2.3 检索 CLOB 数据

java - Spring Integration 应用程序未使用 ActiveMQ 队列

php - 建筑工地..定制库存系统..购物车推荐?

mongodb - 部署/auth-mongo-depl : container auth-mongo is waiting to start: mongo can't be pulled

Java- 不包含后跟任何字符的子字符串的字符串的正则表达式

gwt - Gradle(tomcat-plugin):tomcatRun无法执行GWT JS

javascript - 像 Ted.com 那样拟合不同的图像

android - 为什么我的应用程序在升级后会出现两个图标?