ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Rational 将现有的静态Web站点转变为动态Web站点

Rational 将现有的静态Web站点转变为动态Web站点

原创 Linux操作系统 作者:habug 时间:2009-05-26 13:25:44 0 删除 编辑
本文将帮助技术背景的读者了解如何利用 IBM® Rational® Application Developer 将现有的静态 Web 站点转变为动态 Web 站点。用户将添加一个邮件 servlet、Java™2 Platform,Enterprise Edition (J2EE™) 安全性,并利用 Web 站点设计工具的页面模板来为整个 Web 站点创建一致的外观。

与静态 Web 站点不同,动态 Web 站点可以让 Web 站点的所有者能够简化更新并向站点添加新的内容。举例来说,可以通过简单的浏览器节目发布新闻和事件。站点的动态特性只受到想象的限制。动态 Web 站点的特性的一些实例是:内容管理系统、电子商务系统、公告/讨论板、内联网或外联网设备、客户或用户上传文档的能力、管理员或用户创建内容或向站点添加信息(动态发布)的能力。更新动态 Web 站点更容易,因为构建的每个页面都是基于数据库中的信息,并且数据库中的信息可以通过另一个接口变更。上面提到的特性是动态 Web 站点中的普遍特性。

目标

在本文中,您将了解以下的 Rational Application Developer 功能:

  • 将静态 Web 站点转变为动态 Web 站点
  • 在创建邮件 servlet(这是让您支持基于 Web 的私有邮件服务,包括邮件列表,的 Java servlet)中使用 SMTP 服务器
  • 利用 J2EE 安全性编辑器(J2EE 应用程序中的安全性确保只有授权用户可以访问应用程序)
  • 使用页面模板(这些是带有具体外观的模板,包括 Web 页面的设计)
  • 添加 JavaServer Pages(JSP)导航栏

    详细情况

    导入必需的 J2EE 模块

    此组件需要用 PVIT_STATIC 实现的 PVIT Web 站点的第一个部分。

    1. 来自 PVIT_STATIC 的结果的工件被保存为工程交换压缩文件。
    2. 压缩的 Project Interchange 文件(PVIT_STATIC_RAD.zip)在 下载 部分中可以找到。
    3. 将该压缩文件作为 Project Interchange 导入到您的工作区。应该导入工程 PVIT。

    将静态工程转变为动态 Web 工程

    1. 一旦工程成为动态的工程,我们就可以开发与前端用户交互的 servlet 了。
    2. 在环境菜单中选择 PVIT 并选择 Static Web Project > Convert to a Dynamic Web Project
    3. 将 Web 版本设置为默认的 2.4。
    4. 单击 OK 完成向导。
    5. 当完成迁移之后,打开 Web 工程的属性,并将运行时设置为以下其中一个:IBM® WebSphere® Application Server,IBM® WebSphere® Application Server CE,Tomcat 服务器。
    6. 如果您要把此工程部署到 Tomcat 以外的服务器上,那么您需要创建 EAR 工程。
    7. 创建名为 PVITEAR 的新的 Enterprise Application Project,并将此 Web 工程添加为模块。

    创建新的服务器

    1. Servers 视图中创建新的服务器。
    2. Server Type:WebSphere Application Server,WebSphere Application Server CE,Tomcat server。
    3. PVITEAR 添加到服务器的 Configured Projects 中。完成向导。
    4. 在服务器上运行工程,以确保正确地进行了转换。
    5. 利用 Source Editor 对页面修改所有出错的链接。

    创建 Mail Servlet

    1. 在 Java Resources 中创建新的包:工程的 src 文件夹,称为 com.ibm.mymail
    2. 向 src/com.ibm.mymail 添加名为 MailServlet.javaJava Servlet(从下载部分中获得)。
      • 当用 WebSphere Application Server 时,您不会看到任何错误。
      • 当用 Tomcat 时,您需要向 Tomcat_install_dir/common/lib 目录添加两个 jar,来添加邮件支持:
      • mail.jar 可以在下载部分中得到。它来自于 javamail-1.4。要自己下载,您可以去 http://java.sun.com/products/javamail/downloads/index.html
    3. activation.jar 可以在下载部分中获得。它来自于 jaf-1.1。要自己下载 Java Activation Framework,您可以去 http://java.sun.com/products/javabeans/glasgow/jaf.html。
    4. 打开 Web Deployment Descriptor,单击 Servlets 选项卡,及 Add... 遵照这些准则:
      • 选择使用现有的 Servlet 类,选择 Browse...,在 com.ibm.mymail 包中找到名为 MailServlet 的 servlet。
      • 选择 Next
        • 验证名字为:MailServlet
        • URL Mapping 是:/MailServlet
      • 完成。保存。查看所有断开的链接的来源,并随需修复

    图 1. Servlet Creation
    Servlet Creation 对话框
    1. 用名为 comment.html 的 HTML/XHTML 基本模板创建新的 Web 页面,并在 teambuilding.html 页面上添加一个到该页的链接。
    2. 在 comment 页面上,用图 2 中的 header 创建一个表单。

    图 2. Comment Page Header
    Comment Page Header
    1. 在表单中创建以下本文框。

    图 3. Form. Text 框
    Form. Text 框
    1. 在 FORM. 标签中添加 Submit Button。该按钮将如图 4 中源代码所示。

    图 4. Submit Button
    Submit Button

    建立 SMTP 服务器,用于电子邮件的发送。

    1. 打开 MailServlet.java,并改变以下值。

    图 5. Mail Servlet 更新
    Mail Servlet 更新
    1. 在服务器上运行工程,并测试电子邮件 comment.html 页面。

    添加 J2EE 安全性

    利用 J2EE 安全性模型向多个 Web 资源添加访问限制。我们希望不被保护的页面放在一个目录下,而被保护的页面放在另一个目录下 —— 举例来说,我们希望保护 Employee Information 页面。

    取代在 web.xml 和 EAR 部署描述符中提供安全性,我们利用 Rational Application Developer 7.0 的 Security Editor。

    1. 打开 PVIT 的 Security Editor。如果这是您第一次打开此编辑器,那么您将看到一个问题,“您想要创建一个安全性角色吗?”选择 OK

    图 6. Security Editor
    Security Editor 对话框
    1. Add Roles 对话框将打开。通过在 Role name 框中输入名称 Admin 来创建名为 Admin 的安全性角色。
    2. 选择 Add...,Admin 角色应该下移到较低的部分。
    3. 选择 Finish。现在您拥有了一个安全性角色,您需要给其分配一些资源。
    4. Resources 部分中,选择 Employees 文件夹并将其拖到 Admin 角色的上面。现在您应该看到文件夹和其中的文件被分配给该角色。

    图 7. Security Roles
    Security Roles 对话框
    1. 这基本上是建立安全性所需的所有内容。但是,我们要对 Security 约束做一些调整。

    图 8. HTTP 方法
    HTTP 方法对话框
    • 选择 AdminCollection 并选择 HTTP 方法 —— 图 8。
    • 只选择 GetPost 方法。
    • 通过选择安全性编辑器中的 Authentication 按钮来设置 Authentication Method 类型。
    • 设置授权方法为 Basic
    • 您可以将域名设置为你希望的,或设置为空。选择 OK

      要在 EAR 部署描述符中创建安全性角色,使用 Role Mapping 按钮。如果您将完全的 WebSphere Application Server(任意版本)作为服务器目标,那么该按钮将有效。如果您指定 Tomcat,那么跳过此步骤。

    • 选择 Role Mapping 按钮。
    • 验证罗列出了您之前创建的角色。
    • 选择 Admin User 并选择 Map User。在该对话框中,选择 Map User to All Authenticated Users。这将允许系统中所有授权的用户都可以访问 Employees 文件夹中的页面。
    • 选择 OK。保存安全性编辑器文件。

      要调查:就将用户映射为所有授权的用户,或映射为每个人。

      (可选)验证 EAR 部署描述符中已经创建了该角色:

    • 现在打开 PVITWebEAR 文件夹中的 EAR 部署描述符。单击 Security 选项卡。
    • 您应该看到名为 Admin 的角色。
    • 如果您单击它,您应该看到 Websphere 绑定部分和用户 Admin 中选择了 Users/Group 复选框。

      在服务器上打开安全性:

      对于 WebSphere Application Server 用户:

    • 这在服务器配置编辑器中完成。打开已经创建的服务器的 服务器配置编辑器。展开安全性部分。
    • 检查该服务器选项启用了 Security,并输入在您的机器上已存在的用户名或密码。
    • 替代使用 SOAP 选项,避免错误。
    • 保存并关闭所有打开的编辑器,并启动服务器。
    • 在服务器上打开安全性。
      1. 使用 WebSphere Application Server 文档来寻找如何完成,这里是指导方针:
      2. 对于 WebSphere Application Server v6.0:
        • Global Security 选项卡上,启动全球安全性,而不是 Java 2 安全性。使用 Local OS 作为用户注册。
        • 用您在服务器配置中输入的用户的名字或密码来设置 Local OS 用户注册
        • 保存配置并重启服务器。
      3. 对于 WebSphere Application Server v6.1:
        • 使用 Security Configuration Wizard 来启用管理安全性(没有 Java 2 安全性)。使用 Local OS 作为用户注册,并在您的系统中指定用户。
    1. 尝试运行。当您访问 web 部署描述符中指定的文件夹时,您应该会遇到授权的难题。

      注意:(linux)您必须以 root 角色运行。在 Info Center:
      UNIX 平台上的 WebSphere Application Server 默认使用 root 用户 ID 来运行 Application Servers。如果启用了全球的安全性,那么用户注册必须不是 Local OS。使用 Local OS 用户注册需要以 root 来运行 Application Server。

      对于 Tomcat 用户的安全性:参见文章:http://www.ciol.com/content/developer/web_services/2006/106062201.asp

    2. 验证在 Tomcat_install_dir\conf 目录下存在名为 tomcat-users.xml 的文件。您应该看到来自您系统的用户名或密码,它应该与之前指定的角色相匹配。
    3. 重启 Tomcat 服务器,以确保开启了安全性。
    4. 就这样!当您在服务器上运行时,您应该会看到用户名或密码的提示。使用来自您系统的用户名或密码。

      注意:您在授权上遇到困难吗?您遇到这些问题吗?

    5. 在服务器启动时,您可以看到许多与“在验证安全性配置值时出现异常”相关的错误。
    6. 您的控制台停止工作了。
    7. 您用正确的用户名和密码登录了,但不允许您访问该页面。

      要解决这些

    8. 使用 SOAP 作为 Server Connection Type 和 admin 端口。
    9. 参见此技术文献:http://www.ibm.com/support/docview.wss?uid=swg21198280。它将让您安装安全性所必须的 filetransferSecured.ear。

      注意:您需要使用 WAS CE 控制台来启用安全性。

    转变为使用页面模板

    此处的想法是让站点看起来像使用了框架,除了现在利用页面模板的情况。利用框架方法时利用的以下想法应该在页面模板中继续维持:

    1. 有一个在所有页面都显示的图。
    2. 有一个在所有页面都显示的标题。
    3. 左手边有一列页面导航列表。

      在您的转换过程中保持这些原则和以下的指导方针:

      利用 HTML 模板创建 Web 页面模板。将其创建为设计时模板。它也应该包含:

    4. 自由布局的表格
    5. 内容区域在页面的右手边。
    6. 左手边中的列表与 menu.html 文件有相同的内容。决定您是否想要使用导航栏(参见下面),或者仅仅编辑框架方法使用的项目列表。

      使用 Web Site Navigation 来决定哪些页面需要应用模板。

    7. 打开 .website-config 文件
    8. 打开 Newly Created Pages 窗格并将必要的页面拖拽到 Web 站点导航栏上。
    9. 如果您已经选择了,那么现在您就可以向模板文件添加导航栏了。
    10. 插入 palette, context menu, insert 菜单中的 Web Site Navigation 分类中的导航栏
    11. 编辑所提供的导航栏(这些是 html 文件),从而获得您需要的导航栏结果。
    12. 利用文档和您对如何使用核心的 JSTL 标签的了解(由于 siteedit 标签复制了许多这些标签)。
    13. 如果需要,参考此文档(navspec.html:在下载部分中获取):

      将模板应用于所有页面。

    运行代码审查来验证没有违反任何安全性原则

    本部分的目的是确保作为此场景一部分的,由工具生成的代码没有违反关于 J2EE、J2SE、性能,等等,特别是新的安全性原则的任何最佳实践或原则。

    1. Analysis 功能自动出现在 Java 和 Debug 透视图中,但可以添加到任意透视图中。要这样,选择 Windows >Customize Persepctive,选择 Commands 选项卡,并单击 Analysis ...... 如果需要就添加此功能。
    2. 在菜单中,选择 Run > Analysis
    3. 选择 New 并创建新的 Configuration。在 Scope 选项卡上,选择 Analyze selected projects 并选择此场景中创建的每个工程。
    4. 选择 Rules 选项卡,并选择 Code Review for Java 复选框(通过选择上层的 Code Review for Java 来选择整个分支)。

    图 9. Analysis Configuration
    包含一个图的示例图
    1. 单击 Apply
    2. 单击 Analyze
    3. Analysis Results 完成之后将显示结果。选择 Filter 图标来选择带有结果的规则。

    图 10. Analysis
    Code Analysis 对话框 

    结束语

    遵照本文介绍的步骤,技术读者可以利用 Rational Application Developer 将示例的静态 Web 站点转换为动态 Web 站点。在这个过程中,用户利用 Rational Application Developer 的 Page 模板、J2EE 安全性,Navigation Bars 和 Code review 功能。


    作者:Chander Prakash, 助理软件工程师, IBM

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14780873/viewspace-604204/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-07-07

  • 博文量
    211
  • 访问量
    322938