- PR -

XML Web Service って・・・

投稿者投稿内容
ALADDIN
ベテラン
会議室デビュー日: 2002/08/20
投稿数: 85
お住まい・勤務地: 渋谷
投稿日時: 2002-08-21 17:37
またまた初歩的な疑問が出てきたALADDINです。

XML Web ServiceってOCXのウェブ版というようなイメージなのでしょうか?
すいませんつまらない質問で^^;

いまだにコーディングすることができずに悶々と情報を集めていると
XML Web ServiceはUDDIに登録して他の企業がつかえるというような
イメージをMSは持っているみたいですが、システムとデータって対ですよね。
他の企業に公開していいデータってあんまりないのでは?

思うに使われ方としては社内用のWebサーバに乗っけて使うというのが
現時点では一般的ですよね。開発者側は、お客様から以来が合った機能を
XML Web Serviceで作成します。お客様側ではすでに社内イントラ用の
Webアプリがあります。XML Web Serviceを使うと現在構築中のお客様の
社内システムに内部的に組み込まれるわけですから違和感のないUIになる。
こんな感じのイメージを持ったのですが、みなさんはどうおもわれますか?

情報だけ集めた実作業が伴わない思い込みのイメージなので間違っていたら
訂正レスおねがいします





katsunori
会議室デビュー日: 2002/06/09
投稿数: 5
投稿日時: 2002-08-21 22:47
岡本です

下記サイト内でWebServicesについてリンクがいくつか
張られていますので、参考にしてみたらどうでしょうか
http://db-appli.com/xoops/modules/newbb/viewforum.php?forum=4&30


ALADDIN
ベテラン
会議室デビュー日: 2002/08/20
投稿数: 85
お住まい・勤務地: 渋谷
投稿日時: 2002-08-22 09:59
katsunoriさんレスありがとです。
参考にさせていただきます。

見ていたところ、ますます ほぼイントラ用しか使えないな
とおもいました。公共的なところか、よっぽどの大手が
作ったWebサービス以外は利用が難しそうだと感じました。
個人的に作成したHPなどでの利用はあるかもしれませんが、
所詮は他人様が作ったサービスなので、いつサービスがなくなるか
分からないのでは?(サービス提供会社の倒産とか)社内システム
で利用していたWebサービスが、ある日から使用不可能になると
いうことも考えられますね。
不安要素がある機能を社内イントラシステムに組み込むとは
思えないのですが・・・・。
利用するWebサービスの種類が多くなればなるほどその危険性は
高まります。

うりゅう
大ベテラン
会議室デビュー日: 2002/06/15
投稿数: 202
お住まい・勤務地: Hiroshima
投稿日時: 2002-08-22 18:02
こんにちはALADDINさん。

 XML Web Serviceは非常に誤解の受けやすい表現がされていると思います。かくいう僕も誤解しているのかもしれませんが、僕のとらえ方をざっくり聞いてください。

>XML Web ServiceはUDDIに登録して他の企業がつかえるというような
>イメージをMSは持っているみたいですが、システムとデータって対ですよね。
>他の企業に公開していいデータってあんまりないのでは

 XML Web Serviceの中のUDDIというのは、XML Web Serviceを便利に使うための一機能にすぎません。UDDIがあるので、一般に公開されているXML Web Serviceを誰しもが利用できるということなのです。検索エンジンのようなものといえます。

 XML Web Serviceにはもちろんセキュリティが実装されています。決められたユーザーやグループしか使えないようにできますので、どういった用途にも使えます。セキュリティの実装に関しては以下を参考にしてください。

http://www.microsoft.com/japan/msdn/webservices/security/securitywhitepaper.asp

では、XML Web Serviceとはなにか?僕はざっくりと以下の3つの使い方をするものだと思っています。

 1.Windows Formsのアプリケーションを簡単に、ネットワーク対応にするために使う。クライアントサーバー型のシステムを作る際に、クライアント側のシステムの方ではローカルアプリのように作成して、サーバのXML Web Serviceにアクセスすることでデータベースからデータを受け取る。XML Web Serviceを使うことで、サーバとの接続は非常に単純になります。ファイヤーウォールも越えられるので、そういったインテグレーション上の問題もクリアできます(単純に言えばDB用のポートをあける必要も無い)。ローカルアプリ側ではデータアダプターを作る必要も無いわけです。

 2.ASP.NETなどのWeb Formsにおいて、サーバ側の非同期な処理を実装するために使う。もちろん他の方法論でも構いませんが、汎用性を考えるならXML Web Serviceが一番適しています。それはコントロール(オブジェクト)を、そのまま引数に渡せる強みもあります。

 3.よく使われるような汎用的な処理をXML Web Serviceとして使い回すために使う。確かに、.NETからはオブジェクト指向の言語になりましたが、オブジェクトが共有できるのはあくまで「ソリューション」内のものに限られます。例えば、あるプロジェクトに郵便番号を入力すると、住所を返してくるクラスを作成したとして、それが使いたいケースはたくさんあるでしょうが、そのたびにソリューションの中に、そのプロジェクトを追加しなければならないということになります。そういったケースの場合にはXML Web Serviceとして実装しておけば、どのソリューションからも汎用的に使うことの出来る処理を作れます。

 もちろん、BtoBのデータ交換などの際に使うなど色々ありますが、一技術者として考えれば上記の3つの処理において使うことができるだけでもかなりメリットがあると思います。もちろん1・2・3はそれぞれ組み合わせて使われると思いますが。結局、一言でまとめるとXML Web Serviceとは、
『外部に公開でき、オブジェクトを引数に使える関数』(うわっ粗!)
というとても便利なものだと、僕は捉えてますが、間違えているのだろうか?(笑)
_________________
--------------------------------------
ネットビルド 小田原貴樹
odahara@netbuiuld.jp
--------------------------------------
ALADDIN
ベテラン
会議室デビュー日: 2002/08/20
投稿数: 85
お住まい・勤務地: 渋谷
投稿日時: 2002-08-22 18:48
こんばんわ、うりゅうさん^^

確かに便利です。それは私も認識してるのですが・・・。
やっと開発できる環境が整ったので私もWebサービスを使って
開発したいと思っています。というかそうするのが一番便利だろうと
思っています。しかし!あくまで自社内サーバ(お客様側の)に存在する
Webサービスに限定されるでしょう。
どうしても他社にある各種Webサービスをいろいろ使ってというのが
今のところしっくり来ないのです。
複数の会社が登録するWebサービスって結局それぞれの会社が用意した
サーバ上にあるんですよね。例えば、あるシステムで極端に言うと
10の他社提供のWebサービスを利用していたとすると、自社のサーバを
含めると11のサーバにシステムの一部が分散されることになりますよね。
当然サーバの障害率がアップすると思います。
またまた極端にいうと常に何らかの機能がサーバ障害によって使えないということも
ありますよね。

Webシステムに反対しているわけではないのですが・・・。
(逆に良いと思っています。使い方がげんていされるのかなと・・・)
Webサービス自体は今後のシステム展開にもいろいろな可能性を
あたらしく提供してくれるでしょう。

んーまだ理解できていないのかな?

うりゅう
大ベテラン
会議室デビュー日: 2002/06/15
投稿数: 202
お住まい・勤務地: Hiroshima
投稿日時: 2002-08-22 19:09
こんばんわ、ALADDINさん。

>しかし!あくまで自社内サーバ(お客様側の)に存在する
>Webサービスに限定されるでしょう。
>どうしても他社にある各種Webサービスをいろいろ使ってというのが
>今のところしっくり来ないのです。

 実際上の話、他社にある各種Webサービスを使ってと言うケースはほとんどないんじゃないないでしょうか?業務用システムに組み込むUDDIに登録されて便利なサービスというのは公的な情報の配信などしか考えにくいです。

・天気予報や過去の天気の情報
・株価や為替の情報
・郵便番号や地図区分に関する情報
・検索エンジン
・本やCDなどの情報

 こうした公的情報コンテンツが、使われるとすればメインでしょう。他にも便利なサービスは思いつきますが、結局のところ公的なXML Web Serviceを利用する場合、システムのおまけとしての機能か、その情報そのものがメインとなるものか、どちらかしかないと考えられます。

 XML Web Serviceはあくまで基盤となる技術です。公開されているサービスはおまけとして捉え、クローズドな開発のために使うほうがメインだと考えています。


_________________
--------------------------------------
ネットビルド 小田原貴樹
odahara@netbuiuld.jp
--------------------------------------
ALADDIN
ベテラン
会議室デビュー日: 2002/08/20
投稿数: 85
お住まい・勤務地: 渋谷
投稿日時: 2002-08-22 19:28
お疲れ様ですW うりゅうさん

>こうした公的情報コンテンツが、使われるとすればメインでしょう。他にも便利なサ>ービスは思いつきますが、結局のところ公的なXML Web Serviceを利用する場合、シス>テムのおまけとしての機能か、その情報そのものがメインとなるものか、どちらかし>かないと考えられます。

> XML Web Serviceはあくまで基盤となる技術です。公開されているサービスはおまけ>として捉え、クローズドな開発のために使うほうがメインだと考えています。

やはりそう思いますか・・にやりW
私も同じ考えです^^
MSのいってるイメージがあまりにも壮大だったもので
なんか私が思いつかないような秘密があるのかと
考えてしまいましたW

つまらない質問に付き合って頂きありがとうございました
biac
大ベテラン
会議室デビュー日: 2001/10/22
投稿数: 106
投稿日時: 2002-08-23 09:32
うりゅうさん wrote ...
引用:

XML Web Serviceはあくまで基盤となる技術です。公開されているサービスはおまけとして捉え、クローズドな開発のために使うほうがメインだと考えています。


クローズドな開発に限定することはないでしょう。
インターネットのコマースサイトで使ってもいいんですよ。

ALADDIN さん wrote ...
引用:

MSのいってるイメージがあまりにも壮大だったもので
なんか私が思いつかないような秘密があるのかと
考えてしまいましたW
い質問に付き合って頂きありがとうございました


MS の描いている .NET プラットフォームという概念 (*) は、たしかに壮大な計画で、指摘されたような可用性の問題とかセキュリティの問題とか、未解決の部分が少なからず残っています。 そういった点を、もちろん MS は順番に潰そうとしているわけですが… まぁ、ちゃんと出来上がるまでは (実用には) 使えない〜、ってわけで。 f(^^;

(*) 端的に言えば、インターネットそのものをプラットフォーム (OS) と考え、 その上で動いてる「DLL」として XML Web サービスを置く。


それよりは。
とりあえず、HTTP 経由の単なるリモートプロシージャコールだと思えば、いろいろ使い道が見えてきます。

XML Web サービスを利用する側 (つまり、クライアント側) は、Windows アプリでも、Java アプリでも、CGI のプログラムでも、なんでもいいんですよ?

で、今の Web アプリには、次のような欠点があります。
・汎用ブラウザで使えるものは、操作が煩雑。
・操作性を良くしようとすると、ブラウザに依存したり Java のバージョンに依存したりしてしまう。
・基本的にローカルなリソースを使えない。
・さらに操作性を良くしようとすると、Windows C/S システムが欲しい。
そういった問題を解決するには、複数の Web アプリと C/S システムを開発する必要があるわけです。 つまり、一般のブラウザ用・IE6 専用・携帯電話 (iモード用、au用…)・Windows 用の C/S システム… を、別々に作ることになります。

ここで、ビジネスロジック部分を XML Web サービスとして実装すれば、どうでしょう?
Web アプリとして個別に開発するのは、ユーザーインターフェース部分だけ。 さらに、C/S システムも、クライアント部分だけ作ればいいんです。
そして、これらは (C/S システムも含めて) インターネットで使うことが可能です。

つまり、例えばコマースサイトで、
・とりあえず一回だけの人は、ブラウザから注文する。
・アプリケーション (MSIL でも Java でも、なんでもいい) をダウンロードして使うことをいとわない人には、高機能な UI を使って注文してもらえる。
…ということが、楽に実現できるようになるわけです。 (MSIL には、安心してローカルで実行してもらえるセキュリティの仕組みが造り込まれていますしね。)


# そういうふうに考えているので、ASP.NET で作る UI は、もう単純なものでいいや、と。 高機能な UI が欲しければ、Windows Forms で作ればいいんだから。

スキルアップ/キャリアアップ(JOB@IT)