angular - 设置要在 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?
解决方案
我找到了解决办法。为了能够为要部署在 Weblogic 上的应用程序设置上下文根,请按照以下步骤操作(Angular 8+ 应用程序):
- 在src文件夹下的新文件夹 WEB-INF 中创建一个weblogic.xml文件
您的 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>
添加 angular.json(构建 > 资产部分):
"assets": [ "src/assets", "src/favicon.ico", "src/WEB-INF" ]
推荐阅读
- java - Java readObject/writeObject 可以保存/加载超类,那为什么需要read/writeExternal?
- c - 在 32 位保护模式下从 c 从文本模式切换到图形模式
- c# - 根据文件内容为文件生成id
- python - 根据最小阈值或置信区间,计算与另一组相比,给定集合中改进了多少样本?
- python - 使用python ffmpeg转换视频文件时无法保存元数据
- php - 如何使 \n 进入新行但恰好在当前行的开头下方开始?
- python-3.x - cmd窗口和关机未运行
- go - 如何使用变量访问结构?
- python - 高级列表理解:创建平均值
- git - Git无法初始化子模块