Hi,
first off: com.fs.pxe.* is deprecated. PXE has been donated to Apache
and has become (after some major refactorings) Apache Ode.
With the next upcoming release (1.2) Ode will support extension
activities and extensible assigns and provides an Extension API that
allows you to implement new activity types in a quite convenient manner.
Unfortunately we currently don't have written documentation but we have
some code examples in our repository. Please have a look at [1] for the
API, [2] for an example and the attachment for a little overview.
In general there are two possibilities to customize BPEL activities. You
could either look at the already implemented activities or adapt them to
fitting your need or you can use the extension API. Both have assets and
drawbacks. While the extension API aims to give developers an easy to
use framework, some corner cases like new types of structured activities
are not possible (because you need direct access to Ode's internal
process calculus engine). On the other side, hacking existing BPEL
activities may result in a fork that is quite hard to maintain...
So, if you 'just' want to add a new RESTful invoke activity, I'd propose
to go with the new extension API. Don't hesitate to ask if you have
further questions. To active such an extension bundle, just put
$prefix.extension.bundles = $myfullqualifiedbundleclassname
into $prefix.properties (where prefix can be either 'ode-axis2' or
'ode-jbi'.
Regarding RESTful invokes: Please also have a look at our wiki pages
about RESTful BPEL [3],[4]
Best regards,
Tammo
[1]
http://svn.apache.org/viewvc/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/extension/
[2] http://svn.apache.org/viewvc/ode/trunk/extensions/e4x/
[3] http://ode.apache.org/restful-bpel-part-i.html
[4] http://ode.apache.org/restful-bpel-part-ii.html
Varanasi, Sasikala wrote:
I have been researching to find how to write Custom Activities and
configure ODE to use them. Can I write a custom activity (or extend
INVOKE activity) to pass the URI and XML input to call RESTful services?
Is there a way to extend the standard INVOKE to invoke RESTFul services.
I have come across the following information on web:
For custom activity, you would need to implement the following classes:
com.fs.pxe.bom.api.InvokeActivity (BOM)
com.fs.pxe.sax.fsa.bpel_1_1.Bpel11InvokeState (Parser)
com.fs.pxe.bpel.compiler.InvokeGenerator (Compiler)
com.fs.pxe.bpel.o.OInvoke (Compiled Representation)
com.fs.pxe.bpel.runtime.INVOKE (Runtime)
I have not found any additional information on writing/configuring this
in ODE.
Thanks in advance for your response!
Regards,
Sashi Varanasi
Enterprise Architect - Product Architecture
(682-605-3876