SOA17 Introducing Native Invocation with the Open Edge






























- Slides: 30
SOA-17: Introducing Native Invocation with the Open. Edge® Adapter for Sonic™ ESB Rob Straight, Principal Product Manager David Cleary, Principal Engineer
Agenda § Business Processes and Sonic ESB § Open. Edge Adapter for Sonic ESB § Native Invocation Methodology 2 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Business Processes § How do you create business processes that § execute ABL components? With Sonic ESB! J 2 EE™ • Flexibly assemble components • Heterogeneous • Distributed • Scalable APPL. PACKAGE D APPL. Sonic MQ® SONIC ESB Reliable Messaging OPENED GE APPL. 3 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB . NET™ APPL. WEB SERVIC E © 2008 Progress Software Corporation
Model Business Process: Sonic Itinerary Process Editor 4 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Open. Edge Adapter for Sonic ESB § ABL components participate in business § processes controlled by Sonic ESB Prior to Open. Edge 10. 1 C: • ABL is disguised as Web services • Developer needs detailed knowledge of Web service technologies • The setup in Open. Edge and Sonic is complex § Starting with Open. Edge 10. 1 C: • Native Invocation Methodology Added! 5 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Adapter Architecture: Web Service Invocation Methodology Sonic ESB Container Service 1 Source Code Service 1. wsm Proxy. Gen Open. Edge Adapter for Sonic ESB SOAP to ABL to SOAP Service 1. wsdl Open. Edge Application Server 6 Open. Edge Service 1 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
ABL Native Invocation Methodology § Sonic ESB calls ABL procedures, functions § and external procedures directly/natively App. Server™ call information is collected at development time: • Source code annotation preferred • App. Server run-time properties & service initialization: info stored in invocation files § Input/output parameters of ABL procedure mapped to Sonic message content • Sonic ESB Process Editor 7 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Adapter Architecture: Native Invocation Methodology Sonic ESB Container Service 1. wsm Service 2. esboe Open. Edge Adapter for Sonic ESB SOAP to ABL Open. Edge Application Server 8 ABL to SOAP Open. Edge Service 1 Open. Edge Service 2 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Supported App. Server Session Models § Session-free (recommended) • No session between client & App. Server is maintained • App. Server runs in a state-free operating mode § Session-managed • Client to App. Server persistent connection maintained • App. Server runs in State-reset, State-aware or Stateless operation modes 9 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Unified Development Environment § Open. Edge Architect and Sonic Workbench are both based on Eclipse • Easy to configure a combined development environment in a single Eclipse instance • Open. Edge 10. 1 C and either Sonic 7. 5 or 7. 6 § No switching between Open. Edge and Sonic § Single unified view of project resources 10 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Demonstration: Unified Development Environment 11 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Native Invocation Development Process New in Open. Edge 10. 1 C STEP 1: Create. esboe file for each ABL procedure Annotate Source Code Don’t Annotate STEP 1: Create. esboe file for ABL procedure OE Architect Manually Proxy. Gen builds OE Architect Annotation Wizard Command line utility* to. esboe from r-code build. esboe Wizard. esboe built on-compile Annotation or on-demand. esboe built on-compile or on-demand STEP 2: . esboe file in Sonic project (automatic or import) STEP 3: Drop. esboe onto Sonic Workbench Process Editor STEP 4: Map ABL parameters to message parts * Open. Edge Architect must be installed 12 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Code Annotation Example @openapi. openedge. export(type=“ESB”, ESBOEFilename=“%PROCNAME%”) DEFINE INPUT PARAMETER Item. Num. In AS INTEGER NO-UNDO. DEFINE OUTPUT PARAMETER DATASET FOR ds. Item. Locations. FIND Sports 2000. Item WHERE Sports 2000. Itemnum = Item. Num. In. IF AVAILABLE(Item) THEN DO: CREATE tt. Item. ASSIGN tt. Itemnum = Sports 2000. Itemnum tt. Item. Name = Sports 2000. Item. Name. FOR EACH Sports 2000. Bin WHERE Sports 2000. Bin. Itemnum = Item. Num. In: 13 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Supplying Invocation Information to Sonic Yes (Declarative) Annotate No (Non-Declarative) Source Code? Add Annotations Compile Source Code. esboe r-Code Run Proxy. Gen r-Code . esboe Add ABL Call to Itinerary in Sonic Workbench 14 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Demonstration: Source Code Annotation 15 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Native Invocation Development Process STEP 1: Create. esboe file for ABL procedure Annotate Source Code Don’t Annotate OE Architect Manually Proxy. Gen builds STEPWizard 3: Drop Command. esboe onto Workbench Annotation line Sonic utility* to. esboe from r-code build. esboe Process Editor. esboe built on-compile or on-demand STEP 2: . esboe file in Sonic project (automatic or import) STEP 3: Drop. esboe onto Sonic Workbench Process Editor STEP 4: Map ABL parameters to message parts * Open. Edge Architect must be installed 16 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Sonic Workbench Process Editor: Add ABL Process Step 17 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Demonstration: Sonic Workbench Process Editor 18 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Native Invocation Development Process STEP 1: Create. esboe file for ABL procedure Annotate Source Code Don’t Annotate OE Architect Manually Proxy. Gen builds STEPWizard 4: Map ABL parameters totomessage Annotation Command line utility*. esboe parts from r-code. esboe available. esboe built on-compile Graphicalbuild mapping or on-demand Use XPath to extract/insert simple types STEP 2: . esboe files in Sonic project (automatic or import) Use message parts for Temp. Tables/Data. Sets STEP 3: Drop. esboe onto Sonic Workbench Process Editor STEP 4: Map ABL parameters to message parts * Open. Edge Architect must be installed 19 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Message Structure Envelope Header #0 Header #1 Body Message Payload 20 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Mapping Message Parts: Request ABL Flexible mapping capabilities 21 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Mapping Message Parts: ABL Response 22 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Demonstration: Mapping Message Parts 23 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Debugging and Deployment § Use scenarios in Sonic Workbench Process § § 24 Editor to debug the business process Deploy the business process, . esboe file and r -code ABL is automatically executed when the business process runs SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Demonstration: Debugging 25 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Native Invocation Methodology Benefits § Unified Open. Edge and Sonic development § environment Easy to expose ABL code as a service • Minimal technical knowledge needed • Basic use case is automated • Faster development § Optimized run-time performance (no SOAP) 26 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Next Steps § Get an evaluation copy of Open. Edge 10. 1 C and Sonic 7. 6 • Visit www. psdn. com and click on the product tour and evaluation kits link 27 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
? Questions 28 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
Thank You 29 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation
30 SOA-17: Native Invocation with the Open. Edge Adapter for Sonic ESB © 2008 Progress Software Corporation