转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 软件开发 >> JAVA开发 >> 正文
J2EE Web服务客户端质量报告(五)         ★★★★

J2EE Web服务客户端质量报告(五)

作者:闵涛 文章来源:闵涛的学习笔记 点击数:1016 更新时间:2009/4/22 23:28:27
  建立样品客户端应用

  要建立样品客户端应用,请将下列文件系统添加到IDE中:<download directory>/Metrics/TransactionClient.
该文件系统包含一个应用类和一个Xact 软件包。应用类可模仿客户端事务的执行,Xact 软件包包含客户端Web服务处理器。

  Xact软件包可使用Sun Web服务开发者工具包来创建,这个工具包包括在Sun ONE应用框架内。批文件gen.bat使用wscompile命令创建Xact软件包。如果你想重建该软件包的话, 你只需调整环境变量和它使用的config.xml 中的URL。但是,如果你这样做的话,你得重写添加到Stub 类Web方法的代码行,你要用它来覆盖原来的代码行。

  我们看看XactClientApp,样品客户端应用程序类:

import Xact.*;
import javax.xml.rpc.Stub;
import Payload.*;

public class XactClientApp {

/** Creates a new instance of XactClientApp */
public XactClientApp() {
}

/**
* @param args the command line arguments
*/

public static void main(String[] args) {
 try {
  int cyclesPerXact = 1;
  int numberXacts = 5;
  String transactionID = "";
  String transactionType =
  String.valueOf(cyclesPerXact) +" submit,check,gets";
  Stub stub = createProxy();
  XactServiceServantInterface xact = (XactServiceServantInterface)stub;
  CurrentReport cr = new CurrentReport();
  for (int x=1; x<= numberXacts;x++){
   cr.BeginTransaction();
   for (int i=1; i<=cyclesPerXact;i++){
    transactionID = xact.submitWork("new transaction");
    System.out.println("Transaction:" + transactionID);
    boolean unused = xact.checkWork(transactionID);
    String ignore = xact.getResult(transactionID);
   }
   cr.CommitTransaction(transactionID, transactionType,"success");
  }
 } catch (Exception ex) {
  ex.printStackTrace();
 }
}

private static Stub createProxy() {
 return (Stub)(new XactService_Impl()).getXactServiceServantInterfacePort();
}
}
  先看它的内部循环。客户端应用判断商业事务的组成。在本例中,它包括三个Web服务调用:针对submitWork()、checkWork()和getResult()的分别调用。客户端使用beginTransaction()和 commitTransaction()定界事务。在该循环的第二个循环中,在CurrentReport.LastReport 对象中将出现一个完整的ClientReport。当客户端调用submitWork()时,Web 服务客户端Stub 类中相应方法调用Serializer.attachPendingReportToMessage() 将该报告连接到SOAP信息上。

  CyclesperXact和numberXacts用于控制每件事务的Web服务调用数和客户端在运行过程中递交的事务数。

  右击应用程序图标XactClientApp;先选择Build All项,接着选择Execute项。在执行窗口中,你会看到:对于每件事务,应用都报告它收到的事务标志符。观察应用服务Windows输出控制台,你可以看到以下的代码行:

INFO: CORE3274: successful server startup
INFO: CORE5053: Application onReady complete.
INFO: CORE3282: stdout: Exception occurred connecting to queue: javax.naming.Nam
eNotFoundException
INFO: CORE3282: stdout: Exception occurred connecting to queue: javax.naming.Nam
eNotFoundException
INFO: CORE3282: stdout: Exception occurred connecting to queue: javax.naming.Nam
eNotFoundException
INFO: CORE3282: stdout: Exception occurred connecting to queue: javax.naming.Nam
eNotFoundException

  我们还没有安装应用服务次数排列或者配置应用服务次数读取器EJB。客户端产生次数福建,服务器接收它,并试图将它列队到一个不存在的队列中。Serializer 类只是报告错误并允许应用程序继续运行。回想我们的目标之一就是保持商业事物系统的总可靠性。可是我们却看到即使新的次数组件失败,关键的商业事务仍然可以照常进行。


[网页制作][J2EE] 实战开发EJB  [网页制作]实战 J2EE 开发购物网站 经验篇
[JAVA开发]周末闲侃:论J2EE程序员的武功修为  [JAVA开发]基于J2EE的电子商务网站实例解析
[JAVA开发]用AJAX+J2EE实现一个网上会议室系统  [JAVA开发]利用Spring框架改进J2EE编程
[JAVA开发]J2EE MVC模式JSF与Struts的异同  [JAVA开发]J2EE Web服务客户端质量报告(四)
[JAVA开发]J2EE Web服务客户端质量报告(三)  [JAVA开发]J2EE Web服务客户端质量报告(二)
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · C语言系列  · VB.NET程序
    · JAVA开发  · Delphi程序
    · 脚本语言
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台