西甲

了解 Struts 框架的全新后代-Shale不是Struts2

2019-12-03 06:54:10来源:励志吧0次阅读

首先,如果您正在用某种框架从事某种 Web 开发,那么应该已经有了一些作为依赖项的项目。所以这份列表比它初看上去要容易管理得多。例如,任何 Web 开发人员都应该已经有 JRE 和 JDK,也应该有一个 servlet 引擎,例如 Jakarta Tomcat。如果已经有一个 servlet 引擎,那么也应该有 Servlet API 和 JSP 引擎。另外,大部分 servlet 引擎(至少就当前版本而言)都包括一个 JSTL,并且很多都附带了 JSF。最后,大多数开发人员很可能在他们的机器上已经安装了 Ant。因此,这份列表很快就只剩下这些了:  JSF 1.1 或更高版本 (servlet 引擎中可能已经附带了)   JSTL 1.1 或更高版本 (servlet 引擎中可能已经附带了)   Jakarta Commons BeanUtils 1.7 或更高版本   Jakarta Commons Chain 1.0 或更高版本   Jakarta Commons Digester 1.7 或更高版本   Apache Logging 1.0.4 或更高版本  考虑到 Tapestry 实际上提供了将它的所有依赖项附带下载的选项,因此 “太多依赖项” 的问题很快就不成为问题了。

现在您已经知道了大概,现在我们来看看下载、安装和配置 Shale 及其依赖项的步骤。

1. 下载 Shale

要下载 Shale,可访问 Shale 项目主页。您可以看到一个 “Shale Download” 区域,其中有 Shale 框架的每晚构建的链接。单击这个链接,便可以进入如图 1 所示的一个站点:

图 1. 来自 Shale CVS 存储库的每晚构建

为了使 Shale 运行,需要下载 “framework” 文件和 “dependencies” 文件。例如,在撰写本文时我下载了以下两个文件:

shale-framework-20060204.zip   shale-dependencies-20060204.zip  当然,如果您需要或者更愿意下载 .tar.gz 版本,那么可以不选择 .zip 版本,而选择 .tar.gz 版本。由于 Shale 的开发还在进行中,目前还没有发行的构建,因此您应该尽量下载最近的每晚构建(具有最近的日期)。

下载完这两个文件后,首先解压这两个归档文件。对于核心框架,解压后可以得到一个具有形如 shale-framework-20060204/ 的名称的文件夹;对于 dependencies 归档文件,解压后可以得到一个名为 lib/ 的文件夹。将核心框架目录 shale-framework-20060204/ 转移到您希望保存 Java 项目的地方。例如,在我的系统上,我将 shale-framework-20060204/ 移动到 /usr/local/java 目录中。接下来,将 lib/ 目录移动到 Shale 目录中,所以最后的目录结构与 shale-framework-20060204/lib/ 类似。

2. 添加 Shale 库到 Web 应用程序中

下一步是将所有 Shale JAR 文件和库添加到 Web 应用程序可以访问和使用它们的位置。步骤如下:

1. 如果在 servlet 引擎中没有包含 JSF,那么将 shale-framework-20060204/lib/jsf-ri/jsf-api.jar 和 shale-framework-20060204/lib/jsf-ri/jsf-impl.jar 复制到应用程序的 WEB-INF/lib 目录中。

2. 将 shale-core.jar、shale-clay.jar、shale-tiles.jar 和 tiles-core.jar 从 shale-framework-20060204/dist/ 目录复制到 Web 应用程序的 WEB-INF/lib 目录。

3. 将以下 Shale 依赖项复制到 Web 应用程序的 WEB-INF/lib 目录:

o shale-framework-20060204/lib/commons-beanutils/commons-beanutils.jar   o shale-framework-20060204/lib/commons-chain/commons-chain.jar   o shale-framework-20060204/lib/commons-digester/commons-digester.jar   o shale-framework-20060204/lib/commons-logging/commons-logging.jar   o shale-framework-20060204/lib/commons-validator/commons-validator.jar  4. 如果要使用 Shale 的 Spring 集成特性,那么将 shale-spring.jar 从 shale-framework-20060204/dist/ 复制到 Web 应用程序的 WEB-INF/ 目录。要完成这个步骤,还必须确保 Spring 的打包 JAR 文件也在 Web 应用程序的 WEB-INF/lib 目录中。这个 JAR 文件名为 spring.jar,如果您还没有这个文件的话,可以在 shale-framework-20060204/lib/shaleframework/ 目录中找到它。

5. 如果正在使用 Java 5.0,那么将 shale-tiger.jar 从 shale-framework-20060204/dist/ 复制到 Web 应用程序 的 WEB-INF/lib 目录中。只有在使用 Java 5.0 的时候才需要执行这一步;否则,servlet 引擎和使用 Shale 的 Web 应用程序就会出问题。

再往后走就开始复杂起来(是的,这些复制操作是较容易的一部分)。接下来的事情未必都要用最难的方式去做,至少我应该让您有机会选择 试试容易的方法。使 Shale 在系统上运行这个任务的确存在捷径;您已经知道手动设置 Shale 的过程比较复杂,接下来有必要看看 “简便” 方法。

更容易的方法

重新访问 Shale 下载站点,并下载名称类似于 shale-starter-20060204.zip 的 “starter” 应用程序。解压这个归档文件,将得到一个名为 shale-starter/ 的目录。这是一个基本上配置好的 Shale Web 应用程序,用于帮助避免前一节详细介绍的复制和配置工作。首先要做的是将 shale-starter/ 目录重新命名成应用程序以后要使用的名称,例如可以将它命名为 first-shale/。进入 first-shale/ 目录,在这里可以看到一些文件和子目录。

在 first-shale/ 目录中,创建一个名为 build.properties 的新文件。通过这个文件可以定制如何构建 Shale starter 应用程序,并确保该应用程序适合您的环境设置。清单 1 展示了一个基本的 build.properties 文件,可以根据自己的环境对其进行定制。

清单 1. Shale starter 应用程序的示例 build.properties

# Basic project information

project.copyright=My project, Copyright ? 2006

project.name=My First Shale Application

project.vendor=IBM DeveloperWorks

project.vendor.id=com.ibm.dw

# Java package and context path for servlet engine

project.package=com.ibm.dw.firstShale

project.path=first-shale

# Directory for Shale distribution - change this for your system

shale.dir=/usr/local/java/shale-framework-20060204

# Directory for all your libraries - change this for your system

lib.dir=/usr/local/java/shale-framework-20060204/lib

根据系统设置好这些属性后,便可以运行 ant。Shale starter 应用程序开始构建 并(假设已经正确地设置了路径)创建一个示例应用程序。如果有问题,则构建脚本输出错误消息;这些错误消息都描述得很清楚,所以您应该可以更正任何错误。

构建过程的最后将生成一个名为 target/ 的新目录。进入这个目录,可以看到一个名为 first-app(即您在 build.properties 中为项目指定的名称)的子目录。大多数 servlet 引擎都允许将这个目录整个地复制到 servlet 引擎的 webapps/ 目录。例如,我使用的是 Tomcat,于是我将构建脚本创建的整个 first-shale 目录复制到 /usr/local/java/tomcat/webapps。

郑州银屑病医院医生
韶关市铁路医院预约挂号
保定治疗前列腺炎费用
河南哪家医院治癫痫病
江西治疗癫痫病医院哪家好
分享到: