在WAS服务器中部署angular js应用程序的问题

时间:2018-11-29 02:44:22

标签: angular websphere web-deployment was

我正试图打包我的spring boot webservice和angular 6应用程序,以便可以将其部署在WAS 8.5服务器中。 我在angular上做了一个示例应用程序,并做了“ ng build --prod”。 然后跟随这个答案Is it possible to deploy Angular app on IBM Websphere Application Server?。 我已将角度应用程序的/ dist文件夹的输出复制到Web模块并添加了web.xml。 folder structure

<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<display-name>Spring Boot Liberty</display-name>

<welcome-file-list>
    <welcome-file>index.html</welcome-file>
</welcome-file-list>

在我尝试部署战争并显示页面后,它显示为空白页面。 后端Rest服务运行良好。因此,我可能缺少一些库或文件来运行angular js部分,或者可能还有其他步骤。

请帮助。

1 个答案:

答案 0 :(得分:1)

可能正在发生的事情是您的Angular应用程序没有意识到应用程序的上下文根-这就是为什么您能够通过手动编辑已构建的html文件中的链接资源的路径来使事情正常进行的原因。

有两种处理方法:

  1. 在Angular项目中编辑index.html文件(不是Angular编译器生成的文件)。寻找标签<base href="/">(或引号中的其他值)并对其进行编辑以包括应用程序的上下文根。在您的评论中,您提到了其中带有/HelloWorld的路径,因此我认为标记应类似于<base href="/HelloWorld">
  2. 更改应用程序的上下文根,以匹配已经为<base href>提供的值。

一旦进行了这些更改之一,构建的index.html查找其链接的.js / .css文件的路径应与应用程序服务器实际为其服务的路径对齐在,您应该会看到您的页面。

如果仍然没有看到期望的结果,请右键单击浏览器中的页面,然后单击检查元素。转到可能名为控制台的标签,然后在其中查找任何错误。那应该为您提供其他可能出问题的线索。