8005b8507eff627512a1d6465f01ff51.ppt
- Количество слайдов: 23
WSRF Primer Document - Outline & Feedback OASIS WSRF TC Face-to-face – Cupertino October 04.
Contents § Primer Document Objectives Ø Explain, Convince § Format Outline: background, basics, more details Ø Built on a progressive example: – Illustrating the facilities – Motivating use of WSRF – Discuss… Ø § Extra: FAQ proposal
Primer Objectives § Audience: Those looking for – the first foothold, the essence (not the last word, which they get from the specs) – A summary Ø Those who: – Have heard of Web services (but are not experts) – Want to get an idea of how to use WSRF – Are looking for a reminder about WSRF Ø § Other examples: Ø WSDL Primer, WS-RP Primer
Primer Outline 1. Introduction 2. Web services Background 3. A Web services example 4. Introducing Stateful Resources 4. 1 Some High Level Requirements Grid Systems, Distributed systems management, Distributed Print 4. 2 Detailed Requirements Identity, Properties, Port. Type extension, Resource lifecycle, Fault standards 5. Describing WS Resources 5. 1 Identity 5. 2 Properties 6. Resource Property Operations 7. Finding Services: Service. Groups and Registries Illustrated by a continuous, progressive example
2. Web services background Server 2. create instance 1. schedule 3. return identifier “job 54” printer Web service job 54 hjasf fai kjafjh nakfjdls kdf Web service client print. Job service print. Job Web service instances maintaining state hjasf fai kjafjh nakfjdls kdf Print. Jobs
2. Web services background Server job 54 hjasf fai kjafjh nakfjdls kdf l ance ”) C 54 (“job print. Job Web service client hjasf fai kjafjh nakfjdls kdf print. Job Web service instances maintaining state hjasf fai kjafjh nakfjdls kdf Print. Jobs
What’s needed from the example? (Why Printing? ) § The functions and scenarios are already familiar to readers § Requirements, messages, faults, properties are well documented ‘Design Goals for an Internet Printing Protocol’ RCF 2567, April 1999. Ø Client APIs : javax. print maps to IPP document attributes Ø § It realistically illustrates most (all? ) WSRF features (and more) Ø Ø Ø Ø Resource description Port. Type extension Dynamic properties Resource identification and lifetime Metadata Service and Resource discovery Notification – IPP described a notification protocol Administrative operations akin to WSDM § It is compelling Despite familiarity, it is interestingly complex. Ø It has real advantages – exploiting WS standards. Ø
The IPP essentials (RFC 2566) Printer object - Physical printer or printer server Operations: Print-Job Print-URI Validate-Job Create-Job Get-Printer-Attributes Get-Jobs Job object - used to model a print job. A Job object contains documents. Operations: Send-Document Send-URI Cancel-Job Get-Job-Attributes Indentifiers All Printer and Job objects are identified by a Uniform Resource Identifier (URI) Protocols (RFC ) Messages are defined in binary format and transmitted via http.
WSRF expression of print. Job Web service Server 2. create instance 1. schedule 3. EPR 1 for job 54 printer Web service job 54 hjasf fai kjafjh nakfjdls kdf 4. EPR 1. cancel() Web service client print. Job service print. Job Web service instances maintaining state hjasf fai kjafjh nakfjdls kdf Print. Jobs
Job Properties
Getting/setting Job attributes § Chromaticity, Copies, Date. Time. At. Completed, Date. Time. At. Creation, Date. Time. At. Processing, Destination, Fidelity, Finishings, Job. Hold. Until, Job. Impressions, Job. Impressions. Completed, Job. KOctets, Job. KOctets. Processed, Job. Media. Sheets, Job. Media. Sheets. Completed, Job. Message. From. Operator, Job. Name, Job. Originating. User. Name, Job. Priority, Job. Sheets, Job. State. Reasons, Media, Media. Printable. Area, Multiple. Document. Handling, Number. Of. Documents, Number. Of. Intervening. Jobs, Number. Up, Orientation. Requested, Output. Device. Assigned, Page. Ranges, Presentation. Direction, Printer. Resolution, Print. Quality, Sheet. Collate, Sides, Termination. Time? § Set-Job-Attributes operation. This OPTIONAL operation allows a client to set the values of the attributes of a Job object. In the response, the IPP object returns success or rejects the entire request with indications of which attribute or attributes could not be set.
Interface extension example (from javax. print) interface Doc. Print. Job represents a print job that can print a specified document with a set of job attributes. An object implementing this interface is obtained from a print service. interface Cancelable. Print. Job extends Doc. Print. Job This interface is used by a printing application to cancel a print job. A Doc. Print. Job implementation returned from a print service implements this interface if the print job can be cancelled. Before trying to cancel a print job, the client needs to test if the Doc. Print. Job object returned from the print service actually implements this interface. Clients should never assume that a Doc. Print. Job implements this interface. A print service might support cancellation only for certain types of print data and representation class names. This means that only some of the Doc. Print. Job objects returned from a service will implement this interface. Service implementors are encouraged to implement this optional interface and to deliver a javax. print. event. Print. Job. Event. JOB_CANCELLED event to any listeners if a job is successfully cancelled with an implementation of this interface
Dynamic Properties – enabling new features § IPP/1. 1 : "output-bin" attribute extension proposal (draft-ietf-ipp-output-bin-attr-00. txt) This defines an extension for the OPTIONAL "outputbin" Job Template attribute. This attribute allows the client to specify in which output bin a job is to be placed and to query the Printer's default and supported output bins. § WSRF avoids the need for a new RFC for each extension, but how does this show up at the client? (Tbd)
Service Group WSPP requirements • IPP clients can search or browse for entries of type printer. Clients use the directory service to find entries based on naming, organizational contexts, or filtered searches on attribute values of entries. For example, a client can find all printers in the "Local Department" context. Authentication and authorization are also often part of a directory service so that an administrator can place limits on end users so that they are only allowed to find entries to which they have certain access rights.
Service. Groups as Printer directories Server 1. registration 2. Search 3. EPR 1 for printer prt 65 printer Group Web service prt 65 Web service client printer Web service instances maintaining state Physical Printers
IPP Notification – RFC 2911 § Using a notification service¹, the end user is able to register for and receive Printer specific and Job specific events § Client Interface Example (from javax. print) Interface Print. Job. Attribute. Listener public interface Print. Job. Attribute. Listener Implementations of this interface are attached to a Doc. Print. Job to monitor the status of attribute changes associated with the print job. Method Summary void attribute. Update(Print. Job. Attribute. Event pjae) Notifies the listener of a change in some print job attributes. ¹ The notification service was out of scope for IPP/1. 1 An end user can query the status of Printer objects and can follow the progress of Job objects by polling using the Get-Printer- Attributes, Get-Jobs, and Get-Job-Attributes operations.
Next steps § Map (some) IPP attributes to WSRF properties in XML § Test out property update messages/faults against WSRP § Test out the dynamic property and ‘metadata’ functions § Post for review
Extra: we need FAQs on the TC public homepage Currently Empty
FAQs – small, independent, digestible pieces of wisdom § § § Ø Ø Ø Ø We should populate the TC homepage FAQ section… …when we have the basic terminology (WS Resource) agreed (? ) Examples: (already written as preparatory material for the Primer. ) What is WSRF? Ø When should I use WSRF? What does WSRF buy me? Ø What is a resource? Ø What is the difference between a WS Resource and A Web service? Ø What is a Resource Property? What is the history behind WSRF? Ø What is a WS-Resource? Ø When will WSRF be a standard? Is WSRF intended mainly for systems management applications? Ø Should I use WSRF in general applications such as Ø insurance, retail? What is the difference between a Resource identified by a URI, and a resource accessed by a WS Resource? Does WSRF provide resource identity? What is the 'singleton' resource pattern? What resource naming support does WSRF provide What is the relationship of WSRF with EPRs and WS-Addressing? What is the relationship of WSRF with WSDL activities in W 3 C? What is the Implied Resource Pattern? Can I use EPRs without using Resource Properties? Can I use Resource Properties without referring to WS-Addressing and EPRs? Do I have to use a factory pattern with WSRF? Should I pass EPRs between services? between clients? Why would I do that? What is the relationship of WSRF with WS-I? When will software be available to support WSRF? Tools? Runtime? Applications?
The End
Printer Metadata § OPTIONAL end user, operator, and administrator Set. Job-Attributes and Set-Printer-Attributes operations are used to modify IPP Job objects and Printer objects, respectively. IPP also defines a third Get-Printer-Supported-Values operation that returns values that the IPP Printer will accept for setting its "xxx-supported" attributes. The Get-Printer-Supported-Values operation MUST be supported, if the implementation supports setting any "xxx-supported" Printer attributes using the Set-Printer. Attributes operation. (draft-ietf-ipp-job-printer-set-ops-01. txt)
Questions? § How should we introduce the notion of lifetime? § The specs use different examples – Disk drive, operating system should we make these line up? § Should we illustrate more difficult examples – Ø Multiple interface extensions
App. Notes proposal - summary A. High level overview of the WS-RF specs: (Only one or two paragraphs to describe each spec description) B. Definitions of various terms+ C. Motivation: WS Applications/ Use Cases for the WS-RF specs Potential applications for WS-RF specs include: examples of Web Services that contain stateful resources behind the WS interface, Grid Infrastructure layer (formerly known as OGSI- see OGSI Primer and OGSA Use Case document), WSDM specs use of WS-RF capabilities, Modeling remote portlets (WS-RP) as WS resources, modeling a subscription to a notification pattern as a WS resource (WS-Notification), other WS specs that might make use of WSRF specs (TBD by the contributors- what about WS Security? ) D. Composability Details 1. How the individual WS RF specs compose, i. e. are used together (including any dependencies and interactions). Which one's are used together (e. g. WSResource, WS-Resource Property and WS-RL) vs WS RF specs which might stand alone (e. g. WS Base Faults) 2. How WS-RF specs could be used with WS-Notification specs (as per Peter Niblett's presentation to both TCs at f 2 f meeting) 3. How WSDM specs (MUWS and MOWS) make use of WS-RF specs (input from WSDM TC would be appreciated). 4. How WS Remote Portlets could be modeled as WS Resources and make use of WS-RF specs (which one's? ) E. Clarification of the issues from the WSRF issues list that we feel are implementation dependent (and therefore non normative/ not subject to standardization). This also includes best practices* and recommendations. For example, possible interpretations of fault messages, potential recovery options, policy issues effecting any of the WS-RF specs
8005b8507eff627512a1d6465f01ff51.ppt