没有war文件的JSP部署

时间:2012-06-12 12:48:04

标签: jsp

问题在于我不想仅仅因为需要在单个JSP文件中进行更改而替换“war”文件中包含的整个Web应用程序。那么是否可以将JSP页面部署到Web服务器而不将其打包到“war”文件中?如果是这样,那么可以在哪些Web服务器上完成(以及如何)?


实际上,我正在寻找像经典ASP或PHP这样的解决方案。在这些环境中,不需要特定的XML配置文件,也不需要将它们打包到扩展到目录的WAR文件中。如果我要更改单个ASP / PHP页面,那么我只需要将其上传到Web服务器,并且它们具有简单的目录布局。这可能与JSP有关吗?

2 个答案:

答案 0 :(得分:4)

只有将容器配置为在磁盘上展开WAR(大多数情况下默认情况下都是这样做),然后您才可以直接在展开的WAR文件夹中替换该文件。如果容器不支持hotdeploy(大多数生产服务器配置不支持,至少如果它们由非常好的服务器管理员管理),那么您还需要重新启动服务器。


更新:如果您不想使用WAR进行部署,但只想手动创建部署文件,则只需直接在deploy文件夹中创建必要的文件夹/文件即可。例如,在Tomcat 7.0中,这是一个与Servlet 3.0兼容的容器,只需在其/webapps文件夹中创建一个新的子文件夹。

Tomcat
 |-- bin
 |-- conf
 |-- lib
 |-- logs
 |-- temp
 |-- webapps
 |    `-- jazz
 |         `-- page.jsp
 `-- work

它将以http://localhost:8080/jazz/page.jsp提供。

如果您希望它在域根上,如http://localhost:8080/page.jsp,则将子文件夹重命名为ROOT(是的,大写的)。您只需删除/重命名包含Tomcat默认主页的现有文件。

答案 1 :(得分:2)

大多数Web服务器都支持Hot deployment and dynamic reloading。哪个extracts the WAR file within the server working directory。您可以replace your Modified JSP there在运行时获取纠察队。

在此处查看不同服务器上的热部署: