作者Nt1 (用功点吧!)
看板java
标题Re: [问题] 关於Web Services,WSDL解析器....
时间Thu Mar 9 16:23:27 2006
※ 引述《fire2 ( q )》之铭言:
: ※ 引述《Oreilly (怕寂寞却爱自由)》之铭言:
: : 因为它根本不受限於java语言
: 1. ^^^^^^^^^^
: : 其他的程式实作出来的web service也可以解析
: 2. ^^^^^
: : 这表示要懂好几种语言 一个人作太免强了
: : 不如就只针对java web service来作应该比较简单
: : 我记得apache有一各专案有类似功能
: : http://ws.apache.org/wsif/
: : 参考看看罗:)
: 这边想问一下前辈
: 不知道是不是我观念错误了.....
: 关於1、2两点,这不正是为什麽要有Web Service的原因吗?
: 它的出现不正是为了解决上述问题
: 为什麽用了web service还会有这样不同语言的程式,无法沟通的问题呢??
: 如果我以JAVA做成了Web Service
: 然後以.Net来去读取使用
: 这应该很正常吧??(甚至用PHP,JSP等其他程式)
: 如果以JAVA做出来的程式,只能以JAVA来做Client去读取使用....
: 哪不就失去了Web Service的意义了....??
: 再这边冒昧的问一下,有错误请指导
: 敝人也正在学习中,希望可以得到更多的资讯,感谢
我想应该是没有错~这正是 用 web service 的原因,如果有按照 web servcie 的标准走
的话,是一定可以跨平台/语言的,因为底层的资讯传输靠的都是 xml,而xml又是所有机
器都可以读/解析的文字档,而 web service 之所以叫「service」,我想也是为了创造
出现真实世界的一种服务的概念,也就是你只要知道怎麽用(wsdl),在哪用(uddi),并且
把你想做的事告诉他(soap),应该一定会得到想要的结果,而不必管服务本身的开发环境
语言或逻辑。有点像 oo 的封装(透过公用方法存取私用变数)<扯到oo,跟java有关了@@>
用个例子可能就像…买早餐吧@@"" 早上起床去上学(或是中午起床!?)
肚子饿了,想吃东西,於是你就开始找早餐店(uddi),找到一家「每而每」,就决定是
他了,於是你到了每而每拿起他的目录(wsdl),上面有:
1号餐:汉堡 + 薯条 +可乐 60元
2号餐:火腿蛋三明治 + 奶茶 30元 ...等等的
当然,不用管老板背後是怎麽运作的…因为你只想要「吃到早餐」就可以了,於是,你就
跟老板说:「老板!我要2号餐」并且把30元给老板 (soap),老板便开始动作,最後,
给你 火腿蛋三明治 + 奶茶 (也是一份xml文件),结束这次的交易(连线)。
而 web service 可以在网路世界中实现这种机制,举个书中最常举的例子,就是你要开
家网路旅行社,你需要「航机班次查询/预定、当地天气预报、汇率换算、旅游景点,
旅馆订房…等等的」
这麽多不同领域的功能要怎麽整合起来?万一每一个系统都用不同的平台开发,那不是
糟了…就算真的整合起来,维护起来也累死了@@"
这时候~~如果这些系统都做成 web service 的形式,那!你只要取得这些服务的 wsdl
你就可以把他当成自己一般的 methods 来用了。(不管是 java、.net、php...都一样)
如果对方服务正常的话,这家网路旅行社的功能没多少时间就可以开发完了,
日後维护起来也快。
之前的作业就是老师叫我们到 xmethods 上找服务,然後开发出一个有意义的系统出来
xmethods 里面的服务开发平台有 .net有 xxx 有 xxx,但是完全不用管,只要他的 wsdl
连的到就好^^。接着就是看你用什麽方法把他转成程式了(java有 axis的 wsdl2Java
.net 好像是啥加入web参考)
...............应该是我太多废话了@@" 只是想赚点 p 币。
其实我只是想说… web service 通通都是用 xml 来传递讯息,而 xml 只是文字,所有
机器都看得懂,而 传递讯息的方式又是透过 http(soap over http),所以才可以跨平台
至於之间好像有提到说如果回传的形态是该开发语言的物件的话…@@ 不知道会怎样耶^^|||
不知道规范里面有没有说,但我想,如果还传回的物件还必需多花手续想辨法解开的话,
应该就失去 web service 本来的目的了^^,因为物件包涵属性和方法,若传回来的东西
是一个物件的话,表示要拿到你要的东西,还必需知道这个物件的方法名称/形态 @@
那何不在当初直接把这些方法名称和属性当成 web service 的参数来传,还要用物件
包起来,感觉有点…多此一举^^
-------
一点个人浅见^^
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.139.168.205