1 / 12

Agenda

Agenda. Implementation of CustomerService. CustomerService wrapper. SOAP → ESB internal format Abstract → Concrete XML syntax ESB internal format → HTTP (external service processes the message) HTTP → ESB internal format Concrete → Abstract XML syntax ESB internal format → SOAP

dezso
Télécharger la présentation

Agenda

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Agenda • Implementation of CustomerService

  2. CustomerService wrapper • SOAP → ESB internal format • Abstract → Concrete XML syntax • ESB internal format → HTTP (external service processes the message) • HTTP → ESB internal format • Concrete → Abstract XML syntax • ESB internal format → SOAP Internal representation: XQMessage and JMS message

  3. Progress Sonic ESB Product Family (a part of) SonicBPEL Server Orchestration BPEL processes services service types endpoints ESB processes ESB containers ESB Sonic ESB queues topics Messaging Sonic MQ

  4. ESB Key Concepts • Service • Message • Endpoint • Container • Process

  5. ESB Key ConceptsService (“internal service”) • deployed piece of code providing business or mediation functionality • identified by name, e.g. MyService(or MyApp.MyService) • instance of specific service type, e.g. MyServiceType (Service ≈ object, ServiceType ≈ class) • custom-built or provided with Sonic ESB: • content-based routing service • XSLT transformation service • file handling services (pickup, drop, split) • split-and-join services

  6. ESB Key ConceptsService (cont’d) A service has following endpoints defined: • entry endpoint: for getting input messages • exit endpoints: for sending output messages • fault endpoint: for sending (recoverable) faults • rejected messages endpoint (RME): for sending unprocessable messages (e.g. when service throws an exception) These are set administratively, not hard-coded into servicecode (although service can send message to any endpoint it wishes to).

  7. ESB Key ConceptsEndpoint • an abstraction of JMS queue or topic accessible on specific JMS connection • identified by name, e.g. Test.MyEndPoint Connection Parameters: • URL (e.g. tcp://broker:2507) • username & password • parameters concerning session pooling Endpoint Parameters: • connection • QoS (best effort, at least once, exactly once) • JMS destination (queue or topic) • message priority & time to live • ...

  8. ESB Key ConceptsMessage • (an in-memory) equivalent of JMS message • quite simplified: • contains header and 0 or more parts • header: application-defined and transport (i.e. JMS-) specific data: just like JMS properties and JMS header mixed together • parts: each has its own header and data (arbitrary java object) • when receiving/sending through JMS, JMS message is mapped to ESB message and vice versa

  9. ESB Key ConceptsESB Container • a place where services live • provides all the necessary infrastructure for • loading, starting and stopping services • communicating with JMS broker(s) and external web services • loading necessary resources from Directory Service and caching them • executing ESB processes • ensuring fault tolerance (via backup containers) • logging and auditing • services in a container can communicate locally, bypassing the broker • default: dev_ESBCore + dev_ESBTest

  10. ESB Key ConceptsESB Process • sequence of service invocationsdefined in an itinerary

  11. Our solution

  12. XSLT & call http service • WSDL: published at • http://localhost:2580/process/<name>?wsdl • (implemented by assigning a WSDL file to a process) • example: InfoPath • tracking • example: Java • example: SOAP client

More Related