GuestBook - PSP 示例

目录

示例概述

此示例描述如何使用 PSP 创建一个简单的 Guestbook 应用程序。此 PSP 应用程序提供一个界面以提交意见,并提供一个页面来显示所有现有意见。系统通过初始注册页面将输入提交给另一个 PSP 页面。此页面随后将这些值插入到数据库表。成功插入这些值之后,系统调用显示所有存储的意见的页面。操作过程中如果出现任何错误,则由错误页面返回该错误。

View_Guestbook 页面中显示所有现有意见,以最新的意见排在最开始的顺序显示各意见的详细信息。同时,在当前系统日期输入的意见以红色显示,其他日期输入的意见以黑色显示。

所需软件

注意:加载 PSP的模式应具有对 Oracle 提供的 Web Toolkit 包的访问权限。有关安装这些包和赋予访问权限的说明,请参阅 Oracle9i Application Server mod_plsql 用户指南。

本应用程序在 Red Hat Linux Advanced Server 2.1Solaris 5.6Windows NT 4.0, 2000 上获得验证。

安装和配置

返回页首

请遵守解压缩文件、安装和配置的逐步说明以成功运行此应用程序:

  1. 安装 Oracle9iAS,然后根据随软件提供的手册的说明来安装 HTTP server。
  2. GuestBook.zip 文件解压缩。将 .zip 文件解压缩之后,即创建了 GuestBook 目录。
  3. 为执行此示例功能,需在数据库中创建一个数据库表。要创建此表,请在一个 Oracle 数据库的所需模式的 SQL*Plus 命令提示下执行如下创建表的 SQL 脚本。

    CREATE TABLE guestbook (
    name VARCHAR2(50) NOT NULL,
    email VARCHAR2(100) NOT NULL,
    comments LONG NOT NULL,
    creation_date DATE);

  4. 使用随 Oracle9iAS 软件提供的 'loadpsp' 实用程序加载位于 GuestBook/src 目录的所有 PSP 文件。可在 $IAS_HOME/bin 目录下找到此实用程序。将此目录添加到系统路径中。
  5. 要加载 PSP 页面,请转到 GuestBook/src 目录并运行下列命令:

    loadpsp -replace -user <uname>/<passwd>@ Guest_Book.psp View_GuestBook.psp

    loadpsp -replace -user <uname>/<passwd>@<dbalias> Gb_Error_Page.psp Submit_Comments.psp

    其中,
    <uname>/<passwd> - 是模式的用户名和口令,PSP 必须在此加载。

    <dbalias> - 是连接到所需的数据库的 sql*net tns 别名。
    有关获取 dbalias 的详细信息,请参阅 $IAS_HOME/network/admin/tnsnames.ora

示例文件描述

返回页首

GuestBook.zip 文件包含了示例所需的如下文件:

目录 文件 说明
GuestBook\doc Readme.html 本文件
otn.css Readme.html 使用的样式表
GuestBook\src Guest_Book.psp 显示用于输入意见的表单。
Submit_Comments.psp 将提交的意见从表单存储到数据库。
View_GuestBook.psp 显示数据库中存储的所有意见。
Gb_Error_Page.psp 示例的错误页面。

使用 Oracle9iAS 运行示例

返回页首
  1. 按照上述“安装和配置”部分中指定的说明将 PSP 文件加载进 Oracle 数据库。

  2. 在 Oracle9iAS 中创建一个数据库存取描述符 (DAD),以连接到模式,其中 PSP 文件已在步骤 1 中安装了。
    注意:有关创建 DAD 的详细信息,请参阅
    Oracle9iAS mod_plsql 用户指南

  3. 创建 DAD 之后,通过使用如下格式的 URL 访问此页:
    http://<hostname>:<Port>/<dadname>/<PL/SQL procedure name>

    其中,
    <hostname> 是在其上安装 Oracle9iAS 的机器名
    <Port> 是在其上安装运行 Oracle9iAS http 监听器的端口(参考文件 $IAS_HOME/Apache/Apache/conf/httpd.conf
    <dadname> 是在步骤 2 中创建的 DAD 的名称。


    例如:
    http://incq210a.idc.oracle.com:7778/psp/guest_book


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