Download presentation
Presentation is loading. Please wait.
Published byDelphia Hamilton Modified over 8 years ago
1
ARCH-7: Integrate this! SonicMQ® and the OpenEdge® Reference Architecture Christian Stiller Technical Architect
2
© 2006 Progress Software Corporation2 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Agenda Review OpenEdge Reference Architecture Review SonicMQ implementation Adding Sonic to the Reference Architecture Sending messages Receiving messages Alternative approaches
3
© 2006 Progress Software Corporation3 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA OpenEdge Reference Architecture Presentation Business Services Data Access Data Sources Common Infrastructure Enterprise Services
4
© 2006 Progress Software Corporation4 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Starting point to implement Reference Architecture Business Entities Service Interface Dynamic interface Uses ProDatasets OpenEdge Reference Implementation
5
© 2006 Progress Software Corporation5 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA fetchWhere Retrieves Dataset with customer records Optional filter saveChanges Uses Dataset to pass in creates, updates and deletes on customer records validateCustomer Validation logic using error flags on Dataset Sample Customer Business Entity
6
© 2006 Progress Software Corporation6 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Show code in OpenEdge Architect Sample Customer Business Entity
7
© 2006 Progress Software Corporation7 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Dynamic Service Interface Single point of entry into system Same signature for all exposed methods –Using Datasets Core services Session Context Security Service Registry Sample Service Interface
8
© 2006 Progress Software Corporation8 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Show code in OpenEdge Architect Sample Service Interface
9
© 2006 Progress Software Corporation9 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Sending messages Extend Business Entity Send out Sonic message when records are changed Receiving messages Receive messages with changes Call existing business entity to validate and apply changes Goals
10
© 2006 Progress Software Corporation10 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Agenda Review OpenEdge Reference Architecture Review SonicMQ implementation Adding Sonic to the Reference Architecture Sending messages Receiving messages Alternative approaches
11
© 2006 Progress Software Corporation11 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Run jmssession persistent Initialize connection to Sonic Create message object Set message body Set message properties Send message Send to queue Publish to topic Sending messages from the ABL
12
© 2006 Progress Software Corporation12 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Show code in OpenEdge Architect Sending messages from the ABL
13
© 2006 Progress Software Corporation13 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Run jmssession persistent Initialize connection to Sonic Receive Messages Subscribe to Topics Receive from Queues Process Messages Receive Body Receive Properties Pass to Business Entity for processing Receiving messages to the ABL
14
© 2006 Progress Software Corporation14 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Show code in OpenEdge Architect Receiving messages to the ABL
15
© 2006 Progress Software Corporation15 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Agenda Review OpenEdge Reference Architecture Review SonicMQ implementation Adding Sonic to the Reference Architecture Sending messages Receiving messages Alternative approaches
16
© 2006 Progress Software Corporation16 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Sending messages saveChanges in beCustomer.p Send message with new customer data Send message with changed customer data Send message with customer deletes Message Includes XML with customer data Includes property to indicate add/change or delete Includes properties to find Business Entity
17
© 2006 Progress Software Corporation17 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Show XML message in OpenEdge Architect Sample Message
18
© 2006 Progress Software Corporation18 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA saveChanges and sending messages Need separate send for updates/adds vs deletes Dataset handling of deletes Adds / updates Need to after the Data Access layer Deletes Need to happen before the Data Access layer Need to look at before table
19
© 2006 Progress Software Corporation19 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Show code example for saveChanges in OpenEdge Architect saveChanges and sending messages
20
© 2006 Progress Software Corporation20 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Recieving messages Need some process to receive messages from queue Prepare dataset with proper Before/After information Call saveChanges in beCustomer.p
21
© 2006 Progress Software Corporation21 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA saveChanges and recieving messages Need separate send for updates/adds vs deletes Dataset handling of deletes Adds / updates Need to after the Data Access layer Deletes Need to happen before the Data Access layer Need to look at before table
22
© 2006 Progress Software Corporation22 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Show code example for saveChanges in OpenEdge Architect saveChanges and receiving messages
23
© 2006 Progress Software Corporation23 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Agenda Review OpenEdge Reference Architecture Review SonicMQ implementation Adding Sonic to the Reference Architecture Sending messages Receiving messages Alternative approaches
24
© 2006 Progress Software Corporation24 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Breaking up saveChanges Create finer-grained services createCustomer deleteCutomer changeCustomer Could call saveChanges Easier message handling Might need additional work for Datasets
25
© 2006 Progress Software Corporation25 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Moving the services Service “createCustomer” Validation / processing Create record in database Send Integration message Send email to salesrep Send welcome package to customer
26
© 2006 Progress Software Corporation26 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Moving the services Business Task “createCustomer” Validate and create record in database Send Integration message Send email to salesrep Send welcome package to customer Business Entity “customer” “createCustomer” Validate Create record in database
27
© 2006 Progress Software Corporation27 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Exposing the Business task as a service Expose as Web service ProxyGen Use OpenEdge Adapter for Sonic ESB®
28
© 2006 Progress Software Corporation28 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA In Summary SonicMQ and the Reference Architecture Need to bridge XML messages and ProDatasets Can reuse existing Business Servicing Layer Well defined services are easier to integrate Presentation Business Services Data Access Data Sources Common Infrastructure Enterprise Services
29
© 2006 Progress Software Corporation29 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Relevant Exchange Sessions ARCH-10: Delivering Services within Sonic ESB SOA-7: Designing Sonic ESB Services and Processes for the OpenEdge Developer
30
© 2006 Progress Software Corporation30 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Questions?
31
© 2006 Progress Software Corporation31 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA Thank you for your time
32
© 2006 Progress Software Corporation32 ARCH-7: Integrate this! SonicMQ and the OpenEdge RA
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.