来自jsp中web.xml的Java Web应用程序全局参数

时间:2010-12-08 20:32:56

标签: java web-applications web.xml

如何从web.xml中检索参数/变量htmlRootPath并将其注入我的标头jsp模板(见下文)? 目前我使用initialize.jsp包含文件并且它可以工作,但是想知道我是否可以在web.xml文件中使用它。我已经阅读过在Servlet中使用web.xml但我怎样才能在jsp中使用它。

----我现在就是这样做的。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ include file="inc_taglibs.jsp" %>
<%@ include file="inc_initialize.jsp" %>
<html> 
<head> 
<title>D463 -  Solid Mechanics - [<c:out value="${dbTable.strTableTitle}" />]  <c:out value="${param.pageTitle}" /></title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
   <link rel="stylesheet" type="text/css" href="<c:out value="${htmlRootPath}"/>/css/styleScreen.css" media="screen" />
   <link rel="stylesheet" type="text/css" href="<c:out value="${htmlRootPath}"/>/css/stylePrint.css" media="print" />
   <link rel="stylesheet" type="text/css" href="<c:out value="${htmlRootPath}"/>/css/cssmenu.css"  media="all"/>
   <link rel="stylesheet" type="text/css" href="<c:out value="${htmlRootPath}"/>/css/calendarPOP.css"  media="all"/>
   <script type='text/javascript'          src='<c:out value="${htmlRootPath}"/>/javascript/calendar_popup.js'></script>
   <script type='text/javascript'          src='<c:out value="${htmlRootPath}"/>/javascript/collapse.js'></script>
   <script type='text/javascript'          src='<c:out value="${htmlRootPath}"/>/javascript/sorttable.js'></script>
   <script type='text/javascript'          src='<c:out value="${htmlRootPath}"/>/javascript/window_popup.js'></script>
   <script type='text/javascript'          src='<c:out value="${htmlRootPath}"/>/javascript/switchLogin.js'></script>
</head> 

编辑: 我想传递htmlRootPath的原因是因为这是我用于我开发的每个应用程序的头模板。它为我的同事在公司徽标,导航,布局等方面使用的应用程序提供了一致的感觉......

我们的Configuration Management组控制生产中的源代码(jsp,java),但不控制HTML 所以我的webapp文件夹在生产中不受限制。但是,如果我想修改我的CSS文件怎么办?我没有在上面显示,但我使用<c:import作为位于Web应用程序文件夹之外的导航菜单。这样我就可以添加一个新的链接到我的导航,而无需通过CM变更请求流程(文书工作和签名!yuk)

由于此标题是我用于许多不同应用程序的模板文本,因此我只需要编辑每个特定Web应用程序ONCE的非配置控制文件夹的路径。

1 个答案:

答案 0 :(得分:6)

上下文范围的初始化参数<context-param>Map可用的${initParam}

所以:

${initParam.htmlRootPath}

另见: