Professional Documents
Culture Documents
Uvod
Spletnestoritvesoprisotneenekajasa Razvojindopolnjevanjeobstojeihstandardov
opissporoil(SOAP),opisstoritev(WSDL),implementacije (JAXRPCoz.JAXWS)
JAXRPC1.0 dopolnitve JAXRPC1.1 prenova (potrebapo veprotokolih insporoilnoorienPranihWS)
Interoperabilnostmed JAXRPCinJAXWS
JAXWSevednopodpiraSOAP1.1preko HTTP1.1
Enakooblikovanasporoilaselahkoprenaajoneodvisno odimplementacije
JAXWSevednopodpiraWSDL1.1
Razlike?
JAXRPC SOAP XML/HTTP (prenossporoilXML prekoHTTP) WSIBasicProles PodporavJavi PodporazaPpeXML Schema 1.1 nepodpira JAXWS 1.1in2.0 podpira
+drugelastnosP,zaradikaterihjeJAXWSnastalnadomesPlJAXRPC (sporoilnousmerjenafunkcionalnost,dinaminaasinhronafunkcionalnost,)
XMLSchemaPpiJavaPpi
JAXWSsamposebidejanskonedenira preslikavemedXMLSchemaPpiinJavanskimi Ppi
uporabljaJAXB(JavaArchitectureforXML Binding)
JAXWSjekomponenta(vskladutehnologij), kideniramodelproenjaspletnihstoritev
neukvarjasespodatkovnimnivojem!
XMLSchemaPpiJavaPpi
XMLSchema;p xsd:anySimpleType xsd:duraPon xsd:dateTime xsd:Pme xsd:date xsd:gYearMonth xsd:gYear xsd:gMonthDay xsd:gMonth xsd:gDay xsd:anyURI xsd:NMTOKENS xsd:IDREF xsd:IDREFS xsd:ENTITY xsd:ENTITIES JAXRPC1.1 java.lang.String java.lang.String java.uPl.Calendar java.uPl.Calendar java.uPl.Calendar java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.net.URI java.lang.String[] java.lang.String java.lang.String[] notsupported notsupported JAXWSoz.JAXB2.2 java.lang.Object javax.xml.datatype.DuraPon(newtype) javax.xml.datatype.XMLGregorianCalendar(newtype) javax.xml.datatype.XMLGregorianCalendar javax.xml.datatype.XMLGregorianCalendar javax.xml.datatype.XMLGregorianCalendar javax.xml.datatype.XMLGregorianCalendar javax.xml.datatype.XMLGregorianCalendar javax.xml.datatype.XMLGregorianCalendar javax.xml.datatype.XMLGregorianCalendar java.lang.String java.uPl.List<java.lang.String> java.lang.Object java.uPl.List<java.lang.Object> java.lang.String java.uPl.List<java.lang.String>
Preslikavaelementov,atributov
<xsd:sequence> <xsd:elementname="ime"type="xsd:string"/> <xsd:elementname="priimek"type="xsd:string"nillable="true"/> </xsd:sequence> <xsd:arributename="emso"type="xsd:string"use="required"/>
JAXRPC
privateStringime; privateStringpriimek; privateStringemso;
JAXWSviaJAXB2.0
@XmlElement(required=true) protectedStringime; @XmlElement(nillable=true) protectedStringpriimek; @XmlArribute(required=true) protectedStringemso;
PreslikavakompleksnihPpov
<xsd:elementname="os"type="tns:Oseba"/> <xsd:complexTypename="Oseba"> <xsd:sequence> <xsd:elementname="ime"type="xsd:string"/> <xsd:elementname="priimek"type="xsd:string"minOccurs="0"nillable="true"/> </xsd:sequence> <xsd:arributename="emso"type="xsd:string"use="required"/></ xsd:complexType>
JAXWSviaJAXB2.0 JAXRPC
publicclassOseba{ privateStringime; privateStringpriimek; privateStringemso; . }
@XmlAccessorType(XmlAccessType.FIELD) @XmlType(name="Oseba",propOrder={ "ime", "priimek" }) publicclassOseba{ @XmlElement(required=true) protectedStringime; @XmlElement(nillable=true) protectedStringpriimek; @XmlArribute protectedStringemso; }
JAXRPCkodaodjemalca
Paket:com.gama_system.www.webservices ExchangeRatesvmesnikstoritve <wsdl:servicename="ExchangeRates"> ExchangeRatesLocatorlokatorstoritve ExchangeRatesSoapremotevmesnik <wsdl:portTypename="ExchangeRatesSoap"> <wsdl:operaPonname="GetExchangeRatesByValueXML"> <wsdl:operaPonname="GetExchangeRatesByDateXML"> . ExchangeRatesSoapProxyclientproxywrapper ExchangeRatesStubclientstubwrapper
JAXWSkodaodjemalca
ExchangeRatesvmesnikstoritve omogoapridobivanjeproxyobjektov ExchangeRatesSoapproxyobjekt,kiima spomojoannotacijdeniranemetodestoritve
@WebMethod(operaPonName="ConvertToEUR",acPon="hrp://www.gamasystem.com/webservices/ConvertToEUR") @WebResult(name="ConvertToEURResult",targetNamespace="hrp://www.gamasystem.com/webservices") @RequestWrapper(localName="ConvertToEUR",targetNamespace="hrp://www.gamasystem.com/webservices",className="si.exchange.ConvertToEUR") @ResponseWrapper(localName="ConvertToEURResponse",targetNamespace="hrp://www.gamasystem.com/webservices",className="si.exchange.ConvertToEURResponse") publicBigDecimalconvertToEUR( @WebParam(name="dcmValue",targetNamespace="hrp://www.gamasystem.com/webservices") BigDecimaldcmValue, @WebParam(name="strBank",targetNamespace="hrp://www.gamasystem.com/webservices") StringstrBank, @WebParam(name="strCurrency",targetNamespace="hrp://www.gamasystem.com/webservices") StringstrCurrency, @WebParam(name="strDate",targetNamespace="hrp://www.gamasystem.com/webservices") StringstrDate, @WebParam(name="intRank",targetNamespace="hrp://www.gamasystem.com/webservices") intintRank); .
Povzetek
JAXWSjenaslednikJAXRPC
Nekajtehninihstvariostajaenakih(interoperabilnost),pavendar, spremenjenjeprogramskimodel
Zakajoz.kdajvztrajaPpriJAXRPC
ZakajpreiPnaJAXWS