2015-02-09 77 views
2

我試圖在開關站創建從現有的WSDL存​​根(Java文件)從WSDL創建Java文件並得到異常:java.lang.reflect.InvocationTargetExceptionjava.lang.reflect.InvocationTargetException而在開關站

步驟:

  1. 我在JBDS中創建了一個switchyard項目,並將wsdl放置在資源文件夾中。然後我做了New -> Others -> SwitchYard -> Java Files from WSDL
  2. 我選擇包並瀏覽wsdl文件。
  3. 當我點擊完成,我得到一個彈出一個錯誤java.lang.reflect.InvocationTargetException,它不會創建Java文件

enter image description here

我附上了錯誤,而WSDL文件。 請讓我知道如何解決這個問題。有沒有錯我正在做創建生成的Java文件。請告訴我。

<?xml version="1.0" encoding="UTF-8"?> 
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:mx="http://www.ibm.com/maximo" xmlns:mxws="http://www.ibm.com/maximo/wsdl/web_MXINCIDENT_WS" targetNamespace="http://www.ibm.com/maximo/wsdl/web_MXINCIDENT_WS" name="web_MXINCIDENT_WS"> 
    <types> 
    <xsd:schema xmlns="http://www.ibm.com/maximo" elementFormDefault="qualified" attributeFormDefault="unqualified" targetNamespace="http://www.ibm.com/maximo"> 
     <xsd:include schemaLocation="common/MXMeta.xsd" /> 
     <xsd:include schemaLocation="MXINCIDENT_WSTB.xsd" /> 
     <xsd:include schemaLocation="common/mxincident_wst.xsd" /> 
     <xsd:complexType name="CreateMXINCIDENT_WSTBType"> 
     <xsd:sequence> 
      <xsd:element ref="MXINCIDENT_WSTBSet" /> 
     </xsd:sequence> 
     <xsd:attributeGroup ref="CommonContentGroup" /> 
     </xsd:complexType> 
     <xsd:complexType name="InvokeMXINCIDENT_WSTBType"> 
     <xsd:sequence> 
      <xsd:element ref="MXINCIDENT_WSTBSet" /> 
     </xsd:sequence> 
     <xsd:attributeGroup ref="CommonContentGroup" /> 
     </xsd:complexType> 
     <xsd:complexType name="QueryMXINCIDENT_WSTBType"> 
     <xsd:sequence> 
      <xsd:element ref="MXINCIDENT_WSTBQuery" /> 
     </xsd:sequence> 
     <xsd:attributeGroup ref="CommonContentGroup" /> 
     <xsd:attributeGroup ref="QueryContentGroup" /> 
     </xsd:complexType> 
     <xsd:complexType name="SyncMXINCIDENT_WSTBType"> 
     <xsd:sequence> 
      <xsd:element ref="MXINCIDENT_WSTBSet" /> 
     </xsd:sequence> 
     <xsd:attributeGroup ref="CommonContentGroup" /> 
     </xsd:complexType> 
     <xsd:complexType name="PublishMXINCIDENT_WSTBType"> 
     <xsd:sequence> 
      <xsd:element ref="MXINCIDENT_WSTBSet" /> 
     </xsd:sequence> 
     <xsd:attributeGroup ref="CommonContentGroup" /> 
     <xsd:attributeGroup ref="PublishingContentGroup" /> 
     </xsd:complexType> 
     <xsd:complexType name="UpdateMXINCIDENT_WSTBType"> 
     <xsd:sequence> 
      <xsd:element ref="MXINCIDENT_WSTBSet" /> 
     </xsd:sequence> 
     <xsd:attributeGroup ref="CommonContentGroup" /> 
     </xsd:complexType> 
     <xsd:complexType name="DeleteMXINCIDENT_WSTBType"> 
     <xsd:sequence> 
      <xsd:element ref="MXINCIDENT_WSTBSet" /> 
     </xsd:sequence> 
     <xsd:attributeGroup ref="CommonContentGroup" /> 
     </xsd:complexType> 
     <xsd:complexType name="InvokeMXINCIDENT_WSTBResponseType"> 
     <xsd:sequence> 
      <xsd:element ref="MXINCIDENT_WSTBSet" /> 
     </xsd:sequence> 
     <xsd:attributeGroup ref="CommonContentGroup" /> 
     </xsd:complexType> 
     <xsd:complexType name="CreateMXINCIDENT_WSTBResponseType"> 
     <xsd:sequence> 
      <xsd:element name="MXINCIDENT_WSTBSet" type="MXINCIDENT_WSTBCombinedKeySetType" minOccurs="0" /> 
     </xsd:sequence> 
     <xsd:attributeGroup ref="CommonContentGroup" /> 
     </xsd:complexType> 
     <xsd:complexType name="QueryMXINCIDENT_WSTBResponseType"> 
     <xsd:sequence> 
      <xsd:element ref="MXINCIDENT_WSTBSet" /> 
     </xsd:sequence> 
     <xsd:attributeGroup ref="CommonContentGroup" /> 
     <xsd:attributeGroup ref="ResponseContentGroup" /> 
     </xsd:complexType> 
     <xsd:complexType name="SyncMXINCIDENT_WSTBResponseType"> 
     <xsd:sequence> 
      <xsd:element name="MXINCIDENT_WSTBSet" type="MXINCIDENT_WSTBCombinedKeySetType" minOccurs="0" /> 
     </xsd:sequence> 
     <xsd:attributeGroup ref="CommonContentGroup" /> 
     </xsd:complexType> 
     <xsd:complexType name="DeleteMXINCIDENT_WSTBResponseType"> 
     <xsd:sequence> 
      <xsd:element name="MXINCIDENT_WSTBSet" type="MXINCIDENT_WSTBCombinedKeySetType" minOccurs="0" /> 
     </xsd:sequence> 
     <xsd:attributeGroup ref="CommonContentGroup" /> 
     </xsd:complexType> 
     <xsd:complexType name="UpdateMXINCIDENT_WSTBResponseType"> 
     <xsd:sequence> 
      <xsd:element name="MXINCIDENT_WSTBSet" type="MXINCIDENT_WSTBCombinedKeySetType" minOccurs="0" /> 
     </xsd:sequence> 
     <xsd:attributeGroup ref="CommonContentGroup" /> 
     </xsd:complexType> 
     <xsd:element name="UpdateMXINCIDENT_WSTB" type="UpdateMXINCIDENT_WSTBType" /> 
     <xsd:element name="QueryMXINCIDENT_WSTB" type="QueryMXINCIDENT_WSTBType" /> 
     <xsd:element name="CreateMXINCIDENT_WSTB" type="CreateMXINCIDENT_WSTBType" /> 
     <xsd:element name="SyncMXINCIDENT_WSTB" type="SyncMXINCIDENT_WSTBType" /> 
     <xsd:element name="DeleteMXINCIDENT_WSTB" type="DeleteMXINCIDENT_WSTBType" /> 
     <xsd:element name="PublishMXINCIDENT_WSTB" type="PublishMXINCIDENT_WSTBType" /> 
     <xsd:element name="InvokeMXINCIDENT_WSTB" type="InvokeMXINCIDENT_WSTBType" /> 
     <xsd:element name="InvokeMXINCIDENT_WSTBResponse" type="InvokeMXINCIDENT_WSTBResponseType" /> 
     <xsd:element name="QueryMXINCIDENT_WSTBResponse" type="QueryMXINCIDENT_WSTBResponseType" /> 
     <xsd:element name="CreateMXINCIDENT_WSTBResponse" type="CreateMXINCIDENT_WSTBResponseType" /> 
     <xsd:element name="SyncMXINCIDENT_WSTBResponse" type="SyncMXINCIDENT_WSTBResponseType" /> 
     <xsd:element name="UpdateMXINCIDENT_WSTBResponse" type="UpdateMXINCIDENT_WSTBResponseType" /> 
     <xsd:element name="DeleteMXINCIDENT_WSTBResponse" type="DeleteMXINCIDENT_WSTBResponseType" /> 
    </xsd:schema> 
    </types> 
    <portType name="web_MXINCIDENT_WSPortType"> 
    <operation name="CreateMXINCIDENT_WSTB"> 
     <input message="mxws:CreateMXINCIDENT_WSTBRequest" /> 
     <output message="mxws:CreateMXINCIDENT_WSTBResponse" /> 
    </operation> 
    </portType> 
    <binding name="web_MXINCIDENT_WSSOAP11Binding" type="mxws:web_MXINCIDENT_WSPortType"> 
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> 
    <operation name="CreateMXINCIDENT_WSTB"> 
     <soap:operation soapAction="urn:processDocument" style="document" /> 
     <input> 
     <soap:body use="literal" /> 
     </input> 
     <output> 
     <soap:body use="literal" /> 
     </output> 
    </operation> 
    </binding> 
    <binding name="web_MXINCIDENT_WSSOAP12Binding" type="mxws:web_MXINCIDENT_WSPortType"> 
    <soap12:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> 
    <operation name="CreateMXINCIDENT_WSTB"> 
     <soap12:operation soapAction="urn:processDocument" style="document" /> 
     <input> 
     <soap12:body use="literal" /> 
     </input> 
     <output> 
     <soap12:body use="literal" /> 
     </output> 
    </operation> 
    </binding> 
    <message name="CreateMXINCIDENT_WSTBRequest"> 
    <part name="parameters" element="mx:CreateMXINCIDENT_WSTB" /> 
    </message> 
    <message name="CreateMXINCIDENT_WSTBResponse"> 
    <part name="parameters" element="mx:CreateMXINCIDENT_WSTBResponse" /> 
    </message> 
    <service name="web_MXINCIDENT_WS"> 
    <port name="web_MXINCIDENT_WSSOAP11Port" binding="mxws:web_MXINCIDENT_WSSOAP11Binding"> 
     <soap:address location="http://192.168.44.65:9080/meaweb/services/web_MXINCIDENT_WS" /> 
    </port> 
    <port name="web_MXINCIDENT_WSSOAP12Port" binding="mxws:web_MXINCIDENT_WSSOAP12Binding"> 
     <soap12:address location="http://192.168.44.65:9080/meaweb/services/web_MXINCIDENT_WS" /> 
    </port> 
    </service> 
</definitions> 

回答

2

最後我終於明白了這個問題。

我意識到是什麼,

  1. 如果WSDL是不妥當的,你會得到這個例外,我在我的情況下獲得。
  2. 在我的wsdl中,有兩個xsd需要從指定位置丟失。添加這兩個xsd後,我能夠生成存根。

參考:https://developer.jboss.org/message/918130

相關問題