首页 > 解决方案 > getContextPath() 在不同的环境中表现不同

问题描述

在我们的 Jboss 应用程序中,getContextPath() 在不同的环境中表现不同。Request.getContextPath() 返回https://[servername]/contextPath而不是https://[loadbalncer-url]/contextPath。这是详细信息

网络服务器:用于负载平衡的 Apache Tomcat 7 应用服务器:JBOSS 6.2

在开发环境中:

负载平衡器-url : https : //esam-dev.abc.com

应用服务器:c1234.abc.com

在测试环境中:

负载均衡器-url : https : //esam-test.abc.com

应用服务器:c5678.abc.com

上下文路径:/emea

该应用程序使用struts 和jsp。在我们正在使用的其中一个 jsp 页面中

<link type="text/css" href="<%= request.getContextPath() %>/sca/UISfdc.css" rel="stylesheet" />

在测试环境中,上面的 href 正在评估为

https://esam-test.abc.com/emea//sca/UISfdc.css

但是在开发环境中,它被评估为

https://c5678.abc.com/emea/sca/UISfdc.css instead of https://esam-dev.abc.com/emea/sca/UISfdc.css

我们无法弄清楚为什么?任何帮助表示赞赏

标签: javaapachehttpjspjboss6.x

解决方案


推荐阅读