Dieser Inhalt ist in der von Ihnen ausgewählten Sprache nicht verfügbar.
ESB Tools Reference Guide
This guide is for developers
Edition 5.3.1
Abstract
Preface
Chapter 1. Preface Link kopierenLink in die Zwischenablage kopiert!
1.1. Business Integration Link kopierenLink in die Zwischenablage kopiert!
1.2. What is a Service-Oriented Architecture? Link kopierenLink in die Zwischenablage kopiert!
A Service Oriented Architecture (SOA) is not a single program or technology. Think of it, rather, as a software design paradigm.
Note
1.3. Key Points of a Service-Oriented Architecture Link kopierenLink in die Zwischenablage kopiert!
- the messages being exchanged
- the agents that act as service requesters and providers
- the shared transport mechanisms that allow the messages to flow back and forth.
1.4. What is the JBoss Enterprise SOA Platform? Link kopierenLink in die Zwischenablage kopiert!
1.5. The Service-Oriented Architecture Paradigm Link kopierenLink in die Zwischenablage kopiert!
- Service Provider
- A service provider allows access to services, creates a description of a service and publishes it to the service broker.
- Service Requester
- A service requester is responsible for discovering a service by searching through the service descriptions given by the service broker. A requester is also responsible for binding to services provided by the service provider.
- Service Broker
- A service broker hosts a registry of service descriptions. It is responsible for linking a requester to a service provider.
1.6. Core and Components Link kopierenLink in die Zwischenablage kopiert!
1.7. Components of the JBoss Enterprise SOA Platform Link kopierenLink in die Zwischenablage kopiert!
- A full Java EE-compliant application server (the JBoss Enterprise Application Platform)
- an enterprise service bus (JBoss ESB)
- a business process management system (jBPM)
- a business rules engine (JBoss Rules)
- support for the optional JBoss Enterprise Data Services (EDS) product.
1.8. JBoss Enterprise SOA Platform Features Link kopierenLink in die Zwischenablage kopiert!
- The JBoss Enterprise Service Bus (ESB)
- The ESB sends messages between services and transforms them so that they can be processed by different types of systems.
- Business Process Execution Language (BPEL)
- You can use web services to orchestrate business rules using this language. It is included with SOA for the simple execution of business process instructions.
- Java Universal Description, Discovery and Integration (jUDDI)
- This is the default service registry in SOA. It is where all the information pertaining to services on the ESB are stored.
- Smooks
- This transformation engine can be used in conjunction with SOA to process messages. It can also be used to split messages and send them to the correct destination.
- JBoss Rules
- This is the rules engine that is packaged with SOA. It can infer data from the messages it receives to determine which actions need to be performed.
1.9. Features of the JBoss Enterprise SOA Platform's JBossESB Component Link kopierenLink in die Zwischenablage kopiert!
- Multiple transports and protocols
- A listener-action model (so that you can loosely-couple services together)
- Content-based routing (through the JBoss Rules engine, XPath, Regex and Smooks)
- Integration with the JBoss Business Process Manager (jBPM) in order to provide service orchestration functionality
- Integration with JBoss Rules in order to provide business rules development functionality.
- Integration with a BPEL engine.
- Be configured to work with a wide variety of transport mechanisms (such as e-mail and JMS),
- Be used as a general-purpose object repository,
- Allow you to implement pluggable data transformation mechanisms,
- Support logging of interactions.
Important
org.jboss.internal.soa.esb and org.jboss.soa.esb. Use the contents of the org.jboss.internal.soa.esb package sparingly because they are subject to change without notice. By contrast, everything within the org.jboss.soa.esb package is covered by Red Hat's deprecation policy.
1.10. Task Management Link kopierenLink in die Zwischenablage kopiert!
1.11. Integration Use Case Link kopierenLink in die Zwischenablage kopiert!
1.12. Utilising the JBoss Enterprise SOA Platform in a Business Environment Link kopierenLink in die Zwischenablage kopiert!
Chapter 2. Introduction Link kopierenLink in die Zwischenablage kopiert!
2.1. Intended Audience of the ESB Tools Reference Guide Link kopierenLink in die Zwischenablage kopiert!
This book is aimed at developers who wish to learn about performing tasks and using features in the JBoss Enterprise Service Bus.
2.2. Aim of the ESB Tools Reference Guide Link kopierenLink in die Zwischenablage kopiert!
2.3. Back Up Your Data Link kopierenLink in die Zwischenablage kopiert!
Warning
Chapter 3. Tasks Link kopierenLink in die Zwischenablage kopiert!
3.1. Using and Configuring the SOA Platform Link kopierenLink in die Zwischenablage kopiert!
- To configure the JBoss Enterprise SOA Platform, select → → → . This will open the Server Runtime Environments page where you can add, remove and edit a server runtime environment.
- Select and choose → as a type of runtime environment, then check the
Create a new local serverbox and clickNext. - On the next step you can specify a name of the server runtime environment and browse to its location. Click
Finishto add the server runtime environment. - You have now configured the SOA Platform. Check the configuration by creating and running an ESB project.
3.2. Installing JBoss SOA Tooling Plug-in Link kopierenLink in die Zwischenablage kopiert!
Procedure 3.1. Task
- Start the JBoss Developer studio.
- Select Get started with JBoss Central from the main menu.
- Select Software/Update from the menu.
- Select SOA Tooling Plug-in and click Install
- Confirm that the installation details are correct and click Next and then Next again.
- Read and accept the liscence agreement and click Finished.
- Restart the JBoss Developer Studio to complete the installation.
3.3. Configuring a new ESB Runtime Link kopierenLink in die Zwischenablage kopiert!
- Click → → → to open the JBoss ESB Runtimes page where you can add, remove and edit a JBoss ESB runtime.
Figure 3.1. Runtimes
- Select
Addto open a dialog box where you can specify the JBoss ESB runtime location, name and version number. You can define the configuration if you specify the home directory as JBoss AS or SOA-P. If you select a standalone ESB runtime location, the configuration will be empty and can be ignored. You can also customize the libraries of the runtime by checking the Customize JBoss ESB Runtime jars box. - The new JBoss ESB Runtime will be configured. Click to finish and save the preferences. You can use the configuration when creating a JBoss ESB project.
- When an ESB runtime is configured for your project, you are able to modify it by using the Classpath Container page for ESB runtime. To do so, go to the Package Explorer view and right-click on "JBoss ESB Runtime" library.
- Select
Propertiesand a table listing all available JBoss ESB runtimes will appear. - Choose one of the runtimes to set to the ESB project and click .
- The ESB container allows Source and JavaDoc locations to be set via the Properties dialog on each contained JAR. Right-click on any JAR file and select .
- Choose Java Source Attachment and select the location (folder, JAR or zip) containing new source for the chosen JAR file. You can do this using one of the suggested options (workspace, external folder or file). You can also enter the path manually.
- Click on
Applyand then on . - To change the Javadoc location, choose Javadoc Location and specify URL to the documentation generated by Javadoc. The Javadoc location will contain a file called package-list.
- Click on and then on .
3.4. Creating an ESB Project Link kopierenLink in die Zwischenablage kopiert!
- Open the JBoss ESB Project Creation wizard by selecting → → in the main menu bar. (Ensure that you have defined the server runtime and ESB runtime in JBDS.)
- Select → in the dialog box.
- Clicking brings you to the JBoss ESB Project wizard page where a project name, ESB version and target JBoss Runtime are to be specified. Specify, for example, helloworld as a project name and accept the default JBoss ESB version.
- Click the button to move to the next step in the wizard, where you can select the source and output folders.
- Click the button to view the Install ESB Facet wizard page where you can view the ESB Content Directory. This folder contains most the of artifacts that an ESB archive needs.
- You can configure ESB libraries to the project by using the Server Supplied ESB Runtime. Make sure the project has the target runtime set and this runtime has an ESB runtime installed.
Note
If you are using JBoss SOA Platform 5.3 or higher, select ESB config version 1.3.1. - Click the button and an ESB project with the default
jboss-esb.xmlfile will be created.
3.5. Using ESB Project Examples Link kopierenLink in die Zwischenablage kopiert!
- Before creating an ESB project example, create a JBoss SOA-P runtime.
Note
Creating ESB project examples is useful for observing how your finished project will behave. - Select → → in the main menu bar and then click → → in the new dialog.
- Clicking the button brings you to the wizard page where you can select an ESB project example from the list.
- Every ESB example has two projects. One is an ESB project and the other is a Java project used to test the ESB project. Below is a list of ready-to-go examples. Each example includes an ESB application that is deployed to the SOA-P server, and a test client that is run as a Java application and interacts with the deployed ESB application:
- JBoss ESB HelloWorld Example - demonstrates the minimal files necessary to make a basic ESB component execute as well as to prove that the ESB runtime is properly configured.
- JBoss ESB HelloWorld Action Example - demonstrates the use of multiple action invocations from a single configuration. You can use a single Action class and make multiple method calls or use multiple Action classes.
- JBoss ESB HelloWorld File Action Example - demonstrates using the File gateway feature of the JBoss ESB. Files that are found in a particular directory with a particular extension are sent to a JMS queue with actions for processing.
- JBoss ESB Web Service consumer1 Example - demonstrates how to consume a JSR181 Web Service in an ESB action.
- JBoss ESB Web Service producer Example - demonstrates how to deploy a JSR181 Webservice endpoint on JBossESB using the SOAPProcessor action.
- JBoss ESB Smooks CSV -> XML Example - demonstrates how to transform a comma separated value (CSV) file to an XML.
- JBoss ESB Smooks XML -> POJO Example - demonstrates the use of Smooks performing a simple transformation by converting an XML file into Java POJOs.
- JBoss ESB Smooks XML -> XML date-manipulation Example - demonstrates how to manually define and apply a Message Transformation within JBoss ESB.
- JBoss ESB Smooks XML -> XML Example - a very basic example of how to manually define and apply a Message Transformation within JBoss ESB. It applies a very simple XSLT to a SampleOrder.xml message and prints the before and after XML to the console.
- Select the relevant ESB project example and then click the button. The ESB application project and the test client project will be created.
Figure 3.2. HelloWorld example
- Deploy your ESB project and run a test class as a local Java application to see the test result in the Console view.
3.6. Adding ESB Projects to the JBoss Server Module List Link kopierenLink in die Zwischenablage kopiert!
- Before deploying an ESB project, open the Servers view by selecting → → → → .
- Create a JBoss server with an ESB runtime installed in the Servers view and start it.
- Right-click on the new JBoss server, select Add and Remove Projects and add the ESB projects you want to deploy in the open dialog.
- Click the button to add the project to the server. You also can drag the ESB project from the Project Explorer view to the server.
3.7. Deploying an ESB Project Link kopierenLink in die Zwischenablage kopiert!
- After adding the ESB project to the JBoss server module list, right-click the JBoss Server and select to publish the project on the server. You can check the deploying result in the Console view.
- The and options work on ESB projects causing a (re)deploy for a user designated server.You can also click the "Finger touch" button for a quick restart of the project without restarting the server.
Exporting
Additionally, you can deploy your ESB project as an .esb archive. Right-click on the project and choose .Choose → and click .Export the ESB project to the file system. Choose the destination and target runtime, then make the appropriate settings for the archive. Finally, click- Your project is now deployed as an .esb archive.
3.8. Creating an ESB File Link kopierenLink in die Zwischenablage kopiert!
- Open a project that has the ESB facet enabled. Select → → in the main menu bar or context menu for your selected project, then click → in the new dialog
- Clicking the button brings you to the wizard page where a folder, name and version should be specified. For example, choose jboss-esb.xml as the name and accept the selected projects folder and the default version.
Note
For SOA-P version 5.3 your ESB version is 4.11 and the ESB file schema version is 1.3.1. Older ESB file schema versions are also supported if you are using an older SOA-P server release. - Your file will be created in the selected project's folder by default. If you want to change the folder it is saved in, click and select another destination.
- Click to generate the file.
3.9. Creating an ESB Action Link kopierenLink in die Zwischenablage kopiert!
- Open an ESB or Java project.
- Select → → in the main menu or from the context project menu. Then click → in the new dialog.
- Click and you will be brought to the New ESB Action wizard where the class name should be specified. You can also set a package or add an interface.
- JBoss ESB 4.9 introduced a new set of Action Annotations. The new set of Action Annotations help make it easier to create clean ESB Action implementations by hiding the complexities of implementing interfaces and abstract classes, as well as dealing with the ConfigTree type. If you wish use these annotations, check the type As annotated POJO. Otherwise check the type As AbstractActionPipelineProcessor implementation.The Annotations are:
- @Process
- @ConfigProperty
- @Initialize
- @Destroy
- @BodyParam
- @PropertyParam
- @AttachmentParam
- @OnSucess
- @OnException
- Click on to generate the ESB Action class. This class will become available in ESB Editor wizards.
Chapter 4. Reference Link kopierenLink in die Zwischenablage kopiert!
4.1. The JBoss ESB Editor Link kopierenLink in die Zwischenablage kopiert!
- The JBoss ESB editor has two views: Tree and Source. You can easily switch from the Tree view to the Source view by selecting the tab at the bottom of the editor and work in Source view, and vice-versa.
Figure 4.1. Source view
- Both views have full integration with the Outline view. The Outline view shows a tree structure of the ESB file. Select any element in the Outline view and it will jump to the same place in the Tree/Source editor, so you can navigate through the source code with Outline view.
- Both views are synchronized with each other, so any changes made in one of the views will immediately appear in the other.
- The Tree view for the editor displays all ESB artifacts in a tree format. By selecting any node you can view and edit its properties which will appear on the right. Some properties are represented as links to the associated editors.
Figure 4.2. Tree view
- When editing ESB actions which refer to other files (Drools, Groovy, Smooks, etc.), the label for the field turns into a link to launch the appropriate editor for that file.
- Adding, editing or deleting of some artifacts operations are available right in the Tree view. Right-click any node and select one of the available actions in the context menu.
- You can add Channels and Properties for the Providers the same way or using the forms with Add, Edit and Remove buttons to the right.
- Additionally, you can add a Service and a new listener for it. Filters can also be added this way.
4.2. Adding a New Custom Action in JBoss ESB Editor Link kopierenLink in die Zwischenablage kopiert!
- To add a new custom Action to your ESB XML file, go to the Tree view in the JBoss ESB Editor.
- Select the node under the node, then right-click and choose → .Alternatively, click the button in the editor on the left.
- You will see the ESB Action wizard. Specify a name and a Java class. Optionally, you can specify a process for the Action.
- After creating the Action you can see it in the Tree view under the node. You can preview and edit its settings in the Form editor on the left.
4.3. Content Assist for ESB XML Files Link kopierenLink in die Zwischenablage kopiert!
Figure 4.3. Content Assist for ESB XML file
4.4. OpenOn for ESB XML Link kopierenLink in die Zwischenablage kopiert!
Ctrl key down to view it.
Figure 4.4. OpenOn
.xsd .xml, and so on.
Chapter 5. Summary Link kopierenLink in die Zwischenablage kopiert!
5.1. Summary of ESB Tools and Additional Resources Link kopierenLink in die Zwischenablage kopiert!
Appendix A. Revision History Link kopierenLink in die Zwischenablage kopiert!
| Revision History | |||
|---|---|---|---|
| Revision 5.3.1-111.400 | 2013-10-31 | ||
| |||
| Revision 5.3.1-111 | Wed Feb 20 2013 | ||
| |||