Jboss 7 servlet部署:jsp页面没有正确发布

时间:2013-12-21 00:48:57

标签: jsp jboss cloudbees

我使用eclipse / kepler和redhat的jboss插件编写了一个非常简单的jboss 7 servlet应用程序。我将war文件部署到了cloudbees。 simple.jsp页面正在使用:

...这适用于我的本地运行时部署 - 但是,它不能在云的上下文中工作(没有真正的惊喜)。因此,如果我的应用程序部署为:http://simplepaaswebtest.metro-pojo.cloudbees.net/simple.jsp

我使用什么上下文回帖?

1 个答案:

答案 0 :(得分:1)

查看表单的HTML源代码,我可以看到表单的action属性是/ SimplePaasWebTest / SimpleServlet。 / SimplePaasWebTest看起来像是为您的应用在本地配置的应用程序上下文路径,但在CloudBees上运行时,会为应用程序分配一个空的上下文路径,该路径会更改您需要提交的路径。如果您将表单提交更改为/ SimpleServlet,它应该可以正常工作。

Servlet Web应用程序的contextPath定义应用程序将在其下运行的根路径前缀。当您的应用程序部署到Servlet Web容器中时,您通常会在容器的配置中为应用程序分配contextPath,但有时容器将使用应用程序正在运行的目录或WAR文件的名称来默认此路径从

最佳做法是以不需要特定根上下文路径的方式生成URL路径。通过使用通过为HttpServletRequest.getContextPath()添加前缀或使用相对URL构造的完整路径,即使应用程序的contextPath已更改,您的应用程序也能正常工作。

接下来的最佳做法是将本地应用程序环境设置为使用与部署应用程序相同的上下文路径,这是一个空的根上下文路径(通常被认为是/上下文路径)。 / p>

这些链接也可能有用