JSP的环境引擎--websphere


(来源:http://www.linuxaid.com.cn/developer/showdev.jsp?i=378)

Websphere的特点

  WebSphere是IBM的一套软件产品,包括WebSphere应用服务器,WebSphere Studio和 WebSphere Performance Pack。后序还将有其他一些产品加入进来做为补充和扩展。他是IBM网络基础架构软件,是可发展与整合电子商务应用的中介软件,从简单的网页、到复杂的商业交易,它都可全面支持。

  WebSphere可在35种操作系统平台上运作,除计算机外,还可用于PDA、信息家电等产品,跨平台能力较强。

   WebSphere目前在全球已有超过35000家企业采用,而且连续9个季度的增长都超过两位数。1999年,应用服务器(Application Server)市场上IBM的占有率为14%,而2000年时这一数字已上升到30%,在市场上已是坐二望一。近期,IBM力推的中间件(middleware)平台WebSphere将推出4.0版,预计将进一步提升IBM在应用服务器市场上的份额,对市场龙头BEA Systems构成威胁。目前WebSphere在全球应用服务器产品中排名第二,仅次于BEA Systems的WebLogic,但在亚太区已排名第一。IBM与WebSphere搭配的信息中介软件MQSeries在全球则拥有高达75%的市场占有率。

    WebSphere应用服务器使您能够为Servlet 的开发实现 “一次写成,各处使用”的目的。该产品包括一个基于 Java 的 Servlet 引擎,独立于 Web 服务器和它所基于的操作系统。WebSphere应用服务器提供了服务器插件的选项,与大多数流行的应用程序设计接口(API)兼容。所支持的 Web 服务器有:
    l IBM HTTP 服务器
l Apache Server
l Domino
l Lotus Domino Go Webserver
l Netscape Enterprise Server
l Netscape FastTrack Server
l Microsoft Internet Information Server
    除了 Servlet 引擎及插件外,WebSphere应用服务器还提供:
    1. JavaSoft Java Servlet API 实现,以及这些 API 的扩展和附加。
    2. 示例和文档,示例 Servlet 和 Web 站点应用程序演示了简单和高级技术。联机和可打印文档供您快速入门,并帮助掌握服务器高级功能的使用演示基本类及其扩展的示例应用程序。
    3. WebSphere应用服务器的管理器,使用图形界面,易于:
   (1) 为装入本地和远程的 Servlet 设置选项
   (2) 设置初始化参数
   (3) 管理 Servlet
   (4) 指定 Servlet 别名
   (5) 创建 Servlet 链和过滤
   (6) 启用轻量级目录访问协议(LDAP)目录支持
   (7) 记录 Servlet 消息
   (8) 启用 JVM 调试
   (9) 监控 WebSphere应用服务器 使用的资源
  (10) 监控已装入 Servlet、活动 Servlet 会话和 JDBC 连接
  (11) 控错误、事件、异常情况和日志输出
  (12) 创建转储和数据快照
  (13) 动态地启用和禁用跟踪
    4. 缓存和再使用与 JDBC-从属数据库连接的连接管理功能。当一个 Servlet 需要数据库连接时,它可从可用连接的缓冲池获得,从而消除了为每个请求打开一个新连接的所需花费的系统开销。
    5. 附加的 Java 类,遵循 JavaBeans 规范,允许程序员访问 JDBC-从属数据库。当隐藏使用关系数据库的复杂度时,这些数据访问 Bean 可提供增强功能。它们可用于可视集成开发环境中。
    6. JSP的动态页面内容支持。JSP 技术使您能够通过服务器端脚本生成动态 Web 页面。其结果是将呈示逻辑(例如,定义 Web 站点结构和外观的 HTML 代码)从业务逻辑(例如,访问数据库以获得要显示在 Web 站点上的信息的 Java 编码信息)中分隔出来。灵活性方面,JSP 文件可包括任何直接插入的 Java 的组合:<SERVLET> 标记、NCSA 标记和 JavaBean。
   7. 启用 LDAP(轻量级目录访问协议)支持的目录服务。
   8. 用于集成WebSphere应用服务器和Web服务器(如Apache Server) 到Tivoli 管理环境(Tivoli Management Environment)以获得分布式监控和操作的模块和命令行界面。Tivoli 模块并不与WebSphere应用服务器一起发行,请访问Web 站点(http://www.software.ibm.com/webservers/appserv/)以获得更多信息。
   9. 包含了eNetworkDispatcher、WebTrafficeExpress代理服务器和AFS分布式文件系统,可以提供可伸缩的Web服务器环境。
    WebSphere Applecation Server的总体结构如下图所示:


其基本工作过程:
客户发出请求后,由HttpServer将Servlet调用请求交给Application Server,由Application
Server 和Java Servlet Engine 执 行 用 户 调 用 的Servlet 进 行数据库连接,将Sql请求发送给数据库进行处理。数据库将结果返回Appliction Server。Servlet生成动态页面后,将处理结果交给HttpServer。HttpServer将页面返回给用户。

    WebSphere应用服务器对JSP的支持是通过JSP处理器来实现的。在 Web 服务器上安装 WebSphere应用服务器时,Web 服务器的配置被设置成将对 JSP 文件(即文件扩展名为 .jsp)的 HTTP 请求传递至 WebSphere应用服务器。WebSphere应用服务器配置则被设置成将 JSP 文件传递至其 JSP 处理器(pageCompile)。
    JSP 处理器对每一个 JSP 文件创建并编译 Servlet。该处理器还为每个 JSP 文件产生两个文件:
(1) java 文件:包含可用于 Servlet 的 Java 语言代码;
(2) class 文件:编译过的 Servlet。
JSP 处理器把 .java 和 .class 文件放在目录 servletspagecompileJSP_file_path 下,其中 JSP_file_path 是 JSP 源文件所在的目录路径。例如,若JSP 文件在WebSphereAppServersamplesWebBank 目录下,则.java 和.class 文件就在WebSphereAppServerservletspagecompileWebSphereApp ServersamplesWebBank 目录下。.java 和 .class 文件的文件名相同。处理器使用了命名约定,该命名约定包括将下划线字符和后缀添加到 JSP 文件名中。例如,如果 JSP 文件名是 login.jsp,则生成的文件为 _login_xjsp.java 和 _login_xjsp.class。

如同所有的 Servlet,由 JSP 文件生成的 Servlet 是 javax.servlet.http.HttpServlet的子类或子孙类。如果 Servlet 类是软件包的一部分,则 Servlet Java 代码包含了用于一些必需类和软件包语句的导入语句。如果 JSP 文件包含 JSP 语法(例如指令和 scriptlets),则 JSP 处理器会将 JSP 语法转换成等价的 Java 代码。如果 JSP 文件包含 HTML 标记,则处理器添加 Java 代码,以使 Servlet 能一个接一个字符地输出 HTML。

  Websphere由于面向专业人员,要完全掌握有一定的难度。另外,Websphere本身有2G多的容量,需要256M以上内存支持,系统要求很高。

Websphere的安装

Websphere在Linux下的安装

1. 以超级用户root 登入Linux系统,在控制台(Console)或 图形Xwindow X终端进行以下所有步骤的操作,推荐使用X终端。
2. 装载本次大赛IBM我爱Linux Web应用开发盘,在命令行敲入:mount /mnt/cdrom

3. 进入光盘根目录,在命令行敲入:cd /mnt/cdrom

4. 运行光盘安装程序,在命令行敲入:./install.sh.安装画面自动进入如图所示,因为您要进入高级组进行应用程序开发大赛,所以按照安装画面提示,我们选择敲入:A, 进入高级组安装。
 

5. 进入高级组安装画面如图所示。此次IBM我爱Linux Web应用大赛使用了众多的IBM 应用软件,为了减少大赛参与者众多的产品安装使用问题,本光盘针对TurboLinux DataServer 中文版6.1进行了大量的定制工作,使您能更简便地安装应用大赛软件。为了您能成功地参加此次大奖赛,希望您采用我们捆绑的TurboLinux作为Linux系统平台。按照画面提示敲入:Y, 进行下一步自动安装。
 

6. 安装程序自动安装进行中的画面,此画面显示自动安装了IBM JDK, IBM HTTP Server, IBM SSL Modules …等等众多的应用软件,具体请参考您安装的实际情况。
 

7. IBM HTTP Server 是以 Apache HTTP Server 为基础进行开发的WWW服务器,并在Apache原来的基础上加入了SSL和在线网页HTTP Server配置的功能。为了使您能安全地进行远程WEB 方式的配置、管理HTTP Server,您必须为您的HTTP管理服务器设置访问用户和访问用户密码。安装过程中程序会自动提示您输入管理用户名称(缺省用户名为:admin, 直接按回车即为缺省用户),和管理用户密码(密码需输入两次,且两次密码相同)。具体如画面所示。
 

8. 接下来,安装程序就会自动安装IBM DB2 UDB 工作组版数据库 V7.1,此过程无需任何人工干预,系统会自动完成。如图所示。
 

9. 显示IBM DB2 安装成功的状态。


 
10. 系统自动安装完IBM DB2数据库后,自动进入IBM WebSphere 应用服务器和相关应用软件的安装阶段,自动装入Websphere Application Server、相关文档、IBM VisualAge for Java for Linux 3.0、WebSphere 应用开发实例模板EasyPortal … 其中有些软件包比较大,如VisualAge for Java, 安装时间可能比较长,请耐心等待系统自动安装结束。如图所示。
 

11. 显示整个高级组应用软件安装成功,并可进入实用阶段。

 

12. 安装成功后,后台IBM DB2 和 IBM HTTP 应该是已正常启动,您应可以在浏览器中浏览到本机的主页。在Xwindow 中启动 Netscape,URL 栏中敲入:http://localhost or http://your_host_ip or http://your_host_name , 若后台IBM HTTP Server正常启动,应该看到画面
 


!注意:如果您没有看到首页画面,IBM HTTP Server 可能没有正常启动,主要原因是由于您在安装Linux系统过程中‘主机名’命名的问题。您可以使用以下方法解决问题:
A. 查询您当前Linux系统的主机名,敲入命令:hostname
B. 假设系统返回应答为:linux.cn.ibm.com
C. 紧接着,敲入命令:ping linux.cn.ibm.com , 察看是否能通过此主机名连通主机,若能连通,请跳过D. 进入 E. 。
D. 如果不能正常ping 通 linux.cn.ibm.com,敲入命令:vi /etc/hosts 编辑文件.
在文件最后加入此行
     xxx.xxx.xxx.xxx yourhostname.com yourhost
此处 xxx.xxx.xxx.xxx 是您安装Linux系统实际使用的数字IP地址,譬如:192.168.1.100, 此IP地址必须能直接ping 通 (ping 192.168.1.100)
E. 编辑IBM HTTP 配置文件,敲入命令: vi /opt/IBMHTTPServer/conf/httpd.conf
寻找到以 #ServerName your.machine.com开头的这一行,在其后另加入一行:
     ServerName yourhostname
F. 重新启动IBM HTTP Server 服务器,敲入命令:
/opt/IBMHTTPServer/bin/apachectl restart
即可正常启动HTTP 服务器。

Websphere在NT下的安装

  WebSphere可以安装在NT、95/98 、win2000等windows操作系统平台上,下面主要介绍如何在Windows NT 上安装与配置WebSphere应用服务器。

  在Windows下安装WebSphere必须要求有128兆内存以上,要是256兆就更好了。操作系统要求Windows NT(Pack 3)。安装之前,必须要有Web服务器,可以是如下之一:
 IBM HTTP 服务器版本 Windows NT 版(WebSphere应用服务器安装光盘包括IBM HTTP 服务器)
  Apache Server 版本 Windows NT 版
  Domino 版本 5.0 Windows NT 版
  Lotus Domino Go Webserver 版本 4 Windows NT 版
  Microsoft Internet Information Server 版本 3.x以上 Windows NT 版
  Netscape Enterprise Server 版本 3.01 和 版本 3.51 Windows NT 版(建议使用版本 3.5.1)
  Netscape FastTrack Server 版本 3.01 Windows NT 版
还需要Java 开发组件(JDK),这里,我们建议使用与 WebSphere应用服务器一起提供的 JDK。还需要Java servlet API,WebSphere应用服务器包括 JSDK 版本 2.0 或更高版本。 当然,还需要Web浏览器和appletviewer或者支持JDK1.1 的浏览器。例如: Netscape Navigator 4.06 或 4.0.7、或者带有修正包的 Microsoft Internet Explorer 4.01 或更高版本、或者Sun HotJava 1.1 或更高版本。有一些旧的浏览器不能够正确地处理启用本机语言支持的文本。如果在用户界面上看到外来字符,例如“sEnable”,而不是“Enable”,可以通过升级浏览器校正。
第一步:安装Web服务器:
  如果打算安装 IBM HTTP 服务器,就必须在安装 WebSphere应用服务器之前安装它。WebSphere应用服务器安装光盘有IBM HTTP Server。安装WebSphere应用服务器会更改 Web 服务器 httpd.conf 文件。但是,如果Web 服务器是在安装 WebSphere应用服务器之后安装的,就不会进行更改,并且 WebSphere应用服务器也不能够正确运行。安装 IBM HTTP 服务器之后,需要一些配置以启用 SSL 支持。具体如何配置,参阅 IBM HTTP 服务器文档以获得指示信息。
  对于计划安装其它的Web 服务器(如Apache Server),也请在安装 WebSphere应用服务器之前安装它。

第二步:安装之前:

  在安装之前,如果系统中有旧版本的WebSphere,要先把旧的版本卸载了。然后再安装新的版本。卸装之前,最好先备份 WebSphere应用服务器版本 1.x 文件。

(1) 文件备份
  从Windows NT 卸装以前版本的 WebSphere应用服务器之前,确保要移植的文件已经或者将要保存。安装 WebSphere应用服务器版本 2.0 时显示出的图形用户界面备份 WebSphere应用服务器目录中的文件,包括类、领域、Servlet、属性文件,其中,属性文件包括servlet.properties、admin_port.properties、rules.properties、jvm.properties、aliases.properties、connmgr.properties、userprofile.properties。如果有文件驻留在这四个目录之外(例如,如果在 WebSphere应用服务器 安装中创建自己的目录),在安装 WebSphere应用服务器 版本 2.0. 之前,在 WebSphere应用服务器 安装之外的位置备份文件。

(2) 卸载前一版本
  对于 Windows NT,使用开始 --> 控制面板中的添加/删除选项,或从开始 --> 程序 --> IBM WebSphere --> WebSphere应用服务器版本1.x 卸装。

  注意:当已安装了某版本的 WebSphere应用服务器,它将复制Web 站点配置文件作为备份文件,然后修改原始配置文件。当使用 Web 服务器时这个已被修改过的文件就成为活动的配置文件。当卸装 WebSphere应用服务器时,不会恢复以前的配置文件,它仍然是备份文件。为了使这些设置再次活动,必须将它们从备份文件转换为活动的 Web 服务器配置文件。

  另外,需要清除 CLASSPATH。安装版本2.0之前要删除这些信息。对于在 Windows NT 上使用Go Webserver 的Web服务器来说,当安装 WebSphere应用服务器时能自动卸装Go Webserver 上的 Java 支持。其它的请查阅有关文档。
第三步:安装WebSphere服务器:

  在即将安装 WebSphere应用服务器之前,请确保已经:

(1)备份所有未通过安装程序自动备份的文件
(2) 安装您计划使用的 Web 服务器。Web 服务器必须在安装 WebSphere应用服务器之前安装。
(3) 安装之前要确保Web 服务器已经停止运行。

  注意:在WebSphere应用服务器的安装期间,如果指定使用 IBM HTTP 服务器或 Apache Server,将提示您确认 Web 服务器 httpd.conf 文件的位置。
在 Windows NT 上,插入 WebSphere应用服务器安装光盘,转至以 Windows NT 操作系统命名的子目录,运行可执行安装程序(setup.exe)。一系列面板将指导您完成安装。

配置 WebSphere应用服务器

  下面介绍如何配置WebSphere应用服务器,以使它和它的组件以能够协同工作。完成这些任务之后,WebSphere应用服务器通过缺省的配置就能够运行几乎所有的功能。

(1) 配置 Apache Server
如果使用Apache Server作为Web服务器,在httpd.conf文件中加入此行:
AddModule mod_app_server.c。
(2) 使用数据库。
  要保证WebSphere应用服务器与关系数据库(如 Oracle 或 DB2)的连接:将.zip 文件加到文件 /properties/bootstrap.properties 中的 java.classpath 属性。也可以使用 WebSphere应用服务器的管理器界面的 Java 引擎页面来指定文件。同样,确保 java.classpath 包含用于数据库连接的有效的驱动程序。
(3) 运行模式
  ose.mode 属性是用来控制WebSphere应用服务器是作为Web 服务器的一部分(进程内),还是在独立模式下运行(进程外)。该属性在 /properties/bootstrap.properties 文件中。ose.mode 缺省值是 out。Apache Server 或 IBM HTTP 服务器要求设置 ose.mode 属性必须为 out,就是说WebSphere应用服务器必须运行在独立模式下。对于其它 Web 服务器,可以将ose.mode 为 in 并且作为 Web 服务器的一部分运行 WebSphere应用服务器。 但是通常都不这么做。如有必要需要复位 ose.mode就是说将ose.mode的值设为out。例如,如果从作为 Webserver 一部分运行的 Netscape Enterprise Server (ose.mode=in)转换为 IBM HTTP 服务器(要求 ose.mode=out),就别忘了在运行 IBM HTTP 服务器之前,要将ose.mode 属性更改为 out。

  除了可以手工编辑 bootstrap.properties 文件之外,管理器界面的 Java 引擎页面提供了一个简单的方法来锁住该ose.mode属性值。 Java 引擎页面提供了一个可用来指示是以 Web 服务器的一部分(ose.mode=in)或以独立模式(ose.mode=out)运行 WebSphere应用服务器的单选按钮。

  作为 Web 服务器一部分运行 WebSphere应用服务器为Servlet 和其它应用程序提供较高的性能,但安全性较差。作为 Web 服务器的一部分运行 WebSphere应用服务器,允许当关闭 Web 服务器时 WebSphere应用服务器自动停止。在独立模式下运行 WebSphere应用服务器需要其它步骤。

启动和停止 WebSphere应用服务器

    在启动 Web 服务器的时候,WebSphere应用服务器会自动启动。
  如果将 WebSphere应用服务器作为Web 服务器的一部分运行,当关闭 Web 服务器时 WebSphere应用服务器 将自动停止。如果以独立模式运行,WebSphere应用服务器不会自动停止。

  当在Windows NT 上进程外运行 WebSphere应用服务器 时,停止 Web 服务器之后,需要手动停止 WebSphere Servlet 服务以停止 WebSphere应用服务器。方法是:从开始 --> 设置 --> 控制面板 --> 中选择 WebSphere Servlet 服务,并按“停止”按钮。

安装的检查和故障寻找

  要验证 WebSphere应用服务器是否已安装好并正确配置,可调用 WebSphere应用服务器提供的 snoop servlet。使用Web 浏览器在地址栏中输入: http://your.server.name/servlet/snoop。Snoop Servlet 应该回送客户机发送的 HTTP 请求及 servlet 的初始化参数。SnoopServlet 和其它 servlet 的代码位于/servlets 目录。如果Servlet失败:

  (1) 如果你原来通过手工编辑更改过 .properties 文件或更改了WebSphere应用服务器的配置,先看看这些文件以是否引入非法的或不正确的值。特别要检查 /properties/bootstrap.properties 文件。
  (2) 为Web 服务器打开本地日志和跟踪。先找到 WebSphere应用服务器 bootstrap.properties 文件。然后把ose.trace.enabled 和ose.trace.to.webserver 属性都设为true。停止 Web 服务器并重启动。如果 WebSphere应用服务器运行在独立模式,当停止 Web 服务器时它不会相应停止。检查 Web 服务器出错日志及 WebSphere应用服务器 /logs 目录下的日志。看看错误原因。
  (3) 启用调试控制台并重新启动 Web 服务器。WebSphere应用服务器的调试控制台是用来收集和查看跟踪及监控数据的。例如,从调试控制台,可以作为一组启动和停止列在收集和监控服务器数据中的监控程序。在调试控制台的服务器控制台中,允许查看 servlet 的 stdout 和 stderr 流。缺省情况下,并没有启动控制台。在WebSphere应用服务器 debug.properties 文件中设置将debug.server.console.enabled 属性设置为为true,然后重新启动Web 服务器使得改动生效。或者,也可以在Web中运行 http://your.server.name/servlet/DebugConsoleServlet来启用调试控制台。在 Windows NT 上,要成功地查看调试控制台,必须配置 Windows NT 以允许一个或多个服务与 Windows 桌面交互。如果使用作为 Windows NT 服务运行的 Web 服务器:
  选择开始 --> 设置 --> 控制面板 --> 服务。
  选择 Web 服务器相应的服务。
  单击启动按钮。
  在结果对话框中,选择允许服务与桌面交互的复选框。
  重新启动 Web 服务器以使更改生效。

  对于微软的IIS服务器,对与 Web 服务器相关的每个服务(如 Web 发布和 FTP服务),执行以上过程。这些服务必须允许与 Windows NT 桌面交互。如果 WebSphere应用服务器运行时未启动任何 Web 服务器相关的进程,则需要为WebSphere Servlet 服务执行以上过程,从而允许服务与桌面交互。<br>