1 Reply Latest reply: Jul 21, 2011 9:41 AM by Gary Brown RSS

How to implement and to enact a web service choreography ?

Victoriano Alfonso Newbie

Hi Everybody,

How to implement and to enact a web service choreography ?

 

I know that a specification of services choreography isn't executable because only deals external behavior of partticipants from a global view point, but this specification can be mapped to BPEL and, by example, to generate stubs for implement processes internal (with BPEL). Even so, How to make sure a services choreography at execution of all (participants, interactions, ...) with Savara, JBossESB, etc.

 

How to implement and run (enact) a web services choreography from a choreography model?.

How to  implement the participants as a Orchestrations (with BPMN or BPEL) or as  Web services  SOAP or RESTful?

Can I implement a choreography, orchestration and service monitoring?. How Savara supports this ?

Finally, How  Savara supports  QoS and SLA  for  service, orchestration and choreography?


Thanks in advance
_______
Alfonso

  • 1. Re: How to implement and to enact a web service choreography ?
    Gary Brown Master

    Hi Alfonso

     

    Sorry for the delay in responding, I didn't get a notification of your posting for some reason.

     

     

    Victoriano Alfonso wrote:

    <snip>

    Even so, How to make sure a services choreography at execution of all (participants, interactions, ...) with Savara, JBossESB, etc.

     

    I believe you are asking how can we ensure that a choreography is being executed properly? If so, then the only way is to monitor the system and then validate that the interactions between the various components correctly match the expected behaviour as defined in the choreography.

     

    In savara 1 we had a basic mechanism for doing this with jbossesb and jbossws, but due to various issues, it never worked as well as it should have.

     

    For a number of reasons, we have done a significant refactoring of many components to start building Savara 2 from the ground up. The focus of the initial releases is more on the design time (Eclipse tooling) so doesn't provide any runtime monitoring capabilities. However new monitoring components have been developed (based on a protocol specification language called Scribble rather than WS-CDL), so will be agnostic to whether the choreography is defined using WS-CDL or BPMN2 choreographies. We are also working on a new activity monitoring mechanism with web based UI, which will hopefully start appearing in the near future. This will form the basis of runtime monitoring support that you are looking for.

     

    How to implement and run (enact) a web services choreography from a choreography model?.

    In the latest 2.0.0.M4 release, you can generate the BPEL processes and associated WSDL, XSD, deploy.xml descriptor etc. Once the implementation details have been added, they can then be deployed to the riftsaw BPEL engine, or any other WS-BPEL compliant engine.

     

    We have also added initial support for generating SCA Java based service implementations. These implementations can be simulated against the scenarios, to check the implementation is valid according to the business requirements defined in the scenarios.

     

    We have also added BPMN2 process generation. Initially these are mainly for design documentation purposes, but in future it is very likely that we will start to add more implementation details, so the processes could then be deployed into a BPMN2 execution engine (e.g. jBPM5).

     

    How to  implement the participants as a Orchestrations (with BPMN or BPEL) or as  Web services  SOAP or RESTful?

    Can I implement a choreography, orchestration and service monitoring?. How Savara supports this ?

    Hopefully my answers above cover this - if not let me know.

     

     

    Finally, How  Savara supports  QoS and SLA  for  service, orchestration and choreography?

    Currently it doesn't although essentially these are just annotations/polcies on to of a choreography that can then be used by the runtime monitor to determine whether other factors (not just behaviour) are correct. We will tackle these in the future, but the priority at the moment is to move more fully towards BPMN2 and provide the basic monitoring infrastructure.

     

    Hope this helps.

     

    Regards

    Gary