首页 > 解决方案 > 设置要在 Weblogic 上部署的 Angular 应用程序的上下文根

问题描述

我正在尝试在 WebLogic 12c 服务器上部署 Angular 8 应用程序。我使用 ng build --prod 构建了应用程序,它在 dist 文件夹中生成了文件。然后我将 dist 中的所有文件压缩成一个 WAR 文件,并部署在 Weblogic 上。

Weblogic 自动设置应用程序的上下文根。我的问题是如何更改 Angular 应用程序的上下文根。

例如:

如果我的应用名称是demo-angular,Weblogic 会将上下文根设置为demo-angular。然后 URL 将是https://domain_name/demo-angular

如何将此上下文根更改为/__protected/demo-angular以便应用程序 url 为https://domain_name/__protected/demo-angular

标签: angularweblogicweblogic12c

解决方案


我找到了解决办法。为了能够为要部署在 Weblogic 上的应用程序设置上下文根,请按照以下步骤操作(Angular 8+ 应用程序):

  1. 在src文件夹下的新文件夹 WEB-INF 中创建一个weblogic.xml文件
  2. 您的 weblogic.xml 文件应如下所示:

    <?xml version="1.0" encoding="UTF-8"?> <weblogic-web-app xmlns="http://xmlns.oracle.com/weblogic/weblogic-web-app" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.5/weblogic-web-app.xsd"> <context-root>/__protected/demo-angular</context-root> <container-descriptor> <prefer-application-packages> <package-name>org.slf4j.*</package-name> </prefer-application-packages> </container-descriptor> </weblogic-web-app>

  3. 添加 angular.json(构建 > 资产部分):

    "assets": [ "src/assets", "src/favicon.ico", "src/WEB-INF" ]


推荐阅读