Εισαγωγή στα Δίκτυα Υπηρεσιών

Σχετικά έγγραφα
Διοικητική Λογιστική

ΕΠΙΧΕΙΡΗΣΙΑΚΗ ΑΛΛΗΛΟΓΡΑΦΙΑ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑ ΣΤΗΝ ΑΓΓΛΙΚΗ ΓΛΩΣΣΑ

Εισαγωγή στους Αλγορίθμους

1 η Διάλεξη. Ενδεικτικές λύσεις ασκήσεων

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού σε κατάσταση Κορεσμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

Εισαγωγή στους Αλγορίθμους

PRESENTATION TITLE PRESENTATION SUBTITLE

Ενδεικτικές λύσεις ασκήσεων διαχείρισης έργου υπό συνθήκες αβεβαιότητας

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ψηφιακή Οικονομία. Διάλεξη 10η: Basics of Game Theory part 2 Mαρίνα Μπιτσάκη Τμήμα Επιστήμης Υπολογιστών

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 3: Έλεγχοι στατιστικών υποθέσεων

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 1: Καταχώρηση δεδομένων

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ψηφιακή Οικονομία. Διάλεξη 7η: Consumer Behavior Mαρίνα Μπιτσάκη Τμήμα Επιστήμης Υπολογιστών

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 2: Περιγραφική στατιστική

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ψηφιακή Οικονομία. Διάλεξη 13η: Multi-Object Auctions Mαρίνα Μπιτσάκη Τμήμα Επιστήμης Υπολογιστών

Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2)

ΕΠΙΧΕΙΡΗΣΙΑΚΗ ΑΛΛΗΛΟΓΡΑΦΙΑ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑ ΣΤΗΝ ΑΓΓΛΙΚΗ ΓΛΩΣΣΑ

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Ψηφιακή Οικονομία. Διάλεξη 11η: Markets and Strategic Interaction in Networks Mαρίνα Μπιτσάκη Τμήμα Επιστήμης Υπολογιστών

Τίτλος Μαθήματος: Μαθηματική Ανάλυση Ενότητα Γ. Ολοκληρωτικός Λογισμός

Εισαγωγή στους Αλγορίθμους

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

Διοικητική Λογιστική

Μάρκετινγκ Αγροτικών Προϊόντων

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

PRESENTATION TITLE PRESENTATION SUBTITLE

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Ενότητα. Εισαγωγή στις βάσεις δεδομένων

ΟΡΟΛΟΓΙΑ -ΞΕΝΗ ΓΛΩΣΣΑ

Βάσεις Περιβαλλοντικών Δεδομένων

ΕΠΙΧΕΙΡΗΣΙΑΚΗ ΑΛΛΗΛΟΓΡΑΦΙΑ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑ ΣΤΗΝ ΑΓΓΛΙΚΗ ΓΛΩΣΣΑ

Λογιστική Κόστους Ενότητα 8: Κοστολογική διάρθρωση Κύρια / Βοηθητικά Κέντρα Κόστους.

Μεθοδολογία Έρευνας Κοινωνικών Επιστημών Ενότητα 2: ΣΥΓΚΕΝΤΡΩΣΗ ΠΛΗΡΟΦΟΡΙΩΝ ΜΑΡΚΕΤΙΝΓΚ Λοίζου Ευστράτιος Τμήμα Τεχνολόγων Γεωπόνων-Kατεύθυνση

ΕΠΙΧΕΙΡΗΣΙΑΚΗ ΑΛΛΗΛΟΓΡΑΦΙΑ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑ ΣΤΗΝ ΑΓΓΛΙΚΗ ΓΛΩΣΣΑ

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού Υπέρθερμου Ατμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

Ψηφιακή Επεξεργασία Εικόνων

Μηχανολογικό Σχέδιο Ι

Μηχανική Μάθηση Hypothesis Testing

Δομές Δεδομένων Ενότητα 3

Κβαντική Επεξεργασία Πληροφορίας

ΣΥΜΠΕΡΙΦΟΡΑ ΚΑΤΑΝΑΛΩΤΗ

Εισαγωγή σε μεθόδους Monte Carlo Ενότητα 2: Ολοκλήρωση Monte Carlo, γεννήτριες τυχαίων αριθμών

Τεχνικό Σχέδιο - CAD

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

Εισαγωγή στους Αλγορίθμους Ενότητα 10η Άσκηση Αλγόριθμος Dijkstra

Τεχνικό Σχέδιο - CAD. Τόξο Κύκλου. Τόξο Κύκλου - Έλλειψη. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Εισαγωγή σε μεθόδους Monte Carlo Ενότητα 3: Δειγματοληπτικές μέθοδοι

Morphologie. Beispiel 1: Inuit Grammar. Dr. Chris0na Alexandris Na0onale Universität Athen Deutsche Sprache und Literatur

ΗΛΕΚΤΡΟΝΙΚΗ ΙIΙ Ενότητα 6

Διαφήμιση και Δημόσιες Σχέσεις Ενότητα 9: Σχέσεις διαφημιστή-διαφημιζόμενου

European Human Rights Law

Τεχνικό Σχέδιο - CAD

Αρχεία και Βάσεις Δεδομένων

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ψηφιακή Οικονομία. Διάλεξη 8η: Producer Behavior Mαρίνα Μπιτσάκη Τμήμα Επιστήμης Υπολογιστών

Μυελού των Οστών Ενότητα #1: Ερωτήσεις κατανόησης και αυτόαξιολόγησης

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Διοίκηση Εξωτερικής Εμπορικής Δραστηριότητας

Διδακτική Πληροφορικής

Προγραμματισμός Η/Υ. Βασικές Προγραμματιστικές Δομές. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Διαχείριση Πολιτισμικών Δεδομένων

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ψηφιακή Οικονομία. Διάλεξη 9η: Basics of Game Theory Mαρίνα Μπιτσάκη Τμήμα Επιστήμης Υπολογιστών

Οικονομική Γεωργικών Εκμεταλλεύσεων

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Συστήματα Διαχείρισης Βάσεων Δεδομένων

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Κβαντική Επεξεργασία Πληροφορίας

Ενδεικτικές λύσεις ασκήσεων διαγραμμάτων περίπτωσης χρήσης (1ο Μέρος)

Εισαγωγή στην Διοίκηση Επιχειρήσεων

European Human Rights Law

Εισαγωγή στους Η/Υ. Ενότητα 2β: Αντίστροφο Πρόβλημα. Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών

Στατιστική. 6 ο Μάθημα: Διαστήματα Εμπιστοσύνης και Έλεγχοι Υποθέσεων. Γεώργιος Μενεξές Τμήμα Γεωπονίας ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ

Μάρκετινγκ Αγροτικών Προϊόντων

Εκκλησιαστικό Δίκαιο. Ενότητα 10η: Ιερά Σύνοδος της Ιεραρχίας και Διαρκής Ιερά Σύνοδος Κυριάκος Κυριαζόπουλος Τμήμα Νομικής Α.Π.Θ.

Λογιστική Κόστους Ενότητα 11: Λογισμός Κόστους (1)

Μάρκετινγκ Αγροτικών Προϊόντων

Διοικητική Λογιστική

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Prim

ΗΛΕΚΤΡΟΝΙΚΗ Ι Ενότητα 5

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

Έλεγχος και Διασφάλιση Ποιότητας Ενότητα 4: Μελέτη ISO Κουππάρης Μιχαήλ Τμήμα Χημείας Εργαστήριο Αναλυτικής Χημείας

ΟΡΟΛΟΓΙΑ -ΞΕΝΗ ΓΛΩΣΣΑ

Προγραμματισμός και Συστήματα στον Παγκόσμιο Ιστό Ενότητα 9: Web Services. Καθ. Ιωάννης Γαροφαλάκης Πολυτεχνική Σχολή Μηχανικών Η/Υ & Πληροφορικής

Διδακτική Πληροφορικής

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

Διοίκηση Ολικής Ποιότητας & Επιχειρηματική Αριστεία Ενότητα 1.3.2: Παραδοσιακή VS νέα προσέγγιση της ΔΟΠ

Λογιστική Κόστους Ενότητα 11: Λογισμός Κόστους

Βάσεις Περιβαλλοντικών Δεδομένων

ΟΡΟΛΟΓΙΑ -ΞΕΝΗ ΓΛΩΣΣΑ

European Constitutional Law

Δομές Δεδομένων Ενότητα 1

Ιστορία της μετάφρασης

Βέλτιστος Έλεγχος Συστημάτων

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

Διδακτική Πληροφορικής

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Kruskal

Transcript:

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Εισαγωγή στα Δίκτυα Υπηρεσιών Διάλεξη 17η: WSRF Χρήστος Νικολάου Τμήμα Επιστήμης Υπολογιστών

Introduction to Service Networks The Shopping Cart and Printer WSRF Examples Source: WSRF Primer Christos Nikolaou Mariana Karmazi Transformation Services Laboratory CSD/UoC CS452 Fall 2010-2011 1

Non-WSRF Web Services and WSRF Source: WSRF Primer 15/7/2015 UC-01/CS-592 Spring 2011 2

Non WSRF vs WSRF cont... Previous Figure shows a comparison of a simple shopping service built with non-wsrf Web services (on the left) and WSRF (on the right). The left-hand side of the figure shows a ShoppingCart resource called S1 accessed through a Web service at a particular location. The location is described by a WS-Addressing [WS-Addressing] EndpointReference (EPR), which contains the URI of the Web service endpoint as follows: This EPR is known as ShoppingService by the requester. 15/7/2015 UC-01/CS-592 Spring 2011 3

The End Point Reference (EPR) EPRs and ports The use of an EndpointReference (EPR) to describe the location of a Web service is a recent innovation in Web services architecture. Just like the port in the service element of WSDL, the EPR contains a URI which indicates the location of the Web service. We describe Web services locations using EPRs because this technique provides the clearest comparison with the mechanisms introduced by WSRF. 15/7/2015 UC-01/CS-592 Spring 2011 4

Addressing The Resource Arrows in the previous figure represent messages sent between the requester and the Web service. The mechanism by which the specific ShoppingCart S1 is identified amongst the many carts that may be accessed through the service at the same location is not shown: the ShoppingCart identifier must be present somewhere in the messages and is typically passed as a parameter to the Web service and described in the WSDL. WSRF avoids the need to describe the identifier explicitly in the WSDL description. The identifier can be packaged as part of the EPR and implicitly included in all messages addressed through the EPR according to the rules of WS-Addressing. The resource identifier is not of interest to the requesting application: it uses the EPR as a reference to a specific WS-Resource. The right-hand side of Figure 1 shows the same service in the WSRF view: a combined Web service and ShoppingCart described by a Resource Properties document are together known as a WS-Resource and referenced by the requester as "MyShoppingCart". The EPR might look like this: 15/7/2015 UC-01/CS-592 Spring 2011 5

The EPR of the combined Shopping Cart Resource <wsa:endpointreference> <wsa:address> http://www.example.com/simpleshoppingservice </wsa:address> <wsa:referenceparameters> <rpimpl:cartid>s1</rpimpl:cartid> </wsa:referenceparameters> </wsa:endpointreference> 15/7/2015 UC-01/CS-592 Spring 2011 6

The Shopping Cart Example SOAP Messages Source: WSRF Primer 15/7/2015 UC-01/CS-592 Spring 2011 7

The Advantages of Defining a WS- Resource By removing the resource identifier from the body of the messages, WSRF simplifies the form of the WSDL that describes the service. The WSDL for a message that, for example, adds an item to a cart need only be concerned about the item to be added; the requesting application is not responsible for maintaining the identity of the cart to which the item must be added. WSRF provides standardized forms for messages which interact with a WS-Resource, namely: A way to retrieve and replace the Resource Properties document describing the resource. Several ways to retrieve and replace named parts of the document. In addition, client applications which must deal with multiple resources are simplified if the resource definitions and operations follow the same pattern. In particular, this is advantageous to resource management systems. WSRF also provides standard solutions to the following issues which commonly arise in distributed systems : A way to describe and control the lifetime of a WS-Resource. The systematic description and handling of fault messages. The aggregation of information about resources and services to form directories. The description of messages which may publish, to interested parties, changes in state of WS- Resources, including changes their property values. 15/7/2015 UC-01/CS-592 Spring 2011 8

The Shopping Cart Example The Resource 15/7/2015 UC-01/CS-592 Spring 2011 9

The Printer as a Resource: A Collection of Properties 15/7/2015 UC-01/CS-592 Spring 2011 10

The Simple Shopping Service 15/7/2015 UC-01/CS-592 Spring 2011 11

The WSDL Description without WSRF 15/7/2015 UC-01/CS-592 Spring 2011 12

SOAP messages for creating a Shopping Cart without WSRF <SOAP-ENV:Header>... <wsa:to SOAP-ENV:mustUnderstand="1"> http://www.example.com/wssimpleshoppingservice </wsa:to> </SOAP-ENV:Header> <SOAP-ENV:Body> <ws-ssc:wscartcreaterequest> <ws-ssc:productcode>cat-a2004-87968556</ws-ssc:productcode> <ws-ssc:quantity>1</ws-ssc:quantity> </ws-ssc:wscartcreaterequest> </SOAP-ENV:Body> 15/7/2015 UC-01/CS-592 Spring 2011 13

And the Response SOAP message without WSRF <SOAP-ENV:Body> <ws-ssc:wscartcreateresponse <ws-ssc:cart>s1</ws-ssc:cart> <ws-ssc:serviceaddress> <wsa:address>http://example.com/shoppingservice</wsa:address> </ws-ssc:serviceaddress> </ws-ssc:wscartcreateresponse> </SOAP-ENV:Body> 15/7/2015 UC-01/CS-592 Spring 2011 14

Subsequent Requests/Responses without WSRF <ws-ssc:wsgetcart> <ws-ssc:cart>s1</ws-ssc:cart> </ws-ssc:wsgetcart> <SOAP-ENV:Body> <ws-ssc:wsgetcartresponse> <ws-ssc:wssimpleshoppingcart> <ssc:item> <ssc:productcode>cat-a2004-87968556</ssc:productcode> <ssc:description>garden String - 150m</ssc:Description> <ssc:quantity>1</sc:quantity> <ssc:productprice>1.59</ssc:productprice> </ssc:item> </ws-ssc:wssimpleshoppingcart> </ws-ssc:wsgetcartresponse> </SOAP-ENV:Body> 15/7/2015 UC-01/CS-592 Spring 2011 15

The Shopping Cart Example with WSRF 15/7/2015 UC-01/CS-592 Spring 2011 16

The WSDL definitions with WSRF <wsdl:definitions> <wsdl:import namespace="http://docs.oasis-open.org/wsrf/rpw-2" location=" http://docs.oasis-open.org/wsrf/rpw-2.wsdl"/>... <wsdl:types> <xsd:schema...> <xsd:import... schemalocation="./simpleshoppingcart.xsd" /> </xsd:schema> </wsdl:types>... 15/7/2015 UC-01/CS-592 Spring 2011 17

Cont. <wsdl:porttype name="simpleshoppingcart" wsrf-rp:resourceproperties="ssc:simpleshoppingcart"> <wsdl:operation name="getresourcepropertydocument"> <wsdl:input message="wsrf-rpw:getresourcepropertydocumentrequest".. />./> <wsdl:output message="wsrf-rpw:getresourcepropertydocumentresponse".... </wsdl:operation>... </wsdl:porttype> <wsdl:definitions> 15/7/2015 UC-01/CS-592 Spring 2011 18

Operations on the Shopping Cart with WSRF Same as before CreateCartRequest. However: <ssc:cartcreateresponse> <wsa:address>http://www.example.com/simpleshoppingservice</wsa:address> <wsa:referenceparameters> <rpimpl:cartid>s1</rpimpl:cartid> <wsa:referenceparameters> </ssc:cartcreateresponse> To see what is stored in the Shopping Cart (Request Message Header): <SOAP-ENV:Header>... <wsa:to SOAP-ENV:mustUnderstand="1"> http://www.example.com/simpleshoppingservice </wsa:to> <rpimpl:cartid wsa:isreferenceparameter="true">s1</rpimpl:cartid> </SOAP-ENV:Header> 15/7/2015 UC-01/CS-592 Spring 2011 19

Cont. <SOAP-ENV:Body> <wsrf-rp:getresourcepropertydocument/> </SOAP-ENV:Body> and here comes the response <SOAP-ENV:Body> <wsrf-rp:getresourcepropertydocumentresponse> <ssc:simpleshoppingcart> <ssc:item> <ssc:productcode>cat-a2004-87968556</ssc:productcode> <ssc:description>garden String - 150m</ssc:Description> <ssc:quantity>1</ssc:quantity> <ssc:productprice>1.59</ssc:productprice> </ssc:item> </ssc:simpleshoppingcart> </wsrf-rp:getresourcepropertydocumentresponse> </SOAP-ENV:Body> 15/7/2015 UC-01/CS-592 Spring 2011 20

Updating a shopping Cart Item <SOAP-ENV:Body> <wsrf-rp:putresourcepropertydocumentrequest> <ssc:simpleshoppingcart> <ssc:item> <ssc:productcode>cat-a2004-87968556</sc:productcode> <ssc:description>garden String - 150m</sc:Description> <ssc:quantity>2</sc:quantity> <ssc:productprice>1.59</ssc:productprice> </ssc:item> </ssc:simpleshoppingcart> </wsrf-rp:putresourcepropertydocumentrequest> </SOAP-ENV:Body> <SOAP-ENV:Body> <wsrf-rp:putresourcepropertydocumentresponse/> </SOAP-ENV:Body> 15/7/2015 UC-01/CS-592 Spring 2011 21

The BaseFaultType <wsrf-bf:basefault> <wsrf-bf:timestamp>2005-05-31t12:00:00.000z</wsrf-bf:timestamp> <wsrf-bf:originator> <wsa:address>http://www.example.com/simpleshoppingservice</wsa:address> <wsa:referenceparameters> <rpimpl:cartid>s1</rpimpl:cartid> </wsa:referenceparameters> </wsrf-bf:originator> <wsrf-bf:description>descriptive Text</wsrf-bf:Description> </wsrf-bf:basefault> 15/7/2015 UC-01/CS-592 Spring 2011 22

Customized Fault Types <xsd:complextype name="checkoutfaulttype"> <xsd:complexcontent> <xsd:extension base="wsrf-bf:basefaulttype"> <xsd:sequence> <xsd:element name="checkoutfaultdetails" type="xsd:string"/> </xsd:sequence> </xsd:extension> </xsd:complexcontent> </xsd:complextype> 15/7/2015 UC-01/CS-592 Spring 2011 23

Cont. <ssc:checkoutfault> <wsrf-bf:timestamp>2005-05-31t12:00:00.000z</wsrf-bf:timestamp> <wsrf-bf:originator> <wsa:address>http://www.example.com/simpleshoppingservice</wsa:address> <wsa:referenceparameters> <rpimpl:cartid>s1</rpimpl:cartid> </wsa:referenceparameters> </wsrf-bf:originator> <wsrf-bf:description>faulty Checkout Information</wsrf-bf:Description> <ssc:checkoutfaultdetails>credit Limit Exceeded!</ssc:CheckoutFaultDetails> </ssc:checkoutfault> 15/7/2015 UC-01/CS-592 Spring 2011 24

The Universal Faults Two standard faults are defined for use with every WSRF operation. These are: ResourceUnknownFault Used to indicate that the WS-Resource is not known by the service which receives the message. ResourceUnavailableFault Used to indicate that the Web service is active, but unable to provide access to the resource. 15/7/2015 UC-01/CS-592 Spring 2011 25

<SOAP-ENV:Body> Example of Resource Unknown Fault <SOAP-ENV:Fault> <faultcode>soap-env:client</faultcode> <faultstring>no such resource exists</faultstring> <faultactor>http://www.example.com/simpleshoppingservice</faultactor> <detail> <wsrf-r:resourceunknownfault> wsrf-bf:timestamp>2005-05-31t12:00:00.000z</wsrf-bf:timestamp> <wsrf-bf:originator> <wsa:address>http://www.example.com/simpleshoppingservice</wsa:address> <wsa:referenceparameters> <rpimpl:cartid>s0</rpimpl:cartid> </wsa:referenceparameters> </wsrf-bf:originator> <wsrf-bf:description>resource unknown</wsrf-bf:description> </wsrf-r:resourceunknownfault> </detail> </SOAP-ENV:Fault> 15/7/2015 UC-01/CS-592 Spring 2011 26 </SOAP-ENV:Body>

The Shopping Cart as multiple WS Resources 15/7/2015 UC-01/CS-592 Spring 2011 27

The Printer Resource 15/7/2015 UC-01/CS-592 Spring 2011 28

The Printer Resource Properties 15/7/2015 UC-01/CS-592 Spring 2011 29

Printer Properties Multiplicities 15/7/2015 UC-01/CS-592 Spring 2011 30

WS-Resources as Views of Underlying Resources 15/7/2015 UC-01/CS-592 Spring 2011 31

Directories and Groups of Service 15/7/2015 UC-01/CS-592 Spring 2011 32

Service Groups cont. The directory is described by a WSDL porttype called PrinterAndJobGroup which contains the operations to add new entries and query existing entries using QueryResourceProperties. The Resource Properties document is shown in the figure; it contains the entries, along with rules which describe them. 15/7/2015 UC-01/CS-592 Spring 2011 33

MembershipContentRules <wsrf-sg:membershipcontentrule MemberInterfaces="preprinted" ContentElements="pr:printer_state pr:printer_is_accepting_jobs pr:queued_job_count" /> Member services which support the pr:printer porttype must be described by an entry which contain three XML elements defined by the printer 15/7/2015 UC-01/CS-592 Spring 2011 34

Updating the Entries: Notification Messages To be useful, the entries in the PrinterAndJobGroup must contain up-to-date information about the state of the Printers and Jobs as they change. Interfaces which define the publication of such information to interested subscribers are defined by Web service specifications such as WS- BaseNotification [WS-BaseNotification]. In our example, the implementation of the Job WS-Resource must act as a publisher and allow the JobEntry WS-Resource to subscribe to changes in the values of the resource properties describing the job resource. WSRF describes the format of several kinds of events which can be incorporated in notification messages defined by WS-BaseNotification. These are: Changes to resource property values defined in [WS-Resource Properties] WS-Resource termination, defined in [WS-Resource Lifetime] Addition and removal of ServiceGroupEntries, defined in [WS-ServiceGroup] 15/7/2015 UC-01/CS-592 Spring 2011 35

Example Notification Message <wsnt:notify> <wsnt:notificationmessage> <wsnt:subscriptionreference>(details omitted)</wsnt:subscriptionreference> <wsnt:topic Dialect="http://docs.oasis-open.org/wsn/t-1/TopicExpression/Simple"> pr:job_state </wsnt:topic> <wsnt:producerreference> <wsa:address>http://www.example.com/printer/job</wsa:address> <wsa:referenceparameters> <rpimpl:printerid>printer01</rpimpl:printerid> <rpimpl:jobid>job523</rpimpl:jobid> </wsa:referenceparameters> </wsnt:producerreference> 15/7/2015 UC-01/CS-592 Spring 2011 36

Cont. <wsnt:message> <pr:job_statechangenotification> <pr:printer_name>printer01</pr:printer_name> <pr:job_name>my Print Job</pr:job_name> <wsrf-rp:resourcepropertyvaluechangenotification> <wsrf-rp:oldvalues> <pr:jobprinter_state>processing</pr:job_state> </wsrf-rp:oldvalues> <wsrf-rp:newvalues> <pr:job_state>completed</pr:job_state> </wsrf-rp:newvalues> </wsrf-rp:resourcepropertyvaluechangenotification> </pr:job_statechangenotification> </wsnt:message> <wsnt:notificationmessage> </wsnt:notify> 15/7/2015 UC-01/CS-592 Spring 2011 37

Τέλος Ενότητας

Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Πανεπιστήμιο Κρήτης» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους.

Σημειώματα

Σημείωμα αδειοδότησης Το παρόν υλικό διατίθεται με τους όρους της άδειας χρήσης Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 4.0 [1] ή μεταγενέστερη, Διεθνής Έκδοση. Εξαιρούνται τα αυτοτελή έργα τρίτων π.χ. φωτογραφίες, διαγράμματα κ.λ.π., τα οποία εμπεριέχονται σε αυτό και τα οποία αναφέρονται μαζί με τους όρους χρήσης τους στο «Σημείωμα Χρήσης Έργων Τρίτων». [1] http://creativecommons.org/licenses/by-nc-nd/4.0/ Ως Μη Εμπορική ορίζεται η χρήση: που δεν περιλαμβάνει άμεσο ή έμμεσο οικονομικό όφελος από την χρήση του έργου, για το διανομέα του έργου και αδειοδόχο που δεν περιλαμβάνει οικονομική συναλλαγή ως προϋπόθεση για τη χρήση ή πρόσβαση στο έργο που δεν προσπορίζει στο διανομέα του έργου και αδειοδόχο έμμεσο οικονομικό όφελος (π.χ. διαφημίσεις) από την προβολή του έργου σε διαδικτυακό τόπο Ο δικαιούχος μπορεί να παρέχει στον αδειοδόχο ξεχωριστή άδεια να χρησιμοποιεί το έργο για εμπορική χρήση, εφόσον αυτό του ζητηθεί..

Σημείωμα Αναφοράς Copyright Πανεπιστήμιο Κρήτης, Χρήστος Νικολαου. «Εισαγωγή στα Δίκτυα Υπηρεσιών. Διάλεξη 17η: WSRF». Έκδοση: 1.0. Ηράκλειο/Ρέθυμνο 2015. Διαθέσιμο από τη δικτυακή διεύθυνση: https://elearn.uoc.gr/course/view.php? id=416/