开发webservice应用程序

随着Internet/Intranet的发展,开发模式发生了变化,第一波重要的技术是http/html,他给Internet/Intranet和电子商务都带来重要的影响;第二波是java技术的兴起,java带来了跨品台的锲机,让开发人员可以使用单一的语言和环境开发应用系统;第三波是xml技术的兴起,它提供了标准的数据封装,让数据交换跨越了各种平台、操作系统和各种工具,通过xml,各种数据交换不再让人头痛。



Webservice 的概念是使用一个标准的输出接口来定义代码提供的功能,以便让外界可以通过这个标准的输出接口来调用,而所谓的标准输出接口就是wsdl,wsdl是一个xml组成的文件,描述了实现程序对外提供函数的原型,客户端可以通过wsdl来调用实现程序提供的服务代码。在这里我不想详细的介绍webservice的原理和概念,通过一个例子来展示新的基于网络的开发模式。



在这个例子中服务端用java完成,客户端用delphi完成,开发工具是JBuilder9和Delphi7,服务器是tomcat5.0。



首先建立服务端程序:


启动JBuilder建立一个工程,设置服务器为tomcat4.0(因为JBuilder9不支持tomcat5.0,实现后将其在tomcat5.0中发布)。



新建一个class 代码如下:

public class HelloWorld{

  public String sayHello(){

    return "Hello world!";

  }

 

  public String echo(String u){

    return "Hello " + u;

  }

}

选择File菜单New,在弹出的对话框中选择web services页中的Web Serivice Configuation Wizard,新建webapp axis并配置servers。



再次选择File菜单,New再出现的窗口中选择Export as a web service Wizard,在弹出的向导中选择要导出的类名,其它项直接选默认值即可。



运行刚才建立的程序,出现“JBuilder Apache Axis Admin Console”的页面表示刚才建立的webservice成功。点击View超级链接进入“And now... Some Services”页面,点击HelloWorld(WSDL)的链接出现WSDL描述文件,至此webservice服务端建立完成。



将刚才建立的webservice发布到tomcat5.0中,在tomcat的webapps目录下新建webservicetest目录,将用JBulider建立的工程目录下的 axis目录下的文件全部复制到其中,重新启动tomcat,访问http://localhost:8080/webservicetest/,如果看到“JBuilder Apache Axis Admin Console”页面说明发布成功。



启动Delphi7新建一个工程,然后选择新建webservices中WSDL importer向导,将刚才发布的webservice描述文件WSDL导入(我的地址是:http://localhost:8080/webservicetest/services/HelloWorld?wsdl)自动生成一个单元HelloWorld1,在Unit1中使用单元HelloWorld1,在窗体上放置两个button,在button1的Click事件中写如下测试代码:



procedure TForm1.Button1Click(Sender: TObject);

var

  test:HelloWorld;

  str:String;

begin

  test := GetHelloWorld;(得到webservice提供的远程接口)

  str := test.sayHello;

  ShowMessage(str);

  test := nil;

end;



运行测试程序, 弹出“hello,world”说明成功。Button的测试代码类似,我在这里不再重复。

至此,一个完成webservice程序完成,并能顺利运行。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值