Advanced Server-side ProgrammingシリーズJavaによるSOAP プログラミング パーフェクトガイド

[表紙]JavaによるSOAP プログラミング パーフェクトガイド

紙版発売

B5変形判/352ページ

定価3,795円(本体3,450円+税10%)

ISBN 4-7741-1599-1

ただいま弊社在庫はございません。

→学校・法人一括購入ご検討の皆様へ

書籍の概要

この本の概要

Webサービスの中でも最も注目度が高いSOAP(Simple Object Access Protocol)は,XMLベースのメッセージングサービスです。本書では,SOAPとの相性が良いJavaによるプログラミングをベースに,概要,アーキテクチャ解説からサーバアプリケーションの作成,.NETとの連携に至るまで,SOAPが現在もつ可能性すべてに言及します。

こんな方におすすめ

  • Webサービスに興味があるSE/プログラマ
  • J2EEプログラマ

目次

  • 謝辞
  • はじめに

1 XML メッセージングとは

  • 1.1 メッセージングアーキテクチャ
    • 1.1.1 メンタルシフト
    • 1.1.2 メッセージングの多様性
    • 1.1.3 EDI-メッセージングのパイオニア
    • 1.1.4 アプリケーションとしてのメッセージングシステム
    • 1.1.5 JMSについて
    • 1.1.6 ディレクトリシステム
  • 1.2 オブジェクト通信
    • 1.2.1 CORBA もう一つのパイオニア
    • 1.2.2 COM
    • 1.2.3 RMI
    • 1.2.4 RMIとIIOP
    • 1.3 JavaプログラミングとXML
    • 1.3.1 DOM
    • 1.3.2 SAX
    • 1.3.3 Javaのパーサ用ツールキット
  • 1.4 XML関連の仕様
  • 1.5 XMLベースのメッセージ
    • 1.5.1 XML-RPC SOAPの原型
  • 1.6 主な参加組織

2 SOAPの概論

  • 2.1 SOAPの現状
    • 2.1.1 XMLプロトコルワーキンググループ
  • 2.2 SOAP1.1のコンポーネント
    • 2.2.1 JavaによるSOAPの実装
    • 2.2.2 SOAPの対象外
    • 2.2.3 SOAPと名前空間
    • 2.2.4 名前空間について
    • 2.2.5 SOAPエンベロープ
    • 2.2.6 SOAPヘッダ
    • 2.2.7 SOAPボディ
    • 2.2.8 HTTPによる転送
    • 2.2.9 SOAPのHTTPレスポンス
  • 2.3 添付ファイル付きSOAPメッセージ
  • 2.4 SOAPとWSDL,UDDI
  • 2.5 Sun MicrosystemsとSOAP
    • 2.5.1 JAXM(Java API for XML Messaging)
  • 2.6 SOAPの動向を知るには

3 SOAPサーバの例

  • 3.1 Tomcatサーバのインストール
    • 3.1.1 Tomcatのインストール
    • 3.1.2 TomcatのWebアプリケーション
    • 3.1.3 Tomcatサーバの構成
  • 3.2 SOAP Webアプリケーションのインストール
    • 3.2.1 WARファイルの展開
    • 3.2.2 必要なライブラリの追加
    • 3.2.3 インストレーションのテスト
  • 3.3 サーバアプリケーションの配置
    • 3.3.1 AddressBookサービスの配置
    • 3.3.2 配置によって作成される情報
    • 3.3.3 クライアントクラスの実行
  • 3.4 配置の仕組み
    • 3.4.1 マッピングとSOAPのマッピングレジストリ
    • 3.4.2 配置リスト
  • 3.5 AddressBookでの処理
  • 3.6 サーバ側でのSOAPトラブルシューティング
    • 3.6.1 CLASSPATHの問題
    • 3.6.2 XMLパーサの問題
    • 3.6.3 不可解なエラー
    • 3.6.4 デバックツール

4 WSDLとUDDIの重要性

  • 4.1 高水準の情報記述
    • 4.1.1 UDDI
    • 4.1.2 ebXML
  • 4.2 WSDL
    • 4.2.1 WSDLの概要
    • 4.2.2 WADL定義のまとめ
  • 4.3 WSDLの自動化
    • 4.3.1 クラスからのWSDL作成
  • 4.4 Webサービスの今後

5 SOAPのデータエンコード

  • 5.1 SOAPの仕様
    • 5.1.1 スキーマの改良
    • 5.1.2 単純データ型
    • 5.1.3 サンプルコードについて
    • 5.1.4 Booleanデータ
    • 5.1.5 バイナリデータとバイト配列
    • 5.1.6 複合型
    • 5.1.7 配列
    • 5.1.8 多重参照
  • 5.2 Apache SOAP独自のエンコーディング
    • 5.2.1 リテラルXMLエンコーディング
  • 5.3 Beanシリアライザ
    • 5.3.1 BeanSerializerの処理
  • 5.4 カスタムのシリアライザ

6 SOAPサーバアプリケーションの作成

  • 6.1 SOAPサーバのアーキテクチャ
    • 6.1.1 SOAPメッセージの転送
  • 6.2 サーバの違反コード
    • 6.2.1 定義済み違反コード
    • 6.2.2 Apache SOAPでの違反の処理
  • 6.3 サービスのアーキテクチャ
    • 6.3.1 出版物データベースの例
    • 6.3.2 サーバアプリケーションインターフェース
    • 6.3.3 サーバメソッドの例
  • 6.4 自作サーバ
    • 6.4.1 SOAPのXMLパーサ
    • 6.4.2 ベアボーンサーバ
  • 6.5 SOAPサーバの使用

7 SOAPクライアントアーキテクチャとHTTP

  • 7.1 Apache SOAPクライアントのフレームワーク
    • 7.1.1 RPCクライアントアーキテクチャ
    • 7.1.2 Callクラス
    • 7.1.3 Parameterクラス
    • 7.1.4 HTTPヘッダの制御
    • 7.1.5 SAOPMappingRegistryクラス
  • 7-2 クライアント側でのデバック
    • 7.2.1 メッセージの監視
    • 7.2.2 例外情報の利用
    • 7.2.3 一般的な問題
  • 7-3 Publicationsサーバのクライアント
    • 7.3.1 テストとデバッグ
  • 7.4 SOAPクライアントの構築

8 メッセージを使用するSOAPアーキテクチャ

  • 8.1 メッセージングシステムについて
    • 8.1.1 ポイントツーポイントモデル
    • 8.1.2 パブリッシュ/サブスクライブモデル
    • 8.1.3 メッセージングの利点
    • 8.1.4 メッセージングの欠点
    • 8.1.5 信頼性
    • 8.1.6 SOAPの標準とメッセージング
  • 8.2 JMS
    • 8.2.1 Messageの特性
    • 8.2.2 JMSメッセージの種類
    • 8.2.3 SwiftMQ実装
    • 8.2.4 ポイントツーポイントのSOAPメッセージングの例
    • 8.2.5 パブリッシュ/サブスクライブ型メッセージング
  • 8.3 JavaSpaces
    • 8.3.1 JavaSpacesのスペース内での処理
    • 8.3.2 JavaSpacesの特色
    • 8.3.3 JavaSpacesを使うにあたって
    • 8.3.4 スペース内のSOAPメッセージの例
  • 8.4 その他のSOAPメッセージ転送

9 SOAPとe-mail

  • 9-1 これまでのSOAPとe-mail
  • 9-2 JavaMail API
    • 9.2.1 JavaMailのアーキテクチャ
    • 9.2.2 PartインターフェースとMessageクラス
    • 9.2.3 セッションの役割
    • 9.2.4 メッセージの管理
    • 9.2.5 JAF
  • 9-3 JavaMailを使ったSOAPの例
    • 9.3.1 SOAPのDataSource
    • 9.3.2 メールの作成と送信
    • 9.3.3 メールメッセージの受信
  • 9.4 e-mailを利用したSOAPの可能性

10 SOAPと.NET

  • 10.1 .NETのビジョン
    • 10.1.1 問題
    • 10.1.2 .NET My Servicesソリューション
    • 10.1.3 Mycrosoft Passport
  • 10.2 提案されているMy Services
    • 10.2.1 My Serviceを使うユーザ
    • 10.2.2 収益の方法
  • 10.3 .NETツール
    • 10.3.1 Visual Studio.NET
    • 10.3.2 開発者向けの最新情報
  • 10.4 SOAPの互換性の問題
    • 10.4.1 報告されている互換性の問題
  • 10.5 .NETの競争相手
    • 10.5.1 Sun ONE(Sun Open Network Environment)
    • 10.5.2 HP Web Services
    • 10.5.3 IBM Web Services
    • 10.5.4 Oracle Dynamic Services
  • 10.6 SOAPとWebサービス

11 SAOPとデーターベースアクセス

  • 11.1 Javaとデータベース
    • 11.1.1 JDBCのバージョン
    • 11.1.2 JDBC,SQL,SOAPのデータ型
  • 11.2 JDBCドライバ
    • 11.2.1 タイプ1のドライバ
    • 11.2.2 タイプ2のドライバ
    • 11.2.3 タイプ3のドライバ
    • 11.2.4 タイプ4のドライバ
  • 11.3 DriverManagerクラス
    • 11.3.1 データベース接続
    • 11.3.2 SQL文
    • 11.3.3 検索結果を使った作業
  • 11.4 SOAPとJDBCの例
    • 11.4.1 Hypersonic SQLデータベース
    • 11.4.2 Hypersonicサーバの起動
    • 11.4.3 ErrataQuery SOAPサービス
  • 11.5 SOAPとJDBC

12 ワイヤレスでSOAP

  • 12.1 ワイヤレスデバイスでのSOAPのアーキテクチャ
    • 12.1.1 クライアントデバイス上のSOAP
    • 12.1.2 接続性が増しつつある環境
    • 12.1.3 SOAPはワイヤレスデバイスにふさわしいのか?
  • 12.2 J2MEの仕組み
    • 12.2.1 構成とプロファイル
  • 12.3 J2ME向けの開発
    • 12.3.1 ソースコードからミドレットへ
    • 12.3.2 J2MEWTK
    • 12.3.3 J2MEWTKのインストール
    • 12.4 小型システムでのSOAP
    • 12.4.1 kXMLパーサ
    • 12.4.2 kSOAPのクラス
    • 12.4.3 プロジェクトの作成
    • 12.4.4 コンパイルとビルド
    • 12.4.5 携帯電話エミュレータでの実行
    • 12.4.6 Palmエミュレータでの実行
  • 12.5 ワイヤレスに理想的なJava

13 コンピューティング環境全般におけるSOAPの位置づけ

  • 13.1 SOAPの現在の利用状況
    • 13.1.1 標準のフレームワーク
    • 13.1.2 パフォーマンスの問題
    • 13.1.3 SOAPとWebサービス
  • 13.2 Webサービスの将来
    • 13.2.1 標準化作業
    • 13.2.2 発表されているWebサービスプロジェクト
    • 13.2.3 評価が確立しているXML
    • 13.2.4 SOAPの当面の競争相手
  • 13.3 SOAPの将来

付録A SOAP関連のソース

  • A.1 標準
    • A.1.1 XPワーキンググループ
    • A.1.2 XML Schema
  • A-2 W3Cのその他のリソース
  • A-3 関連標準
    • A.3.1 WSDL
    • A.3.2 UDDI
    • A.3.3 IETF
  • A-4 Sun,OASIS,UN/CEFACT,およびebXML
    • A.4.1 SunのJAXM API
  • A-5 XMLのツールキット
    • A.5.1 Apache XML
    • A.5.2 SunのJAXPパッケージ
    • A.5.3 JDOM
    • A.5.4 Perl言語
    • A.5.5 Oracleデータベースとの統合
  • A-6 SOAPについての一般的な記事
  • A-7 SOAPの実装と,関連するその他の実装
    • A.7.1 UDDIの実装
    • A.7.2 相互運用性についてのサイト
    • A.7.3 SOAPを使ったWebサービス開発
  • A-8 業界のニュースソース

付録B オンラインのSOAPサービス

  • B.1 通貨換算サービス
  • B.2 テキスト音声変換サービス
  • B.3 地理情報サービス(GIS)

付録C UtilSnoopを使ったSOAPのデバック

  • C.1 UtilSnoopの使い方
    • C.1.1 パラメータの設定
    • C.1.2 クライアント/サーバ間のローカル通信のスヌーピング
    • C.1.3 UtilSnoopからのSOAPメッセージの送信
    • C.1.4 クライアントメッセージのキャプチャ
  • C.2 UtilSnoopのコード
  • C.3 修正版

用語集

INDEX

著者プロフィール

沖林正紀(おきばやしまさのり)

SE/プログラマを経て,WebアプリケーションやXMLなどについて雑誌記事や書籍の執筆活動を始める。大手メーカで製品資料の作成や,セミナーの講師を担当したこともある。現在は,取材記事や製品レビューなどに執筆活動の幅を広げる一方,プログラミング教材の開発も手がけている。

著書