WEB开发网
开发学院软件开发Java AJAX 及使用 E4X 编写 Web 服务脚本,第 2 部分:... 阅读

AJAX 及使用 E4X 编写 Web 服务脚本,第 2 部分:用 E4X 创建新的 Web 服务

 2010-03-09 00:00:00 来源:WEB开发网   
核心提示: 当然,可能的情况下在 E4X 中使用 Web 服务安全,AJAX 及使用 E4X 编写 Web 服务脚本,第 2 部分:用 E4X 创建新的 Web 服务(3),可能不是那么有趣(我们还没有试过!),所以将 E4X 嵌入到一个 Web 服务容器中非常有利,我们将代码放到部署描述符中,如本文中的一

当然,可能的情况下在 E4X 中使用 Web 服务安全,可能不是那么有趣(我们还没有试过!)。所以将 E4X 嵌入到一个 Web 服务容器中非常有利。另一方面,如果您在实现一个非常简单的 Web 服务(比如没有 Web 服务 安全的考虑),您根本不需要一个 Web 服务容器。所以第三种选择就是将 Rhino/E4X 部署为一个 servlet 容器中的 servlet。如果您只是做简单的报头支持,比如说 Web 服务寻址,您可以在 E4X 中处理,实际上这个实现起来非常简单。

尽管在这篇文章中包括了 E4XServlet 和一个可以在下载中找到的样本压缩包的例子,但是我们着重介绍使用 Axis。

Axis 提供了一个非常简单的方法:通过将 JAR 文件加入到类路径环境变量中就可以加入新的提供者。为了实现这个方法,您需要 Axis 1.2 或者更高的版本。您可以从 Apache AXIS Web 服务引擎中下载。由于 Axis 之前发布的版本在保存脚本方面存在问题,所以我们推荐使用上面提到的版本。(如果遇到了类似服务器重新启动之后脚本不能工作的情况,可能是您使用的版本有这个缺陷,请使用新版本的 Axis 再次重新部署。)

E4X 提供者要求您使用 E4XProvider.jar(下面会用到)来更新 Axis 类路径,除此之外还要包含 rhino.jar 和 xbean.jar。

一旦更新了 Axis 类路径,您需要创建一个部署脚本并将其部署到 Axis 中。与使用一个 Java 实现的服务不同,在这个模型中我们不需要将任何代码部署到类路径中。相反,我们将代码放到部署描述符中,如本文中的一个例子 e4xstock.wsdd 所示。(请参阅下载。)

清单 1. e4xstock.wsdd

<deployment name="test" xmlns="http://xml.apache.org/axis/wsdd/" 
      xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"> 
 <service name="E4XStock" provider="java:E4X"> 
  <parameter name="type" value="body"/> 
  <documentation> 
    <![CDATA[ 
     function service(x) { 
       var value = (x..*::Symbol=="IBM")?983:52.5; 
      
       var n = new Namespace("urn:quoteservice"); 
       default xml namespace = n; 
       response = 
        <getQuoteReturn> 
          <Result>{value}</Result> 
        </getQuoteReturn>; 
       return response; 
     } 
    ]]> 
  </documentation> 
 </service> 
</deployment> 

上一页  1 2 3 4 5 6 7 8  下一页

Tags:AJAX 使用 EX

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接