在glassfish上部署静态html

时间:2015-03-13 13:21:28

标签: java-ee servlets glassfish ejb

我是java-ee的新手,所以我的问题可能看起来很幼稚。我创建了一个ejb并将其部署在glassfish上。 servlet程序调用ejb中的方法。然后,为了测试ejb,我创建了一个servlet并将其部署在glassfish上。现在,为了将值发送到servlet,我有一个客户端静态html。我不知道如何在我的glassfish服务器上部署和调用这个html。任何帮助将不胜感激。

跟进资讯─ @Akhilless,谢谢你的详细答案 - 但我还有一些问题。我正在使用Eclipse。下面是我的servlet项目的图片。该servlet调用EJB(未显示)。在图片中显示的servlet项目中,您可以看到静态html文件'GetTickerInfo.html'。这个html文件调用servlet,servlet又调用EJB。

我在glassfish上部署了EJB和servlet项目。现在我的问题是我无法调用html-我不确定正确的url是什么。如果您能向我解释如何找到上下文根等,以及如何在当前情况下找到正确的URL,将非常感激。感谢。

enter image description here

1 个答案:

答案 0 :(得分:3)

我猜你使用的是WAR包装。所有静态文件都直接在包的程序集根目录中。因此,如果您的WAR文件名为myapp.war且您的静态文件名为static.xhtml,则WAR存档的结构如下所示。

myapp.war
    ---- static.xhtml
    ---- WEB-INF
    ---- ---- web.xml
    ---- ---- lib  
    ---- ---- classes

Java EE documentation

中提供了WAR文件结构的精美图形描述

Structure of the WAR archive

将静态文件放在源代码中的位置取决于您使用的IDE和构建管理工具。如果您使用Maven,那么静态文件将进入webapp文件夹,以便您的项目结构如下所示:

mywarproject
    ---- src
    ---- ---- main
    ---- ---- ---- java
    ---- ---- ---- resources
    ---- ---- ---- webapp
    ---- ---- ---- ---- static.xhtml
    ---- ---- ---- ---- WEB-INF
    ---- ---- ---- ---- ---- web.xml

图形上看起来像这样

Maven project structure

此处静态文件为Sample.html

您不会在Glassfish上调用任何静态文件 - 只需在地址栏中键入地址即可打开静态文件。例如,如果您的文件名为static.xhtml且您的应用程序的上下文路径为/myapp,则可以通过键入http://localhost:8080/myapp/static.xhml在本地Glassfish上部署后打开它。