OracleAS Web Cache: 如何使用 <esi:environment> 标记

日期: 2003 年 11 月 28 日

如何使用 <esi:environment> 标记来包含自定义环境变量

完成此方法文档后,您应该能够:
  • 使用 <esi:environment> 标记来包含自定义环境变量

ESI 是一种用来在互联网边缘组装动态页面的开放规范。 ESI 是基于 XML 的标记语言。 它使得遵从 ESI 的服务器(如 OracleAS Web Cache)能够执行碎片的动态内容组装。

ESI 支持在 ESI 标记中使用 HTTP 请求变量和自定义环境变量。 一些 HTTP 请求变量包括 $(HTTP_COOKIE{username})、$(QUERY_STRING{searchstring})、$(HTTP_HOST)。 这些变量可在 ESI 标记中使用。例如:

<esi:include src="http://xyz.com/welcome.jsp?user=${HTTP_COOKIE{username}}">

ESI 还支持包含自定义环境变量。 自定义环境变量用 XML 语言定义。 例如,

<?xml version="1.0"?>
<esi-environment esiversion="ORAESI/9.0.4">
<bahamas>6</bahamas>
<bermuda>1</bermuda>
<caribbean>2</caribbean>
<hawaii>2</hawaii>
<lasvegas>1</lasvegas>
<mexico>3</mexico>
</esi-environment>

就像 HTTP 请求变量一样,这些包含的变量可在 ESI 标记中使用。

该用户调查示例程序接收来自用户的意见并显示调查结果。 调查结果页面从 servlet 中检索 XML 形式的测验结果,该 servlet 作为自定义环境变量被包含在该页面中。 下面的代码段显示了如何包含自定义环境变量。

.....
<esi:environment src="/technology/esienvironment/pollresults" name="pollresults"/>
.....
<tr class="contenttext">
<td align="left" bgcolor="#FFFFFF">Bahamas</td>
<td align="left" bgcolor="#FFFFFF"><esi:vars>$(pollresults{bahamas})</esi:vars></td>
</tr>
<tr class="tabledata">
<td align="left">Bermuda</td>
<td align="left">
<esi:vars>$(pollresults{bermuda})</esi:vars> </td>
</tr>
....

调查结果页面中的时间戳记显示了该页面被缓存时的时间。 动态数据 — 调查结果将单独使用 <esi:environment> 标记为每次请求进行更新。

运行示例的前提条件

您需要以下条件才能运行此示例 -

  • Oracle Application Server (10g 或更高版本)。可以从此处
    下载。
  • Oracle JDeveloper (9.0.3 或更高版本)。可以从此处下载。 这是可选的,并且仅当您希望从 JDeveloper 中进行部署时才需要。

部署示例

此示例的完整源代码可以在此获得。这一节讨论运行示例程序的相关指导

第 1 步 使用 Winzip 或以下命令解压缩 esienvironment.jar

> jar xvf esienvironment.jar

这将创建一个目录 esienvironment。

第 2 步

如果您使用的是 JDeveloper,那么按照下面的步骤做

  • 打开 Oracle9i JDeveloper,使用 File/Open 选项来从 esienvironment 目录中选择 esienvironment.jws
  • 接下来,从主菜单中选择 Project/Make esienvironment.jpr
  • 创建应用服务器连接
    • 转至 Connections -> Application Server Connection。单击右键,然后单击 New connection。
    • 在第一步中,输入连接名称并选择 Oracle9i Application Server
    • 在第二步中,输入用户名和口令
    • 在第三步中,输入 Enterprise Manager 的主机名、端口号和远程 Oracle AS 主目录(仅当在远程计算机上进行部署时才需要)。
    • 在第四步中,单击 Next,然后测试该连接。单击 Finish 按钮。
  • 现在,右键单击 esienvironment.deploy,然后选择 Deploy to <connection name>,部署到您在之前的步骤中创建的应用服务器连接上。
第 3 步 按照以下步骤利用 EM 来部署应用程序。
  • 转至 EM web 站点 -> 默认的 oc4j 主页,
  • 选择部署 EAR 文件
  • 输入 J2EE 应用程序名,单击 Browse 按钮,然后从 <SAMPLE_HOME>/deploy/esienvironment.ear 中选择 esienvironment.ear
  • 输入应用程序名为 esienvironment,然后单击 next
  • 输入 URL 映射为 /esienvironment,然后单击 Finish
  • 单击 Deploy 部署应用程序。

运行示例

在浏览器中使用下面的 URL 来访问页面

http:// <host_name>: <port>/esienvironment/poll.jsp

其中,<host_name> 是安装了 Web Cache 的计算机,<port> 是 Web Cache 监听器运行的端口。

例如,http://incq185b.idc.oracle.com:7777/esienvironment/poll.jsp

资源


请在 OTN 示例代码论坛中发表您对此示例的意见



寄送此页面
Printer View 打印机视图