Hi,
I have made some progress in being able to invoke an entry point, however,
in the code below, the get on the future seems to be timing out on line 7. I
am trying to invoke a transient, synchronous two way process. Is there
anything I am missing. I do have an encompassing JTA transaction. However, I
don't want to commit between the invoke and the get, as the process is part
of a larger transaction.
01: MyRoleMessageExchange mex = bpelEngine.createMessageExchange(uid,
portTypeName, operationName);
02: mex.setProperty("isTwoWay", "true");
03: org.apache.ode.bpel.iapi.Message request = mex.createMessage(new
QName("", ""));
04: Element payload =
odeMessageFactory.fromJaxb(((Object[])message.getBody())[0], operationName);
05: request.setMessage(payload);
06: mex.invoke(request).get();
07: Element response = mex.getResponse().getMessage();
Regards
Meeraj
On Fri, Apr 23, 2010 at 9:45 AM, Milinda Pathirage <
[email protected]> wrote:
> Both integration layers are same. There can be small differences. You need
> to implement BindingContext interface, EndpointReferenceContext interface
> and MessageExchangeContext interface other than the BPEL server manager.
>
> Thanks
> Milinda
>
> On Fri, Apr 23, 2010 at 12:38 PM, Meeraj Kunnumpurath <
> [email protected]> wrote:
>
> > Thanks Milinda.
> >
> > Is the Axis2 integration in the current trunk or the 1.3.3 tag? I have
> been
> > using the 1.3.3 release version. Is the 2.0-beta release stable to use?
> >
> > Kind regards
> > Meeraj
> >
> > On Fri, Apr 23, 2010 at 3:54 AM, Milinda Pathirage <
> > [email protected]> wrote:
> >
> > > Hi Meeraj,
> > >
> > > You can have a look at the ODE Axis2 integration layer to understand
> how
> > > BPEL server is initialized and how you can invoke process through ODE
> > API.
> > > We have separate integration layer implemented for WSO2 BPS using the
> > > knowledge we get from ODE's Axis2 integration layer.
> > >
> > > Please first go through the Axis2 integration layer and tell us if you
> > have
> > > any questions.
> > >
> > > Thanks
> > > Milinda
> > >
> > > On Fri, Apr 23, 2010 at 3:22 AM, Meeraj Kunnumpurath <
> > > [email protected]> wrote:
> > >
> > > > Hi,
> > > >
> > > > I have been trying to find my way through, debugging through the
> code.
> > So
> > > > far, I think, I have managed to initialize a server instance with the
> > > code
> > > > below,
> > > >
> > > > TransactionManager transactionManager = new Current();
> > > > BasicDataSource basicDataSource = new BasicDataSource();
> > > >
> > > > Properties odeProperties = new Properties();
> > > >
> > > > SimpleScheduler scheduler = new SimpleScheduler(new
> > > > GUID().toString(), new JdbcDelegate(basicDataSource), odeProperties
> );
> > > > scheduler.setExecutorService(Executors.newCachedThreadPool());
> > > > scheduler.setTransactionManager(transactionManager);
> > > >
> > > > BpelDAOConnectionFactoryImpl dcf = new
> > > > BpelDAOConnectionFactoryImpl(null);
> > > > BpelServerImpl bpelServer = new BpelServerImpl();
> > > > bpelServer.setDaoConnectionFactory(dcf);
> > > > bpelServer.setScheduler(scheduler);
> > > > bpelServer.init();
> > > >
> > > > Is this the right approach?
> > > >
> > > > Thanks
> > > > Meeraj
> > > >
> > > > On Thu, Apr 22, 2010 at 8:49 PM, Meeraj Kunnumpurath <
> > > > [email protected]> wrote:
> > > >
> > > > > Hi,
> > > > >
> > > > > I am looking at embedding ODE in an SCA container. The objective is
> > to
> > > > > enable in-process two way invocation between BPEL processes and
> other
> > > > > component types like POJO instances. Quickly looking through the
> > > source,
> > > > I
> > > > > gather the starting point is BpelServerImpl. Could someone please
> > tell
> > > > what
> > > > > is the minimalist requirements to get the server is going?
> > > > >
> > > > > 1. Is durable persistence always required?
> > > > > 2. How do I deploy a BPEL process, if I have a handle to the
> physical
> > > > > resource representing the process?
> > > > > 3. How do I send a message to a named process and receive the
> return
> > > > value?
> > > > > 4. Can I register some kind of endpoint reference with a registered
> > > > > process, so that the process can make any outbound calls through
> the
> > > > > registered endpoint references?
> > > > > 5. What are the lifecycle operations on the BpelServerImpl?
> > > > >
> > > > > The code I have now is as simple as below,
> > > > >
> > > > > BpelServerImpl bpelServer = new BpelServerImpl();
> > > > > bpelServer.init();
> > > > >
> > > > > I get the following exception ..
> > > > >
> > > > > Exception in thread "main" java.lang.NullPointerException: sscf is
> > > null!
> > > > > at
> > > > org.apache.ode.bpel.engine.BpelDatabase.<init>(BpelDatabase.java:43)
> > > > > at
> > > > >
> > org.apache.ode.bpel.engine.BpelServerImpl.init(BpelServerImpl.java:237)
> > > > > at
> > > > >
> > > >
> > >
> >
> org.sca4j.bpel.ode.OdeEmbeddedBpelServer.start(OdeEmbeddedBpelServer.java:45)
> > > > > at
> > > > >
> > > >
> > >
> >
> org.sca4j.bpel.ode.OdeEmbeddedBpelServer.main(OdeEmbeddedBpelServer.java:54)
> > > > >
> > > > > Kind regards
> > > > > Meeraj
> > > > >
> > > >
> > >
> > >
> > >
> > > --
> > > Milinda Pathirage
> > > Senior Software Engineer & Product Manager WSO2 BPS;
> http://wso2.org/bps
> > > WSO2 Inc.; http://wso2.com
> > > E-mail: [email protected], [email protected]
> > > Web: http://mpathirage.com
> > > Blog: http://blog.mpathirage.com
> > >
> >
>
>
>
> --
> Milinda Pathirage
> Senior Software Engineer & Product Manager WSO2 BPS; http://wso2.org/bps
> WSO2 <http://wso2.org/bps%0AWSO2> Inc.; http://wso2.com
> E-mail: [email protected], [email protected]
> Web: http://mpathirage.com
> Blog: http://blog.mpathirage.com
>