对VB+web service+J2EE架构方式进行的可行性测试

 

 

为了在系统中集成AUTOCAD,VB+web service+J2EE架构方式进行的可行性测试.

 

 

.服务器端开发和运行环境:

editplus+jdk1.4.2+tomcat5.0+Axis1.2.1

其中Axis1.2.1下载地址:http://apache.justdn.org/ws/axis/1_2_1/axis-bin-1_2_1.zip

 

 

Axis介绍(参考Axis user-guide):

Axis本质上就是一个SOAP引擎,它是一个提供创建服务器端,客户端和网关的SOAP处理的框架.目前版本是为Java编写的,不过为C++的版本正在开发中.Axis并不完全是一个SOAP引擎,它还包括以下内容:

 

 

1.是一个独立的SOAP服务器.

2.是一个嵌入Servlet引擎(例如Tomcat)的服务器.

3.支持Web Serive Description Language(WSDL).

4.转化WSDLJava类的工具.

5.例子程序.

6.TCP/IP数据包监视工具.

 

 

更多内容可以参考Axis doc.

 

 

 

 

.服务器端开发及运行环境的配置:

 

 

1.为了简便只要将下载的Axis解压缩,拷贝其中的axis文件夹到{tomcat}//webapps,启动tomcat.

2.输入http://localhost:8080//axis,可以看到Axis的欢迎页面就算是成功了.

 

 

 

 

.web service的开发和部署:

 

 

1.部署方式说明:Axis提供两种部署web service的方式:

a.快速部署方式:这种方式只要将一个java源文件改名为jws文件,拷贝到指定的目录下(需要符合一定规范),Axis就可以部署.

b.通过WSDD文件部署,这种方式还没用实验过(要仔细看看文档呀).

 

 

2.程序编写,一个简单的类:

public class Hello

{

        public String greet(String hello)

        {

            System.out.println(hello);

               return "是你丫呀,抽空聚聚!";

        }

}

 

 

3.web-service部署:

为了简单,现在以第一中方式部署web service.将文件保存,拷贝到{tomcat}//webapps//axis,改名为Hello.jws,在浏览器中输入http://localhost:8080/axis/Hello.jws?wsdl就可以看到Hello这个类对应的WSDL文件了.

 

 

到这里服务器端的web service开发,运行环境,发布就完成了,现在进行客户端应用的开发.

 

 

.客户端开发环境:

vb6.0(vb.net)+SOAP toolkit 3.0+AutoCAD2002.

说明:其中SOAP toolkit 3.0在使用vb6.0中才需要,vb.net其中已经包含有访问WEB SERVICE的库,不需要SOAP toolkit.

SOAP toolkit 3.0下载地址:http://download.microsoft.com/download/2/e/0/2e068a11-9ef7-45f5-820f-89573d7c4939/soapsdk.exe

 

 

SOAP toolkit说明:

它可以在客户端程序员不需要了解WSDL的语法格式和SOAP的情况下比较容易的创建web service客户端程序,因为使用SOAP toolkit自动解析符合SOAPXML消息.只需要了解在服务器端已经被描述成WSDL,提供WEB SERVICE的方法原型,也就是说在编程调用web service时只需要参照要调用的方法就可以了.

 

 

其中包含以下组件:

1.客户端组件:允许应用程序调用web service被描述在WSDL文件中的操作,WSDL文件描述在服务器上提供的服务或者操作.

 

 

2.服务器端组件:映射web service操作(WSDLWSML文件中描述的服务器提供的操作或服务)COM对象的调用.

 

 

3.其他组件:包含了创建、传送、处理SOAP消息的所有组件.

 

 

更多内容可以参考SOAP toolkit中的帮助文档.

 

 

.客户端应用的开发:

 

 

1.安装SOAP toolkit.

2.安装完成后,vb中新建一个standard project(exe).

3.在生成的form上放一个command控件,改名为greet.

4.双击command控件,打开代码编辑窗口.

5.为工程引用SOAP.

6.编写command控件click响应代码:

 

 

Dim soapClient As New MSSOAPLib30.SoapClient30

soapClient.MSSoapInit ("http://localhost:8080/axis/Hello1.jws?wsdl")

Dim returnMsg

returnMsg = soapClient.greet("小子,久仰大名,今天俺们终于见面了!")

MsgBox returnMsg

 

 

7.运行工程,点击greet,弹出消息框,显示从服务器传递过来的一个字符串内容,并且在服务器控制台中也打印出从客户端传递过去的信息.

 

 

测试结果:客户端运行结果

测试结果:客户端运行结果

测试结果:服务器端运行结果

测试结果:服务器端运行结果

测试结果:服务器端运行结果

测试结果:服务器端运行结果

 

 

测试成功!

 

 

.总结:

这个例子相当简单,其中服务器和客户端需要编写的代码一共才13行而已,但它确实实现了vbjava

务器之间的消息传递.这个例子只是为了证实采用web service这种方式为系统集成AUTOCAD的可行性.

通过测试,发现客户端的响应相当快,现在还未进行大数据量的测试,但是AUTOCAD与系统交互的信息比

较少,这种方式完全可以满足要求数据交互量的要求.为了建构一个真正可以实际应用的系统还有很多工作要做,文档就够看的了,长路漫漫!

 

 

.参考资料:

http://www-128.ibm.com/developerworks/cn/webservices/

http://www.microsoft.com/china/MSDN/library/WebServices/default.mspx

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值