I have a couple of general questions about JBoss jBPM BPEL extension. I would appreciate some inputs, answers or discussions about them.
1. It is any way to view the current status of the BPEL-engine: what processes are deployed, which ones are currently active, what is the state of each individual process and so on? Some processes execution might take some time, it could be a couple of days or even more. Some processes might wait for an input from the external system or wait to repeat the failing invoke. Is it a way to get this information (like what is the current active node in the process) and possibly intervene. For instance, kill some process instance. Is it any GUI to perform such tasks. At least, is it possible to query database tables or retrieve this information from the BPEL-engine as collections of Java objects (to be independent from the database).
The other side of this question is: is it possible to debug the processes inside BPEL engine. It could be even commang line debugger like gdb but it would bring many benefits during the process development.
Are there any plans for the core BPEL development to implement some of such functionality or it would be too specific request?
2. I do not quite understand how to call external WEB Service (using invoke) that requires userid / password. I have an application that exposes its interface as WEB Service using SOAP transported by HTTP. I think that the application supports basic HTTP authentification. I just cannot understand where in the invoke or partner link definition (in BPEL itself or in jBPM BPEL extension) can I specify the user account information.
3. How can I process binary attachments in BPEL? WEB Serivce specification supports attachments but I do not fully understand where in BPEL process can I assign tha attachment sent by the process caller. Would it be mime (dime?) encoded string? Potentially, I would like to accept attachment in BPEL process and then send it as an attachement to the external application using invoke. So the string probably would not work here because I would need to pass it as a WEB Service attachment in invoke.
4. Currently org.jbpm.bpel.ant.ServiceGeneratorTask task denerates process external WSDL that is composed from sevaral parts: service.wsdl that ultimatelly imports all other parts, binding_xxx.wsdl and .wsdl. They all would be deployed into the JBoss server and could be accessed by clients. It is also possible to open this WSDL in a browser and see it with import statement inside.
The problem is that _some_ of the 3rd party GUI tools that work with WEB Services and visualise calling to web services and building the BPEL processes do not understand this import statement. I tried Eclipse Webtools WEB Service explorer, Stylus Studio 2006 WEB Service call wizard, Active BPEL designer and MS Visual Studio (I understand this it is not from the Java world but a-Web Services suppose to be platform agnostic and b-the first three are from Java world). No application understood this import. I tried to build this wsdl manually from the components as a one single file and redeploy it and all of the above-mentioned applications detected this web service correctly and allowed to drag and to their GUI work areas.
The question is whether it would be possible to have an option in this Service Generation task that will create a single file at least for the legacy tools that do not support the spec. I guess that having this import statement is allowed in the spec but it would be convinient some time to have the single wsdl file.