
Programming Web Services with Perl
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
More details
Other editions
Additional editions

Content
- Intro
- Table of Contents
- Preface
- Audience for This Book
- Structure of This Book
- Conventions Used in This Book
- Comments and Questions
- Acknowledgments
- Randy
- Pavel
- Introduction to Web Services
- History
- The Web Services Dream
- The Web Services Cold Shower
- Who to Believe?
- Web Services in the Real World
- HTTP and XML Basics
- HTTP
- The Request/Response Cycle
- HTTP Message Structure
- Examining the request
- Examining the response
- Reading More About HTTP and LWP
- XML
- Self-Describing Data
- Elements and namespaces
- Attributes
- Data
- Comments, processing instructions, and specialized content
- Describing XML with DTD and XML Schema
- The DTD
- XML Schema
- XML Modules and Tools for Perl
- XML::Parser
- XML::LibXML and XML::LibXSLT
- XML::SAX
- XML::XPath, XML::Simple, and others
- XML Schema
- Why Replace the DTD?
- Document structure versus data structure
- Understanding more about XML Schema
- Schema Components
- The predefined simple types
- Primary components
- Attributes
- Elements
- Simple and complex types
- A unified example schema
- XML Schema in SOAP and Related Areas
- Introduction to XML-RPC
- History of XML-RPC
- The XML in XML-RPC
- Data encoding
- Arrays and structures
- Making a request
- Creating a response
- Sending an error response
- Client and Server Communication
- Method Signatures and Overloading
- Example Client: Meerkat
- The Meerkat Service
- From Meerkat Query to HTML Sidebar
- Limitations of XML-RPC
- Status of the Specification
- XML-RPC and Interoperability
- Choosing XML-RPC over SOAP
- Programming XML-RPC
- Perl Toolkits for XML-RPC
- RPC::XMLSimple
- Client Example: meer2html.pl
- The RPC::XMLSimple::Client Class in Detail
- A Server Example: Providing "Fortunes"
- The RPC::XMLSimple::Daemon Class in Detail
- XMLRPC::Lite
- Client Example: meer2html.pl
- The XMLRPC::Lite Class in Detail
- Debugging
- Auto-Dispatch
- The Fortune Server Using XMLRPC::Lite
- The XMLRPC::Lite Server Classes
- RPC::XML
- Client Example: meer2html.pl
- The RPC::XML::Client Class in Detail
- The Fortune Server Using RPC::XML::Server
- The RPC::XML::Server Class in Detail
- Managing server-side code with XPL files
- The Introspection Interface for Servers
- Writing for Apache with Apache::RPC::Server
- Configuring Server Objects
- The Apache::RPC::Status Monitor
- Introduction to SOAP
- Background
- XML Definitions
- The Basic Message Structure
- The Envelope Tag: Declaring Namespaces
- The Header Tag: Routing and More
- The encodingStyle attribute
- Actors, roles, nodes, and responsibility
- The actor/role attributes
- The mustUnderstand attribute
- Attribute placement and example
- The Body Tag: Anatomy of a Message
- Expressing and Encoding Data
- XML Schema and encoding
- Simple types, values and enumerations
- Compound types and values
- Accessors, scoping, and reference
- Arrays and partial arrays
- Structures and generic compound types
- The SOAP root attribute
- Signaling a Problem: Faults
- Fault elements
- Predefined faults
- RPC over SOAP
- Supplying the RPC Information
- Putting the Call and Response in the Body
- Use of the SOAP Header
- RPC Faults
- SOAP Transport
- Further Reading
- Programming SOAP
- A Toolkit Approach
- DevelopMentor's SOAP Module
- Example: Client to Convert a Number to Words
- Autogenerated XML
- The SOAP::Lite Module
- Installing SOAP::Lite
- Using SOAP::Lite for Clients
- Number-to-text conversion with SOAP::Lite
- Translating a use.perl.org journal stream to RSS
- Basic classes and components
- Dispatching methods and the object style
- Managing data with SOAP::Data and SOAP::SOM
- Example: Automatically announcing CPAN uploads
- Other SOAP-Related Modules
- SOAP::payload
- SOAP::Lite::SmartProxy
- Meta::Comm::Soap
- Serving SOAP over HTTP
- Basic SOAP::Lite Servers
- The Application
- Designing the Server
- Supporting Code
- Managing the Interface
- Choosing the HTTP Vehicle
- Tying the Interface Code to SOAP
- Starting Out
- Subclassing the Components
- WishListCustomer::Daemon
- WishListCustomer::SOAP
- Revising the Daemon-Based Server
- Simple Access with a SOAP::Lite Client
- Improving the Code and the Service
- Moving the Server to Apache
- Revisiting the Interface
- Designing WishListCustomer::SOAP2
- Accessing the SOAP envelope
- Testing the new method
- Ideas for Further Exploration
- SOAP Services Without HTTP
- Choosing a Protocol
- Authentication
- Server Authentication
- Designing the new scheme
- Creating a generic server class
- Client Authentication
- Custom headers with SOAP::Header
- WishListCustomer::Client as a shortcut
- Transports with Server and Client
- Using SOAP::Transport::TCP
- SOAP::Transport::TCP::Server
- SOAP::Transport::TCP::Client
- Using SOAP::Transport::JABBER
- Creating a Jabber-based server
- The Jabber-based client
- Using SOAP::Transport::MQ
- Using POP3 and MAILTO
- SOAP::Transport::POP3::Server
- SOAP::Transport::MAILTO::Client
- Standalone Protocols
- SOAP::Transport::IO
- SOAP::Transport::FTP::Client
- SOAP::Transport::LOCAL::Client
- Creating New Transport Modules
- Writing a Server Transport
- Specialized constructors
- Writing a localized handle method
- Other server methods
- Writing a Client Transport
- Naming the client class
- Constructors
- The send_receive method
- Other client methods
- Example Transport Module
- Service Description with WSDL
- Basic WSDL
- Starting Simple
- The Parts of a WSDL Document
- Starting a WSDL document
- Documentation, types, and messages
- Operations and portType
- Bindings
- Service definitions
- HTTP and MIME Binding in WSDL
- Extending WSDL with HTTP
- Using the MIME extension elements
- Overloading Operations in WSDL
- Overloading when declaring operations
- Implementing overloaded operations within bindings
- Why bother with overloading in Perl?
- Other WSDL Elements
- Controlling arguments with parameterOrder
- Document-style message encoding
- Modular WSDL with the import element
- WSDL Programming
- WSDL Schema Support in SOAP::Lite
- SOAP::Lite client support for WSDL
- Code-generation based on WSDL
- SOAP::Schema shortcomings
- Service Advertising and Discovery with UDDI
- Defining UDDI
- Basic UDDI Data Structures
- Special data and source considerations
- Details of businessEntity and publisherAssertion
- Details of businessService
- Details of bindingTemplate
- tModel, tModelInstanceInfo, and referencing
- Publish and Query Interfaces
- The querying routines
- Using findQualifiers in calls
- Publishing and editing business information
- Further reading
- Programming with UDDI::Lite
- The UDDI::Lite Family
- Connecting through UDDI::Lite
- Getting and reading data from UDDI::Data
- Showing More Detail for a Business
- The idea
- Using UDDI::Lite with auto-dispatch
- REST: Representational State Transfer
- Defining REST
- The Scientific Definition
- The Practical Definition
- REST Principles
- Aesthetics of URI Design
- URI syntax
- Resource modeling
- Methods
- GET method
- POST method
- DELETE method
- PUT method
- Security
- Programming REST
- REST Primer
- Modeling Resources
- Creating Multiple Representations
- Developing REST Applications
- Working with POST, PUT, and DELETE Methods
- Implementing a Purchase Order Service
- Two disadvantages of using the POST method
- Two disadvantages of the GET and PUT combination
- Choosing the implementation
- Implementing Cover Page Service
- Documenting Service API
- What Makes REST Hard
- REST and SOAP
- Advanced Web Services Topics
- Message Routing
- Web Services Routing Protocol (WS-Routing)
- Web Services Referral Protocol (WS-Referral)
- Packaging
- MIME and SOAP with Attachments
- DIME and WS-Attachments
- Security
- Key Concepts
- Transport Level Security
- XML Security
- XML Signature Syntax and Processing (XML Signature)
- XML Encryption
- XML Key Management (XKMS)
- Security Assertion Markup Language (SAML)
- XML Access Control Markup Language (XACML)
- Web Services Security
- Web Services Security Language (WS-Security)
- WS-Policy, WS-Trust, WS-Privacy, WS-SecureConversations, WS-Federation, and WS-Authorization
- Services Discovery
- Web Services Inspection Language (WS-Inspection or WSIL)
- Reliable Messaging
- HTTPR
- Business Process Management
- Document and RPC Styles
- Distributed Transactions
- Transactions and Coordination
- Web Services Coordination (WS-Coordination)
- Web Services Transaction (WS-Transaction)
- Business Transaction Protocol (BTP)
- Business Process Specifications
- Business Process Execution Language (BPEL)
- Implementation Considerations
- Internationalization
- Performance and Optimization
- WS-Next
- XML-RPC Toolkit Programming Reference
- RPC::XMLSimple
- RPC::XMLSimple
- RPC::XMLSimple::Client
- RPC::XMLSimple::Daemon
- XMLRPC::Lite
- XMLRPC::Lite
- XMLRPC::Lite
- XMLRPC::Data
- XMLRPC::SOM
- XMLRPC::Deserializer and XMLRPC::Serializer
- XMLRPC::Server
- XMLRPC::Server::Parameters
- XMLRPC::Transport::HTTP
- XMLRPC::Transport::HTTP::CGI
- XMLRPC::Transport::HTTP::Daemon
- XMLRPC::Transport::HTTP::Apache
- XMLRPC::Transport::POP3
- XMLRPC::Transport::TCP
- RPC::XML
- RPC::XML
- RPC::XML::Client
- RPC::XML::Server
- Server-Side Code Classes
- RPC::XML::Method
- RPC::XML::Procedure
- RPC::XML::Function
- Apache::RPC::Server
- Apache::RPC::Status
- SOAP::Lite Programming Reference
- SOAP::Lite
- SOAP::Lite
- SOAP::Data
- SOAP::SOM
- SOAP::Fault
- SOAP::Transport
- SOAP::Serializer
- SOAP::Header
- SOAP::Constants
- SOAP::Schema
- SOAP::Schema::WSDL
- SOAP::Client
- SOAP::Server
- SOAP::Server::Parameters
- SOAP::Trace
- SOAP Transport Classes
- SOAP::Transport::FTP
- SOAP::Transport::FTP::Client
- SOAP::Transport::HTTP
- SOAP::Transport::HTTP::Client
- SOAP::Transport::HTTP::Server
- SOAP::Transport::HTTP::CGI
- SOAP::Transport::HTTP::Daemon
- SOAP::Transport::HTTP::Apache
- SOAP::Transport::HTTP::FCGI
- SOAP::Transport::IO
- SOAP::Transport::IO::Server
- SOAP::Transport::JABBER
- SOAP::Transport::JABBER::Client
- SOAP::Transport::JABBER::Server
- SOAP::Transport::LOCAL
- SOAP::Transport::LOCAL::Client
- SOAP::Transport::MAILTO
- SOAP::Transport::MAILTO::Client
- SOAP::Transport::MQ
- SOAP::Transport::MQ::Client
- SOAP::Transport::MQ::Server
- SOAP::Transport::POP3
- SOAP::Transport::POP3::Server
- SOAP::Transport::TCP
- SOAP::Transport::TCP::Client
- SOAP::Transport::TCP::Server
- The Apache Wrapper
- Apache::SOAP
- UDDI::Lite
- UDDI::Lite
- UDDI::Data
- UDDI::SOM
- UDDI::Serializer and UDDI::Deserializer
- XML-RPC Example Code
- Basic Meerkat Client (Chap ter 3)
- XML-RPC Toolkit Samples (Chap ter 4)
- The RPC::XMLSimple Examples
- The XMLRPC::Lite Examples
- The RPC::XML Examples
- The XRFortune.pm Module
- The listMethods.xpl File
- SOAP Example Code
- HTTP SOAP Code (Chap ter 7)
- WishListCustomer
- SoapExUser
- SoapExBook
- The First HTTP::Daemon Server
- WishListCustomer::Daemon
- WishListCustomer::SOAP
- The Second HTTP::Daemon Server
- The SOAP::Lite Client to Format a Wish List
- WishListCustomer::Apache
- WishListCustomer::SOAP2
- The Third HTTP::Daemon Server
- The SOAP::Lite Client to Test FindBooks
- SOAP with Other Protocols (Chap ter 8)
- The Generic Transport Class
- The Subclass of SOAP::Lite
- A TCP-Based Server
- A Generic Client (TCP by Default)
- A Jabber-Based Server
- The MQ-Based Server
- The POP3-Based Server
- The MAILTO Client
- The IO-Based Filter
- The FTP Client
- The LOCAL Example
- The Sample Transport Module
- WSDL and UDDI Examples
- The wishlist.wsdl File
- The useperlorg.wsdl File
- The show_biz UDDI Application
- Bibliography and References
- Bibliography
- Additional Recommended Books
- Web Pages
- General XML and XML Schema
- XML-RPC
- SOAP
- WSDL
- UDDI
- REST
- Index
System requirements
File format: PDF
Copy-Protection: Adobe-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Install the free reader Adobe Digital Editions prior to download (see eBook Help).
- Tablet/smartphone (Android; iOS): Install the free app Adobe Digital Editions or the app PocketBook before downloading (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (only limited: Kindle).
The file format PDF always displays a book page identically on any hardware. This makes PDF suitable for complex layouts such as those used in textbooks and reference books (images, tables, columns, footnotes). Unfortunately, on the small screens of e-readers or smartphones, PDFs are rather annoying, requiring too much scrolling.
This eBook uses Adobe-DRM, a „hard” copy protection. If the necessary requirements are not met, unfortunately you will not be able to open the eBook. You will therefore need to prepare your reading hardware before downloading.
Please note: We strongly recommend that you authorise using your personal Adobe ID after installation of any reading software.
For more information, see our eBook Help page.