2 Replies Latest reply: May 27, 2009 12:21 AM by Jeff DeLong RSS

JBOSS ESB use cases

Jervis Liu Apprentice

Potentially SOA Repository can handle many different type of artifacts or services. But lets start from the most basic one: how SOA Repository can help us to manage JBOSS ESB services.

1) Search for existing service

At the moment, search&query is done in following ways:
1. Using the "name search" to search an esb archive according to its name. Wild card is supported.
2. Full text search: obviously we can not search into a zip file. So full text is not very useful here. But we can use full text search to search into a jboss-esb.xml file or other artifacts that are contained within the .esb archive.
3. Once the "Advanced search" (see Jira https://jira.jboss.org/jira/browse/GUVNOR-187) is added, users can search an esb archive according to its attribute name/value.
4. Once the "Advanced search" (see Jira https://jira.jboss.org/jira/browse/GUVNOR-187) is added, users can also search an esb archive according to its metadata name/value. Users can add a custom metadata to this esb service first.
5. At the moment we can only search the artifact itself. We will need the capability of searching through artifact's dependency. This will be useful in a scenario of for example "find a .esb archive whose WSDL's port name is myservice".

2) Add new service

At the moment, there are two ways to add a new JBOSS ESB service into repository:
1. Upload an existing .esb archive into repository: When we add .esb archive into the repository, we will do a metadata auto-discover process. For example, information like service category/action type etc can extracted from jboss-esb.xml and stored as metadata.
2. Create an empty service ("Add Generic Service") first. Then users can add various dependencies (eg, jboss-esb.xml config file, WSDL file, smooks file etc) to this service. However this use case is not useful until JBOSS ESB has an "assembly" feature - ideally a graphical editor that can assembly various components together to generate a .esb archive.

3) Edit existing service

At the moment, users can edit following attributes of an .esb service:
1. description
2. MetaData
3. LifeCycle
4. Dependency
5. Comments.

Any changes on #1 to #5 have no impact on the .esb archive itself.

Again, the implementation of a fully editable service depends on the availability the "JBOSS ESB assembler". Once this "JBOSS ESB assembler" is in place, users can edit dependencies such as config file, wsdl file then re-generate a new .esb archive.

4) Deploy service

You may have already noticed the "SOA Network" menu. The idea is that users can use this menu to add/manage servers, manage what services (and what versions) have been deployed into what servers, deploy service into server etc. However this is overlaped with JON. Jim Ma may have some further comments.

  • 1. Re: JBOSS ESB use cases
    Jim Ma Apprentice

     

    "jervisliu" wrote:

    4) Deploy service
    You may have already noticed the "SOA Network" menu. The idea is that users can use this menu to add/manage servers, manage what services (and what versions) have been deployed into what servers, deploy service into server etc. However this is overlaped with JON. Jim Ma may have some further comments.

    As I commented on the previous thread, how about we integrate SOA Repository with JON to do this job ? I also would like to know if we can implement all the SOA console functions based on JON. It will make us easier to do policy enforcement or other runtime things in the future .

  • 2. Re: JBOSS ESB use cases
    Jeff DeLong Master

    You mention in 2 and 3 the need for an JBOSSESB assembler. While such a feature would be handy, the service archive can still be created using JBoss Developer Studio, assuming there is a JBDS integration with the repository based on the Eclipse Guvnor tooling.