1

I have downloaded the ODE WAR Distribution and deployed it inside my Java Webapp project.

When I need to deploy my BPEL process I just copy all the .bpel .wsdl deploy.xml etc in the WEB-INF/processes folder and it works.

I have the feeling this is not the proper way of doing things: There is a lot of bulk client side html and js I dont need. Besides I need to provide the functionality of the Manamgemet API I have to expose.

My guess is there must be some way of importing only the deployment Web Service and the Managment API and use them straight from Java.

How can this be achieved? What do I need to download and import?

EDIT: Are there any advantages of using the API to deploy a process in ODE instead of just copying the files straight into the process folder?

BenMorel
  • 34,448
  • 50
  • 182
  • 322
eskalera
  • 1,072
  • 2
  • 21
  • 36
  • I have some difficulties to fully understand your problem. What do you mean by "deployed it inside my Java Webapp project"? The WAR distribution is a standalone Webapp. If you plan to include in your own webapp, you need to build your own war and register the servlet. The html and js code is the management console that is part of the standalone war. The management APIs are also available as Web service, so you can use its WSDLs to create client code for it. – vanto Feb 16 '13 at 11:46
  • @vanto As you mentioned I included it in my own webapp and registered the servlet. It works but it is somewhat heavy so I wondered if there is a way of minimizing the code and add just a lighter library without the GUI for instance. Not sure if this makes much sense... – eskalera Feb 18 '13 at 08:39
  • Just don't include the HTML/JS/CSS/JSP stuff. The console doesn't really have a server-side part. It just uses the management APIs provided by ODE. And sure, ODE is a quite complex software system. – vanto Feb 18 '13 at 09:24
  • Thanks @vanto, so can I even delete the DeploymentService.js and all those? Isn't that where the APIS are implemented? Could I only add the jars in the Web-INF/lib then? All the rest is JS basically. – eskalera Feb 18 '13 at 09:44
  • @vanto, I have edited my question. I hope you can answer it. – eskalera Feb 18 '13 at 12:37

1 Answers1

3

First off: The web console is optional, you can package your own war file with ODE by adding all jars into WEB-INF/lib and adding the ODE/Axis2 related servlets to your web.xml. Of course, some of the resources like config files are needed by ODE, but you don't have to include all HTML/JS/CSS/JSP files.

Regarding the deloyment it depends of your context and usecases. While the hotdeployment provides an easy way to deploy process models, you need to manually take care of versioning. If you however use the deployment API (a WSDL web service), ODE will take care of the naming conventions for process versions. If you want to deploy process models remotely, I'd recommend this way. If you want to ship ODE with predefined processes, I'd go for the hot-deployment approach.

vanto
  • 3,134
  • 18
  • 28
  • Thanks @vanto, that was very useful. In my case, users create their bpel processes and deploy them in ODE. Process are created with my own BPEL designer which builds all the necessary files. Still I think I'll go for the hot-deployment option since I can't find the deployment API documentation. – eskalera Feb 18 '13 at 17:30