WSDL2WebService 工具參照

您可以利用 WSDL2WebService 工具,在指令行透過 IBM® WebSphere® 執行時期環境,從 WSDL 檔產生 Web 服務。

語法

設定好指令行之後,您可以利用下列語法和引數來執行工具:

如果要建立 Skeleton Web 服務實作:

附註:最終引數必須是 <WSDL URI>。

如果要建立已啟用 Web 服務的保存檔:

引數

附註:已移除 -input 選項。所有匯入的 XSD 和 WSDL 文件都必須在 <WSDL URI> 所指定之 WSDL 檔的相同目錄中。

Skeleton Web 服務實作

強制引數:

-createService <ServiceName>
指定 Web 服務的唯一名稱。這個名稱用來作為 Web 服務的環境定義起始目錄。
-project <ProjectDir>
指定輸出目標專案目錄的完整路徑名稱。預設值是現行目錄。
- <WSDL URI>
指定說明 Web 服務之 WSDL 檔的位置。可能在遠端或本端檔案系統中。

選用引數:

-host <HostName:PortNumber>
指定要部署 Web 服務的主機名稱和埠號。預設值是 localhost:6080
-genResolver
產生匯入解析器,其中含有匯入之 XSD(XML 綱目)檔的所有資訊。請參閱附註 1 來取得這個參數的其他資訊。
-clientType <J2SE | Application | Servlet | EJB>
產生指定的用戶端類型的 Skeleton 實作類別。您只能結合 -genMain 引數來使用這個引數。如果您已指定了 -server-side-only 引數,就不能使用這個引數。
-clientEJBName <EJB client filename>
利用用戶端 EJB 檔中的資訊,來配置含用戶端應用程式名稱的用戶端 webservicesclient.xml 描述子。 如果您沒有提供這個引數,您必須先手動編輯 webservicesclient.xml,才能將它加入用戶端 EJB 檔中。
-genMain <name of main class>
指定要產生之 main 類別的名稱。您只能結合 -clientType 引數來使用這個引數。如果您已指定了 -server-side-only 引數,就不能使用這個引數。
-contextRoot<ContextRoot>
指定 Web 服務的環境定義起始目錄。預設值是 <ServiceName>。
-type <EJB | Bean>
產生 Java™ Bean 或 EJB 實作的特定範本。預設值是針對 Java Bean 來建立它們。
-NStoPkg <list>
指定空格分開的 namespace=package 它是用來置換產生的 Java 範本類別之預設套件名稱對映清單。
-fileNStoPkg <propertiesFile>
指定含有 namespace=package 對映的內容檔之完整路徑名稱。

附註:當使用這個引數時,所有名稱空間參照中的冒號 ':' 都必須依照下列方式,利用反斜線來跳離:http\://my.namespace.WSDL2。WebService 會忽略任何不含跳離冒號的名稱空間參照。

-all
產生 WSDL 文件中定義的所有複式類型的 Java 類別。預設值是只產生 WSDL 文件所定義和參照的類別。您只能結合 -createService 引數來使用這個引數。
-server-side-only
只產生伺服器端 Helper 類別。預設值是產生伺服器端和用戶端 Helper 類別。
- wsSecDir <directory>
指定範本所在之目錄的完整路徑,來利用 WS 安全資訊配置產生的部署描述子。 目錄必須包含 ibm-webservices-bnd.xmiibm-webservices-ext.xmi 檔, 如果產生用戶端連結的話,也必須包含 ibm-webservicesclient-bnd.xmiibm-webservicesclient-ext.xmi
-clientEJBName <EJB client filename>
利用用戶端 EJB 檔中的資訊,來配置含用戶端應用程式名稱的用戶端 webservicesclient.xml 描述子。 如果您沒有提供這個引數,您必須先手動編輯 webservicesclient.xml,才能將它加入用戶端 EJB 檔中。
-user
指定存取遠端 WSDL 時所要使用的使用者名稱。
-password
指定存取遠端 WSDL 時所要使用的密碼。
-verbose
在執行工具時,顯示額外資訊。
-help
顯示說明資訊。

啟用 Web 服務的保存檔

強制引數:

-createEar <TargetFile.ear>
指定目標 EAR 檔的完整路徑名稱。如果路徑名稱不存在,就會建立它。如果它已經存在,就會依照需要來新增/更新 -add 選項所指定的 Web 模組。
-project <ProjectDir>
指定含有一或多個要保存的 Web 服務實作之專案目錄的完整路徑名稱。您可以利用工具設定 -createService 引數來產生這些 Web 服務實作。

選用引數:

-add <services>
指定要加入保存檔的 Web 服務名稱清單,請用空格來分開各個名稱。這些應該對應於已建立在指定專案下的 Web 服務實作。如果沒有使用這個選項,就會加入所有這類目錄。如果 EAR 檔中有某個這些名稱的 Web 服務模組,就會利用最新的目錄內容來更新它。
-verbose
在執行工具時,顯示額外資訊。
-help
顯示說明資訊。

附註:不支援 -deploy 選項。

重要事項:如果您執行 WSDL2WebService 指令並使用一組會執行本端匯入項目的 WSDL 檔案來建立 EJB Web 服務時,將會產生 EAR 檔,但是當它匯入到工作區並部署到 Unit Test Environment 或遠端伺服器後,在伺服器啟動時,將出現異常狀況。這個異常狀況是路由器 Web 專案中遺漏 WSDL 所導致的。請執行下列任一項來排除這個錯誤:
  • 利用管理主控台來部署到獨立式 WebSphere Application Server。
  • 使用整體 WSDL - 也就是說,不要使用 -splitWsdl 引數。
  • 將 EJB 專案中 META-INF/wsdl 目錄下的所有 WSDL 檔案手動複製到路由器 Web 專案的 WEB-INF/wsdl
附註 1:請只選取 -genResolver 引數,以便 Web 服務執行時產生一個遠端絕對參照本端,它不必連接網際網路。 它不應該用於本端或相對匯入項目。另外,對於含有可匯入 XSD 檔案之 WSDL 匯入項目的檔案,不應該使用 -genResolver 選項。 例如,可以替代綱目元素外保有 WSDL 匯入項目:
  <import location="a.xsd" namespace="http://namespaceA"/>
  <types>
    <schema xmlns="http://www.w3.org/2001/XMLSchema" 
      targetNamespace="http://namespaceA" 
      xmlns:xsd="http://www.w3.org/2001/XMLSchema">
換成在綱目元素內有綱目匯入項目:
  <types>
    <schema xmlns="http://www.w3.org/2001/XMLSchema" 
      targetNamespace="http://namespaceA" 
      xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <import schemaLocation="a.xsd" namespace="http://namespaceA"/>
使用條款 | 讀者意見
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.