如何从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的非配置控制文件夹的路径。
答案 0 :(得分:6)
上下文范围的初始化参数<context-param>
是Map
可用的${initParam}
。
所以:
${initParam.htmlRootPath}