`
uule
  • 浏览: 6352954 次
  • 性别: Icon_minigender_1
  • 来自: 一片神奇的土地
社区版块
存档分类
最新评论

WSDL与JAVA源代码解析

 
阅读更多

 

从wsimport生成的源文件中 可以发现:

 

一、xsd文件中的每一个复杂类型complexType 都解析为一个类

  包括import 的xsd文件里的complexType

  外部接口也有一个文件

 


二、解析出的文件的内容有区别

a、普通类型一个element就是一个属性

 

<complexType name="ErrorItem">
		<sequence>
			<element name="ENTITY_NAME" nillable="true" type="string"/>
			<element name="PRI_KEY" nillable="true" type="string"/>
			<element name="ERROR_MESSAGE" nillable="true" type="string"/>
			<element name="BACH_NUM" nillable="true" type="string"/>
			<element name="RECORD_NUMBER" nillable="true" type="string"/>
			<element name="RESERVED_1" nillable="true" type="string"/>
			<element name="RESERVED_2" nillable="true" type="string"/>
			<element name="RESERVED_3" nillable="true" type="string"/>
			<element name="RESERVED_4" nillable="true" type="string"/>
			<element name="RESERVED_5" nillable="true" type="string"/>
		</sequence>
	</complexType>

 

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name="ErrorItem", propOrder={"entityname", "prikey", "errormessage", "bachnum", "recordnumber", "reserved1", "reserved2", "reserved3", "reserved4", "reserved5"})
public class ErrorItem
  implements Serializable
{

  @XmlElement(name="ENTITY_NAME", required=true, nillable=true)
  protected String entityname;

  @XmlElement(name="PRI_KEY", required=true, nillable=true)
  protected String prikey;

  @XmlElement(name="ERROR_MESSAGE", required=true, nillable=true)
  protected String errormessage;

  @XmlElement(name="BACH_NUM", required=true, nillable=true)
  protected String bachnum;

  @XmlElement(name="RECORD_NUMBER", required=true, nillable=true)
  protected String recordnumber;

  @XmlElement(name="RESERVED_1", required=true, nillable=true)
  protected String reserved1;

  @XmlElement(name="RESERVED_2", required=true, nillable=true)
  protected String reserved2;

  ...
   //get、set 方法

}

 

b、内容是一个List集合

 

<complexType name="ErrorCollection">
		<sequence>
			<element maxOccurs="unbounded" minOccurs="0" name="ErrorItem" type="tns:ErrorItem"/>
		</sequence>
</complexType>

 

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name="ErrorCollection", propOrder={"errorItem"})
public class ErrorCollection
  implements Serializable
{

  @XmlElement(name="ErrorItem")
  protected List<ErrorItem> errorItem;

  public List<ErrorItem> getErrorItem()
  {
    if (this.errorItem == null) {
      this.errorItem = new ArrayList();
    }
    return this.errorItem;
  }
}

 

c、内容是一个对象

 

<complexType name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvRequest">
		<sequence>
			<element name="MsgHeader" type="msg:MsgHeader"/>
			<element name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvInputCollection" type="tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvInputCollection"/>
		</sequence>
</complexType>

 

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvRequest", propOrder={"msgHeader", "esberpfaImportOtherAddAssetsInfoSrvInputCollection"})
public class ESBERPFAImportOtherAddAssetsInfoSrvRequest
  implements Serializable
{

  @XmlElement(name="MsgHeader", required=true)
  protected MsgHeader msgHeader;

  @XmlElement(name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvInputCollection", required=true)
  protected ESBERPFAImportOtherAddAssetsInfoSrvInputCollection esberpfaImportOtherAddAssetsInfoSrvInputCollection;


  public MsgHeader getMsgHeader()
  {
    return this.msgHeader;
  }

  public void setMsgHeader(MsgHeader value)
  {
    this.msgHeader = value;
  }
  
  //省略另一对象的get、set方法
  ...
}

 

 三、 外部接口ESB_ERP_FA_ImportOtherAddAssetsInfoSrv里的方法,

 输入为 ESBERPFAImportOtherAddAssetsInfoSrvRequest

 输出为 ESBERPFAImportOtherAddAssetsInfoSrvResponse

 

<wsdl:message name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvRequestMessage">
    <wsdl:part element="tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvRequest" name="payload">
    </wsdl:part>
  </wsdl:message>
  <wsdl:message name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvResponseMessage">
    <wsdl:part element="tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvResponse" name="payload">
    </wsdl:part>
  </wsdl:message>

  <wsdl:portType name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrv">
    <wsdl:operation name="process">
      <wsdl:input message="tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvRequestMessage"></wsdl:input>
      <wsdl:output message="tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvResponseMessage"></wsdl:output>
    </wsdl:operation>
  </wsdl:portType>

 

@WebService(name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrv", targetNamespace="http://ws.vispractice.com/ESB_ERP_FA_ImportOtherAddAssetsInfoSrv")
@SOAPBinding(parameterStyle=SOAPBinding.ParameterStyle.BARE)
@XmlSeeAlso({ObjectFactory.class})
public abstract interface ESBERPFAImportOtherAddAssetsInfoSrv
{

  @WebMethod(action="process")
  @WebResult(name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvResponse", targetNamespace="http://ws.vispractice.com/ESB_ERP_FA_ImportOtherAddAssetsInfoSrv", partName="payload")
  public abstract ESBERPFAImportOtherAddAssetsInfoSrvResponse process(@WebParam(name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvRequest", targetNamespace="http://ws.vispractice.com/ESB_ERP_FA_ImportOtherAddAssetsInfoSrv", partName="payload") ESBERPFAImportOtherAddAssetsInfoSrvRequest paramESBERPFAImportOtherAddAssetsInfoSrvRequest);
}

 

 

===================================================================

以下分别用1、2、3、4P代替:

1:原始WSDL:

http://localhost:8888/UnicomWebservices/services/ESB_ERP_FA_ImportOtherAddAssetsInfoSrvPort?wsdl

<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://ws.project.com/ESB_ERP_FA_ImportOtherAddAssetsInfoSrv" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrv" targetNamespace="http://ws.project.com/ESB_ERP_FA_ImportOtherAddAssetsInfoSrv">
  <wsdl:types>
<schema xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://ws.project.com/ESB_ERP_FA_ImportOtherAddAssetsInfoSrv" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns="http://www.w3.org/2001/XMLSchema">
			
  <import namespace="http://ws.project.com/ESB_ERP_FA_ImportOtherAddAssetsInfoSrv" schemaLocation="http://localhost:8888/UnicomWebservices/services/ESB_ERP_FA_ImportOtherAddAssetsInfoSrvPort?xsd=ESB_ERP_FA_ImportOtherAddAssetsInfoSrv.xsd"/>
		
</schema>
  </wsdl:types>
  <wsdl:message name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvRequestMessage">
    <wsdl:part element="tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvRequest" name="payload">
    </wsdl:part>
  </wsdl:message>
  <wsdl:message name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvResponseMessage">
    <wsdl:part element="tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvResponse" name="payload">
    </wsdl:part>
  </wsdl:message>
  <wsdl:portType name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrv">
    <wsdl:operation name="process">
      <wsdl:input message="tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvRequestMessage">
    </wsdl:input>
      <wsdl:output message="tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvResponseMessage">
    </wsdl:output>
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvBinding" type="tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrv">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http"/>
    <wsdl:operation name="process">
      <soap:operation soapAction="process" style="document"/>
      <wsdl:input>
        <soap:body use="literal"/>
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrv">
    <wsdl:port binding="tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvBinding" name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvPort">
      <soap:address location="http://localhost:8888/UnicomWebservices/services/ESB_ERP_FA_ImportOtherAddAssetsInfoSrvPort"/>
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>

 

 

2:原始WSDL import标签的location xsd:

http://10.204.104.69:8888/UnicomWebservices/services/ESB_ERP_FA_ImportOtherAddAssetsInfoSrvPort?xsd=ESB_ERP_FA_ImportOtherAddAssetsInfoSrv.xsd

 

<schema xmlns:tns="http://ws.project.com/ESB_ERP_FA_ImportOtherAddAssetsInfoSrv" xmlns:msg="http://ws.project.com/MsgHeader" xmlns="http://www.w3.org/2001/XMLSchema" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://ws.project.com/ESB_ERP_FA_ImportOtherAddAssetsInfoSrv">
	<import namespace="http://ws.project.com/MsgHeader" schemaLocation="http://localhost:8888/UnicomWebservices/services/ESB_ERP_FA_ImportOtherAddAssetsInfoSrvPort?xsd=MsgHeader.xsd"/>

	<element name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvRequest" type="tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvRequest"/>
	<element name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvResponse" type="tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvResponse"/>

	<complexType name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvRequest">
		<sequence>
			<element name="MsgHeader" type="msg:MsgHeader"/>
			<element name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvInputCollection" type="tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvInputCollection"/>
		</sequence>
	</complexType>
	<complexType name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvResponse">
		<sequence>
			<element name="SERVICE_FLAG" nillable="true" type="string"/>
			<element name="INSTANCE_ID" nillable="true" type="string"/>
			<element name="SERVICE_MESSAGE" nillable="true" type="string"/>
			<element name="ErrorCollection" type="tns:ErrorCollection"/>
			<element name="ResponseCollection" type="tns:ResponseCollection"/>
		</sequence>
	</complexType>
	<complexType name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvInputCollection">
		<sequence>
			<element maxOccurs="unbounded" minOccurs="0" name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvInputItem" type="tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvInputItem"/>
		</sequence>
	</complexType>
	<complexType name="ESB_ERP_FA_ImportOtherAddAssetsInfoSrvInputItem">
		<sequence>
			<element name="PRI_KEY" type="string"/>
			<element name="BATCH_NUM" type="string"/>
			<element name="CREATED_BY" type="string"/>
			<element name="PROVINCE_CODE" type="string"/>
			<element name="BOOK_TYPE_CODE" type="string"/>
			<element name="ASSET_ID" type="decimal"/>
			<element name="TAG_NUMBER" nillable="true" type="string"/>
			<element name="ASSET_DESCRIPTION" type="string"/>
			<element name="MANUFACTURER_NAME" nillable="true" type="string"/>
			<element name="MODEL_NUMBER" nillable="true" type="string"/>
			<element name="SERIAL_NUMBER" nillable="true" type="string"/>
			<element name="APPLICANT_AREA" type="string"/>
			<element name="ASSET_CATALOG" type="string"/>
			<element name="ASSET_PROFESSIONAL" type="string"/>
			<element name="ASSET_KEYWORD" type="string"/>
			<element name="ASSET_UNIT" type="decimal"/>
			<element name="ASSET_UOM" nillable="true" type="string"/>
			<element name="SPARE_UNITS" nillable="true" type="decimal"/>
			<element name="SPARE_UOM" nillable="true" type="string"/>
			<element name="ASSET_SOURCE" type="string"/>
			<element name="ASSET_BELONG" type="string"/>
			<element name="SP_CODE" nillable="true" type="string"/>
			<element name="DATE_IN_SERVICE" type="dateTime"/>
			<element name="LIFE_IN_MONTHS" nillable="true" type="decimal"/>
			<element name="DEPRN_RESERVE" nillable="true" type="decimal"/>
			<element name="YTD_DEPRN" nillable="true" type="decimal"/>
			<element name="ORIGINAL_COST" type="decimal"/>
			<element name="SALVAGE_VALUE" nillable="true" type="decimal"/>
			<element name="ACCUMU_IMPAIRMENT" nillable="true" type="decimal"/>
			<element name="IS_AMORTIZATION" type="string"/>
			<element name="EMPLOYEE_NUMBER" type="string"/>
			<element name="COST_CENTER" type="string"/>
			<element name="ASSET_AREA" type="string"/>
			<element name="ASSET_ADDRESS" type="string"/>
			<element name="ASSET_STATUS" type="string"/>
			<element name="BEGINNING_ASSET_NUM" nillable="true" type="string"/>
			<element name="PROPERTY_RIGHT_NUM" nillable="true" type="string"/>
			<element name="EVA_NET_VALUE" nillable="true" type="decimal"/>
			<element name="EVA_MONTHS_AVA" nillable="true" type="decimal"/>
			<element name="BEGINNING_PROJECT" nillable="true" type="string"/>
			<element name="MANAGEMENT_DEPT" nillable="true" type="string"/>
			<element name="EXTRA_MESSAGE1" nillable="true" type="string"/>
			<element name="EXTRA_MESSAGE2" nillable="true" type="string"/>
			<element name="EXTRA_MESSAGE3" nillable="true" type="string"/>
			<element name="RESERVED_1" nillable="true" type="string"/>
			<element name="RESERVED_2" nillable="true" type="string"/>
			<element name="RESERVED_3" nillable="true" type="string"/>
			<element name="RESERVED_4" nillable="true" type="string"/>
			<element name="RESERVED_5" nillable="true" type="string"/>
			<element name="RESERVED_6" nillable="true" type="string"/>
			<element name="RESERVED_7" nillable="true" type="string"/>
			<element name="RESERVED_8" nillable="true" type="string"/>
			<element name="RESERVED_9" nillable="true" type="string"/>
			<element name="RESERVED_10" nillable="true" type="string"/>
			<element name="RESERVED_11" nillable="true" type="string"/>
			<element name="RESERVED_12" nillable="true" type="string"/>
			<element name="RESERVED_13" nillable="true" type="string"/>
			<element name="RESERVED_14" nillable="true" type="string"/>
			<element name="RESERVED_15" nillable="true" type="string"/>
		</sequence>
	</complexType>
	<complexType name="ErrorCollection">
		<sequence>
			<element maxOccurs="unbounded" minOccurs="0" name="ErrorItem" type="tns:ErrorItem"/>
		</sequence>
	</complexType>
	<complexType name="ErrorItem">
		<sequence>
			<element name="ENTITY_NAME" nillable="true" type="string"/>
			<element name="PRI_KEY" nillable="true" type="string"/>
			<element name="ERROR_MESSAGE" nillable="true" type="string"/>
			<element name="BACH_NUM" nillable="true" type="string"/>
			<element name="RECORD_NUMBER" nillable="true" type="string"/>
			<element name="RESERVED_1" nillable="true" type="string"/>
			<element name="RESERVED_2" nillable="true" type="string"/>
			<element name="RESERVED_3" nillable="true" type="string"/>
			<element name="RESERVED_4" nillable="true" type="string"/>
			<element name="RESERVED_5" nillable="true" type="string"/>
		</sequence>
	</complexType>
	<complexType name="ResponseCollection">
		<sequence>
			<element maxOccurs="unbounded" minOccurs="0" name="ResponseItem" type="tns:ResponseItem"/>
		</sequence>
	</complexType>
	<complexType name="ResponseItem">
		<sequence>
			<element name="REQUEST_ID" nillable="true" type="string"/>
			<element name="PRI_KEY" nillable="true" type="string"/>
			<element name="BACH_NUM" nillable="true" type="string"/>
			<element name="RECORD_NUMBER" nillable="true" type="string"/>
			<element name="RESERVED_1" nillable="true" type="string"/>
			<element name="RESERVED_2" nillable="true" type="string"/>
			<element name="RESERVED_3" nillable="true" type="string"/>
			<element name="RESERVED_4" nillable="true" type="string"/>
			<element name="RESERVED_5" nillable="true" type="string"/>
		</sequence>
	</complexType>
</schema>

 

 

3:location xsd 里的MsgHeader.xsd:

http://10.204.104.69:8888/UnicomWebservices/services/ESB_ERP_FA_ImportOtherAddAssetsInfoSrvPort?xsd=MsgHeader.xsd

 

<schema xmlns:tns="http://ws.project.com/MsgHeader" xmlns="http://www.w3.org/2001/XMLSchema" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://ws.project.com/MsgHeader">
	<complexType name="MsgHeader">
		<sequence>
			<element name="SOURCE_APP_ID" type="string"/>
			<element name="SOURCE_APP_NAME" nillable="true" type="string"/>
			<element name="SOURCE_MOD_ID" type="string"/>
			<element name="SOURCE_MOD_NAME" nillable="true" type="string"/>
			<element name="TARGET_MOD_ID" nillable="true" type="string"/>
			<element name="TARGET_MOD_NAME" nillable="true" type="string"/>
			<element name="TOKEN" nillable="true" type="string"/>
			<element name="USERID" nillable="true" type="decimal"/>
			<element name="USERNAME" nillable="true" type="string"/>
			<element name="SUBMITDATE" nillable="true" type="dateTime"/>
			<element name="PAGE_SIZE" nillable="true" type="decimal"/>
			<element name="CURRENT_PAGE" nillable="true" type="decimal"/>
			<element name="TOTAL_RECORD" nillable="true" type="decimal"/>
			<element name="PROVINCE_CODE" type="string"/>
			<element name="ENVIRONMENT_NAME" nillable="true" type="string"/>
		</sequence>
	</complexType>
</schema>

 

  

4:封装后WSDL:

http://localhost:8080/ESB_ERP_FA_ImportOtherAddAssetsInfoSrv/ESB_ERP_FA_ImportOtherAddAssetsInfoSrv?wsdl

 

<definitions name='ESB_ERP_FA_ImportOtherAddAssetsInfoSrv' targetNamespace='http://ws.project.com/ESB_ERP_FA_ImportOtherAddAssetsInfoSrv' xmlns='http://schemas.xmlsoap.org/wsdl/' xmlns:ns1='http://ws.project.com/MsgHeader' xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/' xmlns:tns='http://ws.project.com/ESB_ERP_FA_ImportOtherAddAssetsInfoSrv' xmlns:xsd='http://www.w3.org/2001/XMLSchema'>
 <types>
  <xs:schema elementFormDefault='qualified' targetNamespace='http://ws.project.com/ESB_ERP_FA_ImportOtherAddAssetsInfoSrv' version='1.0' xmlns:ns1='http://ws.project.com/MsgHeader' xmlns:tns='http://ws.project.com/ESB_ERP_FA_ImportOtherAddAssetsInfoSrv' xmlns:xs='http://www.w3.org/2001/XMLSchema'>
   <xs:import namespace='http://ws.project.com/MsgHeader'/>
   <xs:element name='ESB_ERP_FA_ImportOtherAddAssetsInfoSrvRequest' type='tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvRequest'/>
   <xs:element name='ESB_ERP_FA_ImportOtherAddAssetsInfoSrvResponse' type='tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvResponse'/>

   <xs:complexType name='ESB_ERP_FA_ImportOtherAddAssetsInfoSrvRequest'>
    <xs:sequence>
     <xs:element name='MsgHeader' type='ns1:MsgHeader'/>
     <xs:element name='ESB_ERP_FA_ImportOtherAddAssetsInfoSrvInputCollection' type='tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvInputCollection'/>
    </xs:sequence>
   </xs:complexType>

   <xs:complexType name='ESB_ERP_FA_ImportOtherAddAssetsInfoSrvInputCollection'>
    <xs:sequence>
     <xs:element maxOccurs='unbounded' minOccurs='0' name='ESB_ERP_FA_ImportOtherAddAssetsInfoSrvInputItem' type='tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvInputItem'/>
    </xs:sequence>
   </xs:complexType>

   <xs:complexType name='ESB_ERP_FA_ImportOtherAddAssetsInfoSrvInputItem'>
    <xs:sequence>
     <xs:element name='PRI_KEY' type='xs:string'/>
     <xs:element name='BATCH_NUM' type='xs:string'/>
     <xs:element name='CREATED_BY' type='xs:string'/>
     <xs:element name='PROVINCE_CODE' type='xs:string'/>
     <xs:element name='BOOK_TYPE_CODE' type='xs:string'/>
     <xs:element name='ASSET_ID' type='xs:decimal'/>
     <xs:element name='TAG_NUMBER' nillable='true' type='xs:string'/>
     <xs:element name='ASSET_DESCRIPTION' type='xs:string'/>
     <xs:element name='MANUFACTURER_NAME' nillable='true' type='xs:string'/>
     <xs:element name='MODEL_NUMBER' nillable='true' type='xs:string'/>
     <xs:element name='SERIAL_NUMBER' nillable='true' type='xs:string'/>
     <xs:element name='APPLICANT_AREA' type='xs:string'/>
     <xs:element name='ASSET_CATALOG' type='xs:string'/>
     <xs:element name='ASSET_PROFESSIONAL' type='xs:string'/>
     <xs:element name='ASSET_KEYWORD' type='xs:string'/>
     <xs:element name='ASSET_UNIT' type='xs:decimal'/>
     <xs:element name='ASSET_UOM' nillable='true' type='xs:string'/>
     <xs:element name='SPARE_UNITS' nillable='true' type='xs:decimal'/>
     <xs:element name='SPARE_UOM' nillable='true' type='xs:string'/>
     <xs:element name='ASSET_SOURCE' type='xs:string'/>
     <xs:element name='ASSET_BELONG' type='xs:string'/>
     <xs:element name='SP_CODE' nillable='true' type='xs:string'/>
     <xs:element name='DATE_IN_SERVICE' type='xs:dateTime'/>
     <xs:element name='LIFE_IN_MONTHS' nillable='true' type='xs:decimal'/>
     <xs:element name='DEPRN_RESERVE' nillable='true' type='xs:decimal'/>
     <xs:element name='YTD_DEPRN' nillable='true' type='xs:decimal'/>
     <xs:element name='ORIGINAL_COST' type='xs:decimal'/>
     <xs:element name='SALVAGE_VALUE' nillable='true' type='xs:decimal'/>
     <xs:element name='ACCUMU_IMPAIRMENT' nillable='true' type='xs:decimal'/>
     <xs:element name='IS_AMORTIZATION' type='xs:string'/>
     <xs:element name='EMPLOYEE_NUMBER' type='xs:string'/>
     <xs:element name='COST_CENTER' type='xs:string'/>
     <xs:element name='ASSET_AREA' type='xs:string'/>
     <xs:element name='ASSET_ADDRESS' type='xs:string'/>
     <xs:element name='ASSET_STATUS' type='xs:string'/>
     <xs:element name='BEGINNING_ASSET_NUM' nillable='true' type='xs:string'/>
     <xs:element name='PROPERTY_RIGHT_NUM' nillable='true' type='xs:string'/>
     <xs:element name='EVA_NET_VALUE' nillable='true' type='xs:decimal'/>
     <xs:element name='EVA_MONTHS_AVA' nillable='true' type='xs:decimal'/>
     <xs:element name='BEGINNING_PROJECT' nillable='true' type='xs:string'/>
     <xs:element name='MANAGEMENT_DEPT' nillable='true' type='xs:string'/>
     <xs:element name='EXTRA_MESSAGE1' nillable='true' type='xs:string'/>
     <xs:element name='EXTRA_MESSAGE2' nillable='true' type='xs:string'/>
     <xs:element name='EXTRA_MESSAGE3' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_1' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_2' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_3' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_4' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_5' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_6' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_7' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_8' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_9' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_10' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_11' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_12' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_13' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_14' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_15' nillable='true' type='xs:string'/>
    </xs:sequence>
   </xs:complexType>
   <xs:complexType name='ESB_ERP_FA_ImportOtherAddAssetsInfoSrvResponse'>
    <xs:sequence>
     <xs:element name='SERVICE_FLAG' nillable='true' type='xs:string'/>
     <xs:element name='INSTANCE_ID' nillable='true' type='xs:string'/>
     <xs:element name='SERVICE_MESSAGE' nillable='true' type='xs:string'/>
     <xs:element name='ErrorCollection' type='tns:ErrorCollection'/>
     <xs:element name='ResponseCollection' type='tns:ResponseCollection'/>
    </xs:sequence>
   </xs:complexType>
   <xs:complexType name='ErrorCollection'>
    <xs:sequence>
     <xs:element maxOccurs='unbounded' minOccurs='0' name='ErrorItem' type='tns:ErrorItem'/>
    </xs:sequence>
   </xs:complexType>
   <xs:complexType name='ErrorItem'>
    <xs:sequence>
     <xs:element name='ENTITY_NAME' nillable='true' type='xs:string'/>
     <xs:element name='PRI_KEY' nillable='true' type='xs:string'/>
     <xs:element name='ERROR_MESSAGE' nillable='true' type='xs:string'/>
     <xs:element name='BACH_NUM' nillable='true' type='xs:string'/>
     <xs:element name='RECORD_NUMBER' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_1' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_2' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_3' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_4' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_5' nillable='true' type='xs:string'/>
    </xs:sequence>
   </xs:complexType>
   <xs:complexType name='ResponseCollection'>
    <xs:sequence>
     <xs:element maxOccurs='unbounded' minOccurs='0' name='ResponseItem' type='tns:ResponseItem'/>
    </xs:sequence>
   </xs:complexType>
   <xs:complexType name='ResponseItem'>
    <xs:sequence>
     <xs:element name='REQUEST_ID' nillable='true' type='xs:string'/>
     <xs:element name='PRI_KEY' nillable='true' type='xs:string'/>
     <xs:element name='BACH_NUM' nillable='true' type='xs:string'/>
     <xs:element name='RECORD_NUMBER' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_1' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_2' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_3' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_4' nillable='true' type='xs:string'/>
     <xs:element name='RESERVED_5' nillable='true' type='xs:string'/>
    </xs:sequence>
   </xs:complexType>
  </xs:schema>
  <xs:schema targetNamespace='http://ws.project.com/MsgHeader' version='1.0' xmlns:xs='http://www.w3.org/2001/XMLSchema'>
   <xs:complexType name='MsgHeader'>
    <xs:sequence>
     <xs:element form='qualified' name='SOURCE_APP_ID' type='xs:string'/>
     <xs:element form='qualified' name='SOURCE_APP_NAME' nillable='true' type='xs:string'/>
     <xs:element form='qualified' name='SOURCE_MOD_ID' type='xs:string'/>
     <xs:element form='qualified' name='SOURCE_MOD_NAME' nillable='true' type='xs:string'/>
     <xs:element form='qualified' name='TARGET_MOD_ID' nillable='true' type='xs:string'/>
     <xs:element form='qualified' name='TARGET_MOD_NAME' nillable='true' type='xs:string'/>
     <xs:element form='qualified' name='TOKEN' nillable='true' type='xs:string'/>
     <xs:element form='qualified' name='USERID' nillable='true' type='xs:decimal'/>
     <xs:element form='qualified' name='USERNAME' nillable='true' type='xs:string'/>
     <xs:element form='qualified' name='SUBMITDATE' nillable='true' type='xs:dateTime'/>
     <xs:element form='qualified' name='PAGE_SIZE' nillable='true' type='xs:decimal'/>
     <xs:element form='qualified' name='CURRENT_PAGE' nillable='true' type='xs:decimal'/>
     <xs:element form='qualified' name='TOTAL_RECORD' nillable='true' type='xs:decimal'/>
     <xs:element form='qualified' name='PROVINCE_CODE' type='xs:string'/>
     <xs:element form='qualified' name='ENVIRONMENT_NAME' nillable='true' type='xs:string'/>
    </xs:sequence>
   </xs:complexType>
  </xs:schema>
 </types>

 <message name='ESB_ERP_FA_ImportOtherAddAssetsInfoSrv_processResponse'>
  <part element='tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvResponse' name='payload'></part>
 </message>
 <message name='ESB_ERP_FA_ImportOtherAddAssetsInfoSrv_process'>
  <part element='tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvRequest' name='payload'></part>
 </message>

 <portType name='ESB_ERP_FA_ImportOtherAddAssetsInfoSrv'>
  <operation name='process' parameterOrder='payload'>
   <input message='tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrv_process'></input>
   <output message='tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrv_processResponse'></output>
  </operation>
 </portType>

 <binding name='ESB_ERP_FA_ImportOtherAddAssetsInfoSrvBinding' type='tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrv'>
  <soap:binding style='document' transport='http://schemas.xmlsoap.org/soap/http'/>
  <operation name='process'>
   <soap:operation soapAction='process'/>
   <input>
    <soap:body use='literal'/>
   </input>
   <output>
    <soap:body use='literal'/>
   </output>
  </operation>
 </binding>

 <service name='ESB_ERP_FA_ImportOtherAddAssetsInfoSrv'>
  <port binding='tns:ESB_ERP_FA_ImportOtherAddAssetsInfoSrvBinding' name='ESB_ERP_FA_ImportOtherAddAssetsInfoSrvPort'>
   <soap:address location='http://localhost:8080/ESB_ERP_FA_ImportOtherAddAssetsInfoSrv/ESB_ERP_FA_ImportOtherAddAssetsInfoSrv'/>
  </port>
 </service>
</definitions>

 ..

 

 

 

 

 

  • 大小: 27.1 KB
  • 大小: 16 KB
分享到:
评论
1 楼 嘿啦啦童话 2016-05-05  
楼主有没有示例可以参考啊,现在想解析到wsdl的约束信息,比如minExclusive等等,还有sequence,all等。愿楼主指点一二,感谢!

相关推荐

    wsdl生成java代码工具

    它的主要功能是从WSDL文件生成Java源代码,这些代码可以被编译并用作Web服务的客户端或者服务提供者。通过运行`wsdl2java.cmd`,用户可以将WSDL描述转换为可操作的Java类。 4. **使用Wsdl2Java工具**: - **命令行...

    把wsdl文件或地址转化成java代码工具

    5. MyEclipse会解析WSDL文件,生成对应的Java源代码,包括服务接口和服务代理类等,这些类可以直接在项目中使用。 【标签】:“wsdl文件 转化 Java代码 工具” 转换WSDL文件为Java代码的工具有很多,除了MyEclipse...

    WebService的WSDL文件生成Java代码工具

    wsimport -keep -s &lt;源代码目录&gt; -d &lt;编译目录&gt; &lt;WSDL文件路径&gt; ``` - 这将生成服务端的SEI(Service Endpoint Interface)和客户端的Stub类。 生成的Java代码通常包含以下几个部分: - **服务接口**:定义了...

    使用axis将wsdl文件转换为java代码

    当我们需要与一个由WS-DL描述的服务进行交互时,通常会生成对应的Java代码来简化客户端的开发工作。这就是`Axis`工具的作用,它是一个开源的SOAP栈,能够帮助我们将WS-DL文件转换为Java代码。 `Axis`项目始于Apache...

    wsdl2java生成工具

    3. **查看生成的代码**:工具会自动生成Java源代码并将其保存在指定的输出目录中。 4. **编译和运行**:编译生成的Java代码,并在客户端或服务端项目中使用。 **四、文件说明** 在提供的文件列表中: 1. `wsdl2...

    wsdl2java命令使用所需bin

    `wsdl2java`是Apache CXF提供的一个命令行工具,用于根据WSDL文件自动生成Java源代码。这些源代码可以被用来创建Web服务客户端或服务提供者,极大地简化了基于WSDL的Web服务开发。 **使用`wsdl2java`的步骤:** 1....

    WSDL转JAVA类工具

    "WSDL转JAVA类工具"是一个实用程序,它能够解析WSDL文件并生成对应的Java源代码。这个过程称为代码生成,使得开发人员不必手动编写这些复杂的接口和消息处理类,极大地提高了开发效率和代码的准确性。 首先,我们...

    WSDL2JAVA工具及工程jar包

    WSDL2JAVA工具扮演着关键角色,它能将WSDL文件转换为Java源代码,使得开发人员可以方便地与Web服务进行交互。现在我们来详细探讨这个工具以及其相关的jar包。 首先,WSDL是一种XML格式的规范,用于描述Web服务的...

    Axis 把WSDL生成JAVA类

    2. **执行转换命令**:使用`WSDL2Java`工具,这是一个位于`org.apache.axis.wsdl`包下的类,用于将WSDL文件转换为Java源代码。命令行如下所示: ``` java -classpath classpath org.apache.axis.wsdl.WSDL2Java -o...

    xfire根据WSDL生成客户端代码

    这个工具会根据WSDL文件生成相应的Java源代码,包括服务接口、消息类和客户端代理类。命令行语法通常如下: ``` wsdl2java -client -d &lt;output_directory&gt; &lt;wsdl_file&gt; ``` 其中,`&lt;output_directory&gt;`是你希望...

    WSDL2Java工

    `WSDL2Java`工具的主要功能是将WSDL文件转换为Java源代码,这些源代码包括服务端的实现类和服务接口,以及客户端的Stub类和代理类。通过这个工具,开发者可以快速生成与WSDL定义相匹配的Java代码,从而简化开发流程...

    Eclipse中用wsdl生成java客户端.pdf

    最后,点击"Finish",Eclipse会完成整个过程,此时可以在"HealthInsurance"项目中看到生成的Java源代码文件。这些文件包括了用于与Web服务交互的客户端类,可以使用它们来调用远程服务。 8. **使用生成的客户端**...

    axis生成wsdl的JAVA客户端服务接口

    标题中的“axis生成wsdl的JAVA客户端服务接口”是指使用Apache Axis工具来从WSDL(Web Service Definition Language)文件生成Java客户端代码,以便与Web服务进行交互。Apache Axis是Apache软件基金会开发的一个开源...

    AXIS2 1.7.3 idea wsdl 代码生成插件

    AXIS2 1.7.3 idea wsdl代码生成插件正是为了解决在IDEA中处理AXIS2项目时,自动生成与WSDL文件对应的Java源代码的问题。 这个插件的核心功能是将WSDL文件转换成可执行的Java客户端和服务端代码,从而简化了Web服务...

    onvif协议wsdl文件,支持onvif协议,Java

    1. 使用WSDL2Java工具(如Apache CXF的wsdl2java)将WSDL转换为Java源代码。 2. 编译生成的Java代码,将其添加到你的项目中。 3. 创建ONVIF服务的实例,并使用生成的接口调用ONVIF操作,如获取设备信息、控制摄像机...

    最新onvif wsdl文件及生成源代码

    在"最新onvif wsdl文件及生成源代码"的压缩包中,包含的是与ONVIF相关的WSDL文件和由此生成的源代码。这些资源对于开发或集成ONVIF兼容的IP摄像机或者视频管理软件至关重要。WSDL文件定义了ONVIF服务的各种端点、...

    Contract-First方式开发WebService及WSDL2Java工具

    这个工具可以将WSDL文件转换为Java源代码,生成服务接口、服务实现类、消息处理器和客户端存根等。例如,Apache CXF、Axis2等开源框架提供了WSDL2Java工具,它们可以帮助开发者快速地基于WSDL创建Java Web服务项目。...

    《JAVE EE基础实用教程》源代码

    通过学习和分析这些源代码,不仅可以掌握Java EE的基本技术,还能了解企业级应用开发的最佳实践。同时,对于书中提到的具体示例和问题,源代码提供了直观的解决方案,有助于加深理论知识的理解。

    cxf 生成java代码的执行命令

    - `-psrc`: 用于指定生成的Java源代码的存储位置。 - `-d wsdljava`: 指定生成的Java类的输出目录。 - `-client`: 表示要生成客户端代码。 - `-server`: 表示要生成服务器端代码。 - `wsdl`: 指定WSDL文件的位置。 ...

Global site tag (gtag.js) - Google Analytics