华中科技大学硕士学位论文Web服务的应用策略及实践研究姓名:徐枫申请学位级别:硕士专业:软件工程指导教师:陈传波20050101IWebWebWebWebWebWebWebWebWebWebITWebWebWebWebWebWebWebSOAPWSDLUDDIWebIIAbstractNow,abouthowtoapplyWebServiceinpracticalbusinessscenariosoptimally,developersandapplicationdesignersarealwayswithoutguidance.QuestionslikehowtouseWebService,theapplicabilityofWebService,andwhereandwhyWebServicewillbeusedinthesolutionputpeopletryingtouseWebServicepracticallyintopuzzles.Atthesametime,theneedsofenterprisesforWebServicearegrowingdayafterday.Whenfacingthesepuzzles,enterprisesneedsomebestpracticestohelpthemwiththeeffortstheymadetoadoptthetechniques.BasedonlotsofexperiencesandlessonsearnedfromcasesapplyingWebService,wehopeamethodologycouldbeconducted,thatis,inallusiontovariousbusinessscenarios,asetofbestpracticalmethodscouldbefoundtoprovidesomehelptosolutiondesignersandpeopleunderthesituationthattheyneedtodecidehoworwhethertouseWebService,andhowtodesignandrealizeit.ThroughtheexperiencesandlessonsfromthepracticesofenterpriseswhenapplyingWebService,theanalysisofrelatedglossaryandtechniqueinvolvedinWebService,andasetofe-businessandapplicationpatternsdevelopedfromthecommonexperienceofITdesigners,theconductedpracticalmethodofWebServiceistostartwithuser’sactualbusinessrequirements,inassociatedwiththeapplicabilityofWebService,thengainedtherequirementsforWebServiceinthebusinessscenarios.Accordingtotheserequirements,thewhattechniquestouseandhowtousetheminthesolutionwillbeevaluatedandchosen,thenwillthee-businesspatternsandtheapplicationpatterns,andfinally,thesolutionofWebServicewhichwillsuitandsatisfytherequirementsofenterpriseswillbeconstructedbyusingthesuitabletechniquesproperly.TheapplicabilityofWebServiceinthesolutionwillalsobestudiedandtheexperiencesandlessonsofpracticingandapplyingWebServicewillbeconcludedandpigeonholed,whichwillfinallyturnthismethodintoacommonand,eventhebestpracticalmethodofWebService.SotheguidanceabouthowtomakebestuseoftechniqueslikeSOAP,WSDLandUDDIintheactualbusinesssituationscouldbeprovided,andthebestpracticeofWebServicetechniqueinpracticalapplicationscouldbegained.KeywordsWebServiceServiceOrientedArchitecturePracticalmethodsE-businessPatterns11221WebWebSOAP1.1[1]SOAP1.1XML[2]WebWeb1.1WebWebITWeb[3]Web[4]20024GoogleWSDLSOAP[5]20Web[6]Web[7]Web[8]SOAPWSDLUDDI[9]2Web1234Web5Web6Web1.2Web1.2.1WebWebWebWeb[10]W3CWebServicesArchitectureWorkingGroup[11]WebWeb3SOAPWebSimpleObjectAccessProtocolW3CWebServicesArchitectureWebWebURIXMLWebXML[12]WebHTTPSOAPSOAP[13]WebSOAPWebHTTPWebW3CXMLWSDLWebservice-orientedarchitectureSOAXMLIDLSOAP[14]W3CUDDIWebUDDIWebUDDIUDDIWeb[15]1.2.2WebW3CWebWeb4XMLWebW3CWebWebWebWeb[16]1-11-11-11WebWebservices1XMLWSDL2SOAP3HTTP2Service-orientedapplicationWebSOAPWSDLXMLWebWeb[17]5W3C1-1XMLWebWebJMSMQSeriesWSDLWebHTTPSOAPWSDLWebWebWeb1-1XMLWebbackofficeCOBOLWSDLWSDLXMLWSDLWeb1-2Web[18]1-2Web1WebEnterpriseWebservicesWSDLWebJMS6MQSeriesSOAPWeb2WebInternetWebservicesWebHTTPOTAXMLWeb3XMLWebXMLWebservicesWebW3CXMLXMLWebSOAPHTTPSMTPTCP/IPSOAPWebMicrosoft.NetXMLWebCommerceQuestCICSProcessIntegratorCPIWeb[19]Web1.3WebWebservice-orientedarchitectureSOAWebWebWebWeb[20]1.3.1WebWebSOAWebWebSOASOA7SOAWebSOAWeb-CBDiLawrenceWilkesSOASaveOurAssets”[21]SOASOAWebWebWebService-DistributedManagementWebWebService-TrustUDDI1SOAservice[22]WebSOAPHTTPWSDLWeb2API8COBOLJava[23]3WebWebservicesDescriptionLanguageWSDL1234WSDLJavaC#COBOLHTTPSOAPJMSXMLCICSWSDLWebWebServicesInvocationFrameworkWSIF[24]4Requester:Whatistester’stestid?Provider:$xRequester:Andwhatishisscore?Provider:$y9testeridRequester:Whatistester’stestid?Provider:$xRequester:Andwhatistester’sscore?Provider:$y5SOA6SOAInternetInternet[25]1.3.2SOASOA[26]10WebXMLXMLXMLWebWebXMLSOAPXMLWSDLXMLSOAP[27]SOAWebSOAWebWebSOASOAWebSOAWeb1WebSOA1-31-31-4JavaC#BPEL1-4UDDIWebService-TrustSOA[28]servicebroker111-5ServiceInvocationSOAP1-52W3CSOAP1.2XMLXMLSOAPXML1-6SOAP1.1SOAP1.21-6SOAPSOAPITSOAP[29]SOA12SOAPSOAPIBMWebSphereMQXMLHTTPSeBeyXMLSOAPWebSOAWebSphereMQSOAPJavaJ2EESOAJavaITSOAPXMLSOAPAPI3JAX-RPCJSR-101JavaAPIJavaWebJAX-RPCHTTPSOAP1.1[30]APIURLIBMWebSphereApplicationServerJAX-RPCJSR-101-compliantURLJMSWebSphereMQJMSSOAPIIOPRMIEJB[31]APIWSDLHTTPSOAP4WebWSDLXMLWebSOAPWSDLWSDL13WSDLXMLWSDLmachine-readableWSDL1-7WebSphereStudioJavaJavaC#JavaWSDLWebWSDL1-7WSDLWSDLHTTPSOAPSOAWSDLSOAWSDLWSDL[32]5request-response1-8-141-8-WSDLone-way1-91-91-101-10-Solicit-Response1-111-11SOAHTTP15WebWS-Addressingreply-toSOAP[33]1-12WSDLSOAPreply-to1-12SOAPreply-toWebSphereMQJMS[34]1-131-13JMS1-14161-146SOAUDDISOAPUDDISOAPWebUDDISOAPServiceRegistryUDDI1-15IBMWebSphereStudioMicrosoftVisualStudio.NET1-15UDDISOAWebSphereUDDIBrowserSOAUDDIUDDISOAUDDI17SteveGrahamSixSpeciesofUDDIUDDI[35]ITUDDIUDDIUDDIUDDIUDDIpublicly-availableUDDIUDDI1.4WebWebWebWebWebWeb182WebWebWebWeb2.1WebWebBeanWeb2-1[36]2-1Web2.2Web19Web[37]WebWebXMLWebWebJ2EEWebEJBEJBWebHTTPSOAPIIOPRMIXMLWebEJB[38]anti-patternXMLAPIJavaXMLXMLJava[39]WebMapperBeanBeanRMI-IIOPEJB20WebXMLWebRMI-IIOPXMLWebWebMicrosoft.NETWebWebSphereApplicationServerCOMMicrosoftIBMWebJavaWebSphereJBos