Chapter 6. Switchyard Project
- a switchyard.xml file in the project's META-INF folder
- one or more SwitchYard runtime dependencies declared in the pom.xml file
- org.switchyard:switchyard-plugin Maven Old Java Object (MOJO) configured in the pom.xml file
6.1. Creating a New SwitchYard Project
pom.xmlfile declaring SwitchYard runtime dependencies and configuration for the switchyard-plugin MOJO
- a folder hierarchy for the specified Java package
Procedure 6.1. Create a New SwitchYard Project
- Click→ → to start the New Project wizard. Click → and then click .
- Enter the name and location for the new project and then click.
- Provide other details for the project.The library version can be specified directly using the Library Version field or indirectly by selecting a Target Runtime. Selecting a target runtime sets the library version to match the version provided by the target runtime.
NoteIt is not necessary to select any components when creating the project. The tooling automatically configures components on the project as necessary.
- Clickto create the new project.
switchyard.xmlfile for the newly created SwitchYard project after the wizard finishes.
6.2. Importing Existing Maven Project
Procedure 6.2. Import a Maven Project
- Click→ to import the existing project. Click → and then click .
- Clickand navigate to the directory where the project's
pom.xmlis located. Click .
pom.xmlfile for the existing project is displayed in the Projects section. Click the check box to select the desired POM file.
- Clickto start the importing process.
switchyard.xmlfile for newly created SwitchYard project after the wizard finishes.
6.3. Adding SwitchYard Capabilities to Existing Projects
Procedure 6.3. Add SwitchYard Capabilities to Existing Project
- Right-click the project and click→ to add (or modify) SwitchYard capabilities.
- The SwitchYard Settings dialog is displayed. Modify the settings as required. Click to update the configuration.Changes are reflected in the
6.4. Editing SwitchYard Projects
6.4.1. Editing the SwitchYard Configuration File
switchyard.xmlfile, by default it opens with the SwitchYard Visual Multipage Editor.
- This is the primary graphical interface for building your SwitchYard application. From here you can interact with and configure each of the application's entities, and add new entities from the Palette. The visual design is automatically converted into XML which you can view from the Source tab.
- In this tab you can set additional configuration such as Domain Properties and Security Configurations. You can also enable message tracing from here.
- From the Source tab you can see the source XML which is generated automatically from the entities configured in the Design tab.
NoteUsers cannot modify the
switchyard.xmlfile directly from the Source tab.
- Q: Why should I use the graphical editor?
- Q: How can I modify the switchyard.xml file directly within JBoss Developer Studio?
- The editor automatically manages dependencies for a project. For example, when you add a new binding or implementation to a composite, the editor adds the necessary info to
switchyard.xmland the necessary Maven dependencies to the
pom.xml. If you forget to update the
pom.xml, the project fails to build (validate).
- The editor automatically manages namespaces based on the features being used and the configuration level of the project.
- The editor provides syntax and semantic validation, such as missing transformations and unused references.
switchyard.xmlfile directly within JBoss Developer Studio?
- Navigate to the
src/main/resources/META-INF/switchyard.xmlfile in the Project Explorer window.
- Right-click on the file and select→ .
- Close the
switchyard.xmlfile (as presented by the SwitchYard Visual Multipage Editor) before opening it with the XML Editor to avoid synchronization issues.
- After completing your source edits, close the file and synchronize the model for the visual editor: right-click on the project in the Project Explorer, then select → .
switchyard.xmlfile. If the editor does not suit your needs, please consider submitting a request for enhancement.