If you can't read please download the document
Upload
carol-mcdonald
View
4.471
Download
6
Embed Size (px)
DESCRIPTION
OpenESB open source ESB based on JBI
Citation preview
2. Agenda
3. Example JBI Composite Application:
5. NetBeans Support of OpenESBIntelligent Event Processor SE 6. Traditional Application Integration
7. Lots of glue code 8. tightly coupled 9. Connections grow 10. Not scalable 11. CostlyMaintenance 12. SOA and Composite Applications Account Management Order Processing Inventory Data Repositories Services Composite Applications Check Customer Status Check Customer Credit Check Inventory Check Order Status Create Invoice Finance Sales Marketing External Partner Data Warehouse CRM ComposedBusiness Processes Combined Services distributed over network, exchange messages, coordinated activity 13. Enterprise Server Bus
14. Decouplesproducers from consumers 15. Open ESB
16. standard application integration framework Standard deployment model JBI A Universal Plug 'n Play Layer 17. JBIPlug-in architecture
18. Pluggable Components Service Engines
BPEL, XSLT Transformation, Java EE, ... Binding Components
HTTP, SMTP, JMS, TCP/IP, FTP, FILE, .. 19. Normalized Message Router J2EE Platform System Management Orchestration (BPEL) Transformation (XSLT) J2EE Platform AS2 JMS WS-I Basic SOAP Service Provider Self-Description WSDL WSDL WSDL WSDL WSDL WSDL Components register the services they provide JBI Core Services 20. Normalized Message Router
21. Service Assembly Composite Application
23. OpenESB v2
24. Open ESB Components
25. XSLT SE 26. JavaEE SE 27. IEP SE 28. ETL SE 29. SQL SE 30. Workflow SE
31. HL7 BC 32. SAP BC 33. SMTP BC 34. HTTP BC 35. JMS BC 36. File BC 37. CICS BC 38. ...
39. CASA 40. JBI Mock 41. WSIT Tech
42. Aspect SE 43. Encoding SE 44. Rules SE 45. Scripting SE 46. open-esb.dev.java.net/Components.html 47. App Server App Server IDE Web Server BPEL Editor Java EE SE JBI Bus XSLT SE HTTP BC FTP BC FTP BC Many More SEs FTP BC Many More BCs XSLT Editor Composite Application Project IEP Editor Composite Application Manager Runtime BPEL SE Java EE EJBs Servlets Java EE SE JBI Bus XSLT SE HTTP BC FTP BC FTP BC Many More SEs FTP BC Many More BCs BPEL SE Java EE EJBs Servlets Design-Time Management 3 rdParty Service Platforms 3 rdParty Service Platforms Open Standard BasedService Bus WS-Reliable Messaging WS-Security WS-FastInfoSet, Many More Editors Many More Editors IEP Monitor BPEL Monitor XSLT Monitor Many More Editors Many More Monitors 48. OpenESB, GlassfishESB and JavaCAPS
49. Both stable and incubator components GlassfishESB
50. StableComponents 51. Deployed inGlassfish 52. Supported by Sun
53. Master Data Management Components (Project Mural) 54. JavaCAPS 5.x runtime 55. Additional Admin
56. GlassFish ESB
57. GlassFish admin console supports JBI 58. Java EE Service EngineJBI 59. Java EE (ear/war/jar)JBI composite application 60. JBI part of Glassfishclusteringarchitecture 61. Wide Array of Engines and Bindings
JBI in Glassfish Admin Console Pluggable enginesfor Eventing, Workflow, Business Processes,Transformation,Java EEplatform services... Pluggable bindingsfor legacy systems,web services... 62. Types of SOA NetBeans Projects 63. Types of SOA NetBeans Projects composite application typically uses the following types of SOA NetBeans projects:
65. SQL Module project 66. Composite Application project 67. IEP Module project 68. Worklist Module project 69. ETL (Extract, Transform, and Load) 70. EDM (Enterprise Data Mashup) 71. And more 72.
Loan Approval Service Example http://wiki.open-esb.java.net/Wiki.jsp?page=OpenESBIntroductionTutorial http://www.netbeans.org/kb/61/soa/homeloanprocessing.html 73. Loan Requestor Service:
LoanProcessor
TransformReport
LoanReportStore
LoanReportMailer
Example 74. NMR BPEL XSLT JavaEE WS-I BP JMS File JBI-based Infrastructure 75. NMR Loan Request Process Transform Report Loan Processor EJB LoanRS WS ReportMail ReportStore BPEL XSLT JavaEE File JMS WS-I BP JBI-based Infrastructure Client Business Partner thru FTP Legacy thru JMS 76. NMR Loan Request Process Transform Report Loan Processor EJB LoanRS WS ReportMail ReportStore BPEL XSLT JavaEE File JMS WS-I BP 77. Creating the Loan ApprovalService:1) Define the Client Interface http://www.netbeans.org/kb/61/soa/homeloanprocessing.html 78. NMR Loan Request Process Transform Report Loan Processor EJB LoanRS WS ReportMail ReportStore BPEL XSLT JavaEE File JMS WS-I BP JBI-based Infrastructure Client Example WSDL 79. WSDL ElementsAbstract Definition Protocol, Encoding, Location Definition 80. Loan Example: Message < messagename=" applyForLoanRequest "> < / message >
81. Netbeans XML Schema Loan Example: Message 82. Loan Example: port type and Operations < portTypename=" loanProcessWSDLPortType "> < operationname=" applyForLoanWSDLOperation ">
Port type
83. Netbeans WSDL Netbeans WSDL 84. Example: Binding, Port, Service < bindingname="loanBinding" type="ns:loanProcessWSDLPortType"> < soap:bindingstyle=" document "transport ="http://schemas.xmlsoap.org/ soap/http "/> < servicename="loanService"> < portname="loanPort" binding="tns:loanBinding"> protocol andencoding set of related ports Endpoint address 85.
Creating the Loan ApprovalService:2) Define the BPEL Process 86. BPEL Orchestrating Process (BPEL) Partner Service Partner Service Partner Service Client Partner Service WSDL Web services are described in WSDL orchestrated interactionbetweenWeb services 87. Business Process Needs...
88. Correlatemessage exchanges 89. parallelprocessing 90. compensationlogic (Undo operations)
91. exception handling 92. data modelfor message exchange 93. BPEL 2.0 Service Engine
94. Supports long running business processes
95. multiple-thread execution 96. debugging of business processes 97. reliable recovery 98. load balancing
99. BPEL Document Structure < process> ...... ... ... ... ... (activities)* 100. BPEL: Basic Activities
101. Can be the startof the business process
Business process flow 102. BPEL: Structured Activities
Business process flow 103. NMR Loan Request Process Loan Processor EJB LoanRS WS BPEL JavaEE WS-I BP JBI-based Infrastructure Client Example BPEL 104. Example Business Process Invoke Reply Receive 105. Sample Activities in BPEL < assignname="setProcessorInput"> < assign/ > < assignname="setProcessorOutput"> < assign/ > 106. LoanRequestProcess BPELLoanProcessor EJB Web Service WSDL WSDL < assign / > < assign / > 107. BPEL Module Project
108. WSDL files 109. BPEL files added to a Composite application as a JBI module 110. Java EE With JBI Creating the Loan ApprovalService: EJB Service 111. Java Business Integration (JSR 208) Normalized Message Router Application Server Java EE Platform
112. expose EJB/Web applications to multiple transportsJava EE With JBI Installation Deployment Control Monitoring BPEL Engine XSLT Engine IEP Engine FTP Binding HTTP Binding Java EE Engine JSP JavaServer Faces EJB Servlet
113. Java EE call JBI 114. Scenario 1: Remote through HTTP BC HTTP EE Container HTTP RMI
116. JAX-WS 117. JAXB Unmarshal xml 118. WS.helloWorld(name)
119. HTTP BC 120. Marshall xml 121. SOAP/HTTP 122. Network layer JBI Container N M R BPEL SE BPEL process EE SE SAP BC HTTP BC HL7 BC HTTP HL7 RMI WSDL WSDL WSDL WSDL BPEL process WSDL ejb.jar WSDL application.ear WSDL 123. Scenario 2: Local through NMR
124. HTTP BC 125. Marshall xml 126. SOAP/HTTP 127. Network layer 128. SOAP/HTTP 129. JAXWS
WS.helloWorld(name) Advantages :
131. Security context propagation JBI Container N M R BPEL SE BPEL process EE SE SAP BC HTTP BC HL7 BC HTTP HL7 RMI WSDL WSDL WSDL WSDL BPEL process WSDL ejb.jar WSDL application.ear WSDL 132.
Creating the Loan ApprovalService:3) EJB Service 133. LoanRequestProcess BPELLoanProcessor EJB Web Service WSDL WSDL 134. 135.
Creating the Loan ApprovalService:4) Composing the Service http://www.javapassion.com/webservices/#Building_Composite_Apps 136. Composite Application Project
Configureexternalaccessprotocols
BuildJBI deploymentpackage 137. Deploythe application to the JBI server 138. Build andrun JUnittests 139. Monitorthe status of JBI application 140.
Configureexternal access protocols (
Netbeans Composite Application 141. Netbeans Composite Application
142. Loan Composite Application Deployed on Glassfish
143. Build and run JUnit tests 144. Intelligent Event Processor 145. Intelligent Event Processor SE
Ability to listen for events:
147. Monitor Business Activity
Business Dashboards Monitor Business Process Instances Inventory Management System Alerts & Exception Managemen t Production Management System BPM EDA Back-end Systems Event Processors Dashboards SOA BPM Clients, Trading Partners, Suppliers 148. Business Service Correlation
149. Track events by user - User Behavior Automatic response
Swiss Nordea Bank Imposter Legit User Authenticate Wire Transfer Change Pwd Balance Check 150. Event-aware Business Services
Insurance Claims Management Process ReportAccident Happy Customer Negotiate Interview Interview Quote Quote $$ Negotiate $$ 151. Event Processing
Filter Join 4 2 1 3 1 3 2 4 A4 A3 A2 A1 B4 B4 B2 B1 AB4 AB1 AB2 AB3 153. Intelligent Event Processor Real-time event trend detection & proactive management Example: Target offerings to customer behavior ... online, walk-in, call center 154. Netbeans Project 155. http://www.javapassion.com/soaprogramming/index.html Online SOA class: IEP Application that Captures Incoming Stock Data Stream 156. Future Work 157. Project Fuji
158. Lightweight OSGi based JBI compliant micro-kernel
Flexible and simple tools 159. Service Composition simplified
https://fuji.dev.java.net/ 160. Project FujiBasis for GlassFish ESB v3 https://fuji.dev.java.net/ 161. Simplify Service Composition
163. Summary
164. JBI = pluggable framework:
165. Java EE can be Service components in JBI 166. BPEL =service orchestration OpenESB = implementation of JBI 167. Glassfish ESB = Glassfish + OpenESB 168. More Info..
169. http://open-esb.org 170. http://fuji.dev.java.net 171. http://glassfish.dev.java.net 172. http://netbeans.org