Some questions on ESB and BPEL usage
andi.scharfstein Dec 5, 2012 9:07 AMAs a software engineer without substantial integration experiences, I'm currently having a hard time wrapping my head around the bird's eye view of how my target architecture is supposed to look like in a real-world setting. I would be very grateful if somebody could check my current thinking on this and provide some input.
My goal is to get a prototypical usage scenario up and running so I have touched all the components at least once. The scenario itself is somewhat simple: I want to model a business process where a few services are chained in a sequence to establish some metadata on a file, do some transformation on that data and lastly store file and metadata in an internal database.
I am currently under the impression that this business process should be coordinated using BPEL. Is that correct, or would another technology be better suited to that kind of problem?
Working from the premise that BPEL would the correct tool to use, I am faced with the problem of how to interface with the web services. If I were to use a standalone BPEL engine, I could enter those as partner links and talk directly to the services. Obviously that's not the way to go, instead I want to have SwitchYard handle the messaging. So how do the BPEL engine (the embedded RiftSaw in this particular case) and the ESB runtime communicate?
Perusing the documentation, the examples given there and with the quickstarts seem to indicate that you have to invoke those services again by going through partner links. However, I am unclear on the precise definition of these links. Am I supposed to address the remote services as I would in the standalone BPEL case, or can I only enter services provided by SwitchYard if I want to get the ESB runtime involved? If it's the latter, am I correct in thinking that I would have to mirror in my ESB configuration the public API of the services I want to consume from the BPEL process? If it's the former, in what way are the messages routed through the SwitchYard ESB, i.e. where do I configure the exact way to access the web services?
Sorry for these newbie questions, I have tried long and hard to get them answered by looking at the documentation and previous forum posts, but have not been able to turn up something useful. Thanks in advance for any and all answers!