OpenEngSB Manual

Version 2.4.5

Open Engineering Service Bus Development Team and Contributors


I. Introduction
1. How to read the Manual
2. What is the Open Engineering Service Bus
3. When to use the OpenEngSB
3.1. The OpenEngSB as Base Environment
3.2. Reusing integration Components and Workflows
3.3. Management Environment
3.4. Simple Development and Distribution Management
3.5. Simple Plug-Ins and Extensions
II. OpenEngSB Framework
4. Quickstart
4.1. Writing new projects using the OpenEngSB
4.2. Writing Domains for the OpenEngSB
4.3. Writing Connectors for the OpenEngSB
5. Architecture of the OpenEngSB
5.1. OpenEngSB Enterprise Service Bus (ESB)
5.2. OpenEngSB Infrastructure
5.3. OpenEngSB Components
5.4. OpenEngSB Tool Domains
5.5. Client Tools (Service Consumer)
5.6. Domain Tools (Service Provider)
5.7. Domain- and Client Tool Connectors
6. Semantics in the OpenEngSB
6.1. Domain Models
6.2. Load Domain Models
6.3. Model Transformation
7. Context Management
7.1. Wiring services
8. Persistence in the OpenEngSB
8.1. Core Persistence
8.2. Configuration Persistence
8.2.1. Context configuration persistence
9. Security in the OpenEngSB
9.1. Usermanagement
9.2. Access control
9.3. Authentication
10. Workflows
10.1. Workflow service
10.2. Rulemanager
10.3. Processes
11. Taskbox
11.1. Core Functionality
11.2. UI Functionality
12. Remoting
12.1. Filters
12.2. Configure a filterchain
12.3. Develop custom filters
12.4. Develop an incoming port
12.5. Develop an Outgoing port
13. External Domains and Connectors
13.1. Proxying
13.1.1. Proxying internal Connector calls
14. Deployer services
14.1. Connector configuration
14.1.1. Root services
14.2. Context configuration
15. Client Projects and Embedding The OpenEngSB
15.1. Using the same dependencies as the OPENENGSB
16. OpenEngSB Platform
17. HowTo - Setup OpenEngSB for development (First steps)
17.1. Goal
17.2. Time to Complete
17.3. Prerequisites
17.4. Java Development Kit 6
17.5. Getting OpenEngSB
17.6. Installing OpenEngSB
17.7. Setup required domains
17.8. First Steps
17.9. Shutdown OpenEngSB
18. HowTo - First steps with the OpenEngSB (Send mails via the OpenEngSB)
18.1. Goal
18.2. Time to Complete
18.3. Prerequisites
18.4. Creating E-Mail Services
18.5. Executing Service Actions Directly
18.6. Executing Service Actions via Domains
18.7. Next Steps
19. HowTo - Events with the OpenEngSB (Using the logging service)
19.1. Goal
19.2. Time to Complete
19.3. Prerequisites
19.4. Create required connectors
19.5. Configure
19.6. Creating a rule
19.7. Throw Event
19.8. Next Steps
20. HowTo - Create a Client-Project for the OpenEngSB
20.1. Goal
20.2. Time to Complete
20.3. Step 1 - Needed tools
20.3.1. Java Development Kit 6
20.3.2. Maven 3
20.4. Step 2 - Using the archetype
20.5. Step 3 - The result
20.6. Step 4 - Install features
20.7. Step 5 - Start the Client-Project
20.8. Step 6 - Shutdown
21. HowTo - Interact with the OPENENGSB Remotely
21.1. Using JMS proxying
21.1.1. Proxying internal Connector calls
21.1.1.1. HowTo call an external service via proxies
21.1.2. Calling internal Services
21.1.3. Examples
21.1.3.1. Connect With Python
21.1.3.2. Connect With CSharp
21.1.3.3. Connect With Perl
21.1.4. Alternatives for JMS
21.2. Using WS Proxing
21.3. Internal Specialities
22. HowTo - Combine multiple connectors
22.1. Composite strategies
22.2. Create a composite connector
23. How to define a domain model
23.1. Goal
23.2. Time to complete
23.3. Prerequisites
23.4. Step 1 - Plan the structure of the model
23.5. Step 2 - Write the model
23.6. Step 3 - Add the model to a domain
23.7. Step 4 - Use the model
24. HowTo - Integrate services with OpenEngSB
24.1. Goal
24.2. Time to Complete
24.3. Prerequisites
24.4. Setting up OpenEngSB
24.5. Step 1 - Source repository
24.6. Step 2 - Building the source code
24.7. Step 3 - Testing binaries
24.8. Step 4 - Notification Process
24.9. Further Reading
25. HowTo - Change EDB database back end
25.1. Goal
25.2. Time to Complete
25.3. Use JPA compatible database
25.4. Use non JPA compatible database
25.5. Appendix: Use no OSGi compatible database
26. HowTo - Test Remote Messaging using Hermes JMS
26.1. Preparation
26.1.1. Preparing the Server
26.1.2. Setup Hermes
26.2. Send and Receive Messages
III. Administration Console
27. OpenEngSB console commands
27.1. Start the console
27.2. Available commands
IV. Administration User Interface
28. Testclient
28.1. Managing global variables
28.2. Managing imports
29. Wiring
29.1. Wire a global variable with a service
29.2. What wiring does in the background
V. OpenEngSB Contributor Detail Informations
30. Prepare and use Non-OSGi Artifacts
30.1. Create Wrapped Artifacts
30.2. Tips and Tricks
31. OpenEngSBModels
31.1. Motivation
31.2. Structure of a model
31.3. Supported field types
31.4. Model Ids
32. Engineering Database - EDB
32.1. Motivation
32.2. Structure
32.3. Usage
32.4. Conflict Detection
33. Engineering Knowledge Base - EKB
33.1. Motivation
33.2. Query Service
34. How To Create an Internal Connector
34.1. Prerequisites
34.2. Creating a new connector project
34.2.1. Using the Maven Archetype
34.2.2. Using mvn openengsb:genConnector
34.3. Project Structure
34.4. Integrating the Connector into the OpenEngSB environment
35. How To Create an Internal Domain
35.1. Prerequisites
35.2. Creating a new domain project
35.2.1. Using the Maven Archetype
35.2.2. Using mvn openengsb:genDomain
35.2.3. Project structure
35.3. Components
35.4. Connectors
36. HowTo - Extend OpenEngSB Console
36.1. Goal
36.2. Time to Complete
36.3. Prerequisites
36.4. Start the console
36.5. Adding new commands
37. HowTo - Create a connector for an already existing domain for the OpenEngSB
37.1. Goal
37.2. Time to Complete
37.3. Prerequisites
37.4. Step 1 - Use the archetype
37.5. Step 2 - Add the dependencies
37.6. Step 3 - Configure the connector
37.7. Step 4 - Implement the connector
37.8. Step 5 - Blueprint Setup and Internationalization
37.9. Step 6 - Start the OpenEngSB with your Connector
37.10. Step 7 - Test the new connector
38. How to add new field support for domain models
38.1. Goal
38.2. Time to complete
38.3. Prerequisites
38.4. Subtask 1 - Add model support
38.4.1. Create new converter step
38.4.2. Add converter step
38.5. Subtask 2 - Add EDB support
38.5.1. Extend EDB
38.5.2. Extend EKB