My current project involves the use of BPEL. I decided to work with Netbeans and the Glassfish v2 using openESB as it provides quite a good tool integration.
However, I do need to create projects and deploy about 32 BPEL Processes along with quite a few WSDL Web Service implementations.
What is the problem:
1. BPEL validation cannot be automated
I use a MDA approach to generate my BPEL code using Eclipse EMF and cannot automatically validate these files using Netbeans. The BPEL Validator cannot be called from outside Netbeans. I searched a lot, but I haven’t found anyone who could do this and many people said it is not possible.
What a pity …..
It can be done using ANT.
- Make sure ant is installed (by typing ant into the commandline)
- go into the directory and execute the following
- if you need more detailed information, use -verbose
By building the default target, the bpel processes are automatically validated.
2. BPEL Validation in Netbeans does only run fast if each BPEL file with its WSDLs and XSDs is in its own project.
Each BPEL file in own project: Validation Time: 5 seconds
Every BPEL File in same project: Validation Time for each BPEL File: 75 seconds
Time may vary as the size is not always the same, but you can get the dif-factor: 15 …
So, use small projects.
After some thought, the problem arises during the evaluation of the XPath expressions in the copy constructs.
Maybe it is possible to use absolute locations for the BPEL imports to reduce the time to validate, but this results in even more problems when copying and deploying on the glassfish ….