課本:網路服務技術導論 - 作者:戚玉樑
課本投影片,範例程式下載
評量參考指標:
期初報告(10%):全球化心得報告 (第一平時)
RMI實作(20%) (第二平時)
網路服務實作 (30%) (期中)
教學演講(期末考) (20%) (期末)
平時成績:出席率 (10%)(期末)
平時成績:網路大學使用率 (10%)(期末)
課程交付事項與規定,請詳細閱讀。
全球化簡介 (02.25.2008/03.03.2008)
全球化期初報告 word 文件,請下載。報告截止日:3月16日
相關事項,請詳細閱讀裡面內容。
第一章補充資料(一)
第一章補充資料(二)
Dell 衝突防制理論
相關連結:
全球化的趨勢與進展(國家經貿政策分析月刊-1999.12)
什麼是全球化?
預備知識:(請下載,並且解壓縮) (03.07.2008)
1. Eclipse IDE 3.x 整合開發環境
2. 動態網頁基礎(1)-登入 Servlet
3. JDBC 教學
4. 動態網頁基礎(2)-資料庫
網站架構 投影片t
Servlet + JDBC 練習 (請下載,並且解壓縮):
product 資料庫(Access)
index 首頁
利用上面的資料庫以及首頁,請撰寫一個簡單的範例,可以取得產品資訊,並且顯示在網頁上。
Servlet + JDBC 練習題:
寫一個計算加法的Servlet。輸入:兩個整數,輸出:顯示兩數相加之結果
相關連結:
Servlets and JavaServer Pages (JSP) 1.0: A Tutorial
Java Servlet Technology (SUN)
Trail: JDBC(TM) Database Access
Java JDBC Tutorial
RMI,Java IDL
請下載
軟體安裝文件
JDK 1.5.x:
設定java環境變數( 我的電腦[右鍵] => 內容 => 進階 => 環境變數 =>系統變數 ):
新增JAVA_HOME變數值為 C:\<JDK安裝目錄>
PATH中增加 %JAVA_HOME%\bin
Eclipse 3.2.x
Remote Method Invocation 入門
必須實際操作此文件中之程式
課堂投影片:
RMI ppt
,以及
RMI 教學文件
。
練習:RMI Tutorial (簡單的1+2=3範例)
,
下載 rar檔
.java.policy 檔
課堂投影片:
Java IDL 教學
。Java IDL Hello
範例程式碼
。
RMI & 資料庫
課堂所需檔案:
RMI-Database 壓縮檔
。
有關access permission的問題解決
練習:改用Servlet
實作 getProduct
。
相關資料:
Servlet 簡介
,
JDBC簡介
Java IDL / Corba
Java IDL / CORBA 投影片
Java IDL / CORBA 投影片 所需檔案:
JavaIDL壓縮檔
。
XML 課堂講義
XML 簡介 Part 1
,
XML 簡介 Part 2
測試 DOM 和 SAX 以及 XSLT 操作文件 (word 文件)
下載所有相關的範例程式
zip 檔案
。
DOM & SAX parser:
Apache Xerces 1.4.4 (J1)
DOM & SAX parser:
Apache Xerces 2.9.0 (J2)
XLST parser:
Apache Xalan 2.7.0
XML Editor 工具:
Peter's XML editor v2.0
(免費)
Cooktop XML editor (支援 XML, DTD, XSLT)
(免費)
相關連結:
Microsoft DOM 參考手冊(online)
XML 台灣資訊網
XSLT Tutorial
(
中文版
) 範例教學,XSLT,XPath
XSLT & XPath Tutorial
範例教學,XSLT,XPath
From 華藝數位陳嵩榮:
XML/DTD理論實務與應用(1) XML概論
XML/DTD理論實務與應用(2) DTD介紹
XML/DTD理論實務與應用(2) XML Schema介紹
基於 XML 的資料表現(閱讀XML+XSLT)
下載《無廢話 XML》(Big5 版)
SOAP
請下載
Web Service 簡介講義
。
請下載
SOAP 簡介講義
。
請下載
envelope.xml 測試檔
。
Apache SOAP 2.3.1
Apache SOAP 2.3.1
。請下載並且解壓縮於任意一個目錄。
Using Apache SOAP 2.3.1 文件以及程式碼
SOAP using AXIS 1.4 (舊版)
請下載 AXIS 1.4 所需之
資料檔
。(使用Tomcat 5.x,沒有安裝的話,請先下載)
Apache AXIS 1.4 Final
。請下載並且解壓縮於任意一個目錄。
利用 browser 打開
http://127.0.0.1:8080/axis/
測試 axis 是否安裝成功。
如果成功,你將會看到 Apache-Axis 的網頁。在這個網頁,請務必執行 Validation 來進一步確認安裝是否成功。
如果 Validation 執行之後沒有任何問題,你的安裝就成功了。
在我個人的環境,我缺少了 activation.jar、mail.jar、以及 xmlsec.jar。請依照網頁提供的聯結,下載你所需要的 jar 檔,然後把這些 jar 檔複製到 c:\tomcat_INSTALL\common\lib 之後,重新啟動 tomcat。這樣子一來,你應該就有一個完整的平台了!
SOAP using AXIS2 1.1
請下載 AXIS2 1.1 所需之
資料檔
Apache AXIS2 1.1
。請下載並且解壓縮於任意一個目錄。
工具:
Apache Tomcat 4.1.34。
請下載並且安裝於C:\。
相關連結:
W3C SOAP 1.2
(對於詳細規格有興趣的人,可以參考此站)。
W3C SOAP 1.2 版之特定應用 (中文)
。
W3 School 的 SOAP 教學
(入門)
The Java Web Services Tutorial
- Java Web Services Developer's Pack, v2.0 (入門)
Building Web Service with Stylus Studio (線上教學)
Microsoft ASP.NET 快速入門教學 - XML Web Service 簡介
WSDL
實作WSDL:伺服器端
定義介面(interface)
package circleareaws; public interface CircleArea { public double setRidus(int r); //輸入半徑值及預設傳回double值的結果 }
將介面轉換成 WSDL
java org.apache.axis.wsdl.Java2WSDL -o ca.wsdl -l "http://127.0.0.1:8080/axis/services/CircleArea" -n "urn:circleareaws" -p"circleareaws" "urn:circleareaws" circleareaws.CircleArea
產生伺服器端所需要之檔案
java org.apache.axis.wsdl.WSDL2Java -o . -d Application -s -S true -Nurn:circleareaws circleareaws.CircleArea ca.wsdl
校定 ***Impl 類別中的程式碼。
將服務部署到Tomcat 伺服器
java org.apache.axis.client.AdminClient deploy.wsdd
將編譯過的class檔案複製到 Tomcat 之 webapps\axis\WEB-INF\classes 目錄。
測試部署是否成功
http://localhost:8080/axis/services/CircleArea
實作WSDL:客戶端測試
建立一個新目錄 test3
copy 之前所產生之 ca.wsdl 至 test3
執行:(會自動產生jUnit的test case,所以要下載
JUnit
)
java org.apache.axis.wsdl.WSDL2Java -t ca.wsdl
修改 CircleAreaServiceTestCase.java 中的程式碼 (還要自己新增 main()),才可以測試。
練習:
根據上面的實作經驗,我們知道,只要有一個網路服務的 WSDL 檔,我們就可以根據它來產生所需要之Java 客戶端程式
練習課本中之
EBayWatcherService
,並實作程式來取得資料。
練習連結中之
氣象預報 Web Service
,並實作程式來取得氣象資料(使用 52245)。
評量:自行找題目實作伺服器端之服務,然後以文件詳細描述如何安裝該服務至 Tomcat (你的責任),老師利用客戶端程式測試服務
。
相關連結:
W3C School - WSDL 教學
WSDL Tutorial (PPT)
。很詳細的WSDL教學文件。(必讀)
WSDL Essentials
Web Service Description Language (WSDL) 1.1
規格。
Web Service Description Working Group - Web Service Description Language (WSDL) 2.0
規格。
WebserviceX.NET
提供許多網路服務,可以用來測試。
氣象預報 Web Service
: 輸入區碼可以取得該地之氣象。例如:點選 GetWeatherByZipCode,然後輸入
52245
取出 Iowa City 的氣象。
工具:
WebServiceStudio 2.0
這是一個以C#語言開發的 WSDL 測試工具。系統必須要有安裝
Microsoft .NET Framework Version 1.1 Redistributable Package
才可以執行。
Apache Axis 1.x版
。請下載 1.4 Final版並安裝於Tomcat server 下。
CLASSPATH設定:(請記得修改成你的安裝路徑)
CLASSPATH=%CLASSPATH%;d:\axis-1_4\lib\axis.jar;d:\axis-1_4\lib\axis-ant.jar;d:\axis-1_4\lib\jaxrpc.jar;d:\asix-1_4\lib\log4j-1.2.8.jar;d:\axis-1_4\lib\wsdl4j-1.5.1.jar;d:\axis-1_4\lib\commons-logging-1.0.4.jar;d:\axis-1_4\lib\commons-discovery-0.2.jar;d:\asix-1_4\lib\saaj.jar;d:\soap-2_3_1\lib\soap.jar;
UDDI
under construction
相關連結:
Creating Your Own Private UDDI Registry (from http://www.devx.com)
提供設定 jUDDI 以及 UDDI API 解說。
Apache jUDDI
。可以用來創建立私人的UDDI服務。另外,jUDDI 提供一個Beta版的Console,可以使用它來與後端之UDDI互動。訊息傳送方式為 XML 文件。
UDDI4J
。Java 套件,提供 API 來與UDDI互動。請參考所附之範例程式。
UDDI 2.04
規格。
UDDI 3.02
規格。
Code Project 文章:Understanding UDDI's tModel
期末報告內容與方向建議
Web Service相關應用
資訊整合相關技術
服務架構(SOA)技術探討
服務架構(SOA)相關應用
Web Service 實務典範
SOAP,WSDL, UDDI 相關應用與探討
閱讀資料
The Component Object Model: A Technical Overview
(from Microsoft)
COM: Component Object Model Technologies
(from Microsoft)
What Is .NET?
(微軟對 web service 的回應)
Remote Procedure Calls (RPC)
Remote Method Invocation 入門
DCOM and CORBA Side by Side, Step by Step, and Layer by Layer
Explaining CORBA
.NET 研究室專欄:Web services 之規劃策略與設計模式 -- 企業觀點
導讀
首部曲: Web services 與全新的商業模式
二部曲: 服務導向的應用程式架構
三部曲: Web services 與企業營運之規劃與策略
後章: Web services 的導入與平台之選擇
除了上述文章之外,可以參考:
[1] IBM developerworks (台灣)技術文件庫
[2] 以服務為中心的企業整合
[3] 以服務為中心的企業整合-案例分析(航空業)
[4] 服務導向架構(SOA)實作典範研討-Microsoft .NET 技術代言人 林耀珍
[5] Designing a Better SOA
[6] SOA Design: Meeting in the Middle
[7] 淺談SOAP
CASE 工具
JUDE
JUDE is a modeling tool which supports your object-oriented software designing in JavaTM and UML1.4
Visual Thought v1.4
可以用來繪製DFD, ERD以及基本的UML圖形