【发布时间】:2018-09-25 12:24:58
【问题描述】:
我有一个使用 HTML/CSS/JS 构建的静态站点,我想将其包装在 .war 文件中,然后将其包装在 .ear 文件中以部署在 Glassfish Java 服务器上。但是我不确定如何最好地生成 .war 和 .ear 文件。
目前我已经压缩并重命名/更改了包含文件夹的类型以制作 .war 和 .ear 文件,在 .ear 中创建 META-INF/application.xml 和 META-INF/MANIFEST.MF 和 WEB .war 中的 -INF/web.xml 以及构建文件:
my-app.ear
--- META-INF
--- application.xml
--- my-app.war
--- META-INF
--- MANIFEST.MF
--- WEB-INF
--- web.xml
--- website build files (various folders and html/css/js files)
当我在 Glassfish 上部署 .ear 时,我没有收到任何错误,但是 localhost 根目录只显示欢迎页面。我还尝试了各种不同的上下文,例如返回 404 的 localhost/my-app(尽管这是预期的,因为我的 applicaiton.xml 上下文路由设置为“/”。
我的文件夹/文件结构是否正确,或者我在设置 .war 和 .ear 文件时遗漏了什么?
以这种方式为网站提供服务是这个项目的要求,我不是普通的 Java 用户,所以我可能错过了一些基本的东西。
编辑:
我的 application.xml 文件如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<application id="Application_ID" version="6" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_6.xsd">
<display-name>my-app</display-name>
<module>
<web>
<web-uri>my-app.war</web-uri>
<context-root>/</context-root>
</web>
</module>
</application>
我的 web.xml 如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="my-app" version="3.0">
<display-name>my-app</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>
【问题讨论】:
标签: java jakarta-ee glassfish war ear