Addendum to the OpenESB Introduction Tutorial
By jason on Jul 23, 2008
The OpenESB Introduction Tutorial was created back in Jan 2008 and a few things have changed in the tooling since then. This entry shows a few changes I would now make to Part 2: Calling from BPEL to a JavaEE Service through the NMR.
The most important is that the EJB Service exposes its own SOAP endpoint even though I am calling it from the BPEL process. This was due to limitations in the tooling at the time concerning the relationship between JavaEE Service Units and EJBs that implement JAX-WS webservices. These limitations have now been fixed and JavaEE Service Units can now be created without this extra soap endpoint. See this article on the Grok JavaCAPS wiki for more information.
You can see at 5:17 the JavaEE Service Unit has its own SOAP Binding Component Service Unit
This happened because I included binding information in the WSDL of my EJB project back at 1:58, which was required by the tooling at the time. Now I would simply press Finish after creating the Abstract WSDL. The extra SOAP binding will now not be created. Alternatively I could simply disable that SOAP endpoint in the deploy options of my composite application project (see the grok article for details)
The next small change to make is when including the EJB project in the Composite Application Project. At 4:46 I do that by going through the filesystem to find the project. Now I would just drag the EJB project straight onto the CASA canvas and it is included.
Finally, when adding the WSDL for the EJB service to the BPEL project (at 6:03) I once again searched through the filesystem to locate the wsdl. It is now possible to simply drag the WSDL from the Project Explorer directly into the Partner Lane of the BPEL canvas. The tooling will automatically import the WSDL and related XSDs into the BPEL project.