Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [ecf-dev] RE: ecf-dev Digest, Vol 35, Issue 19

Scott,
Ok, thanks for the advice, we will try it out then.

Dicky

-----Original Message-----
From: Scott Lewis [mailto:slewis@xxxxxxxxxxxxx] 
Sent: Monday, June 30, 2008 3:07 AM
To: Dicky Johan
Cc: Eclipse Communication Framework (ECF) developer mailing list.
Subject: Re: [ecf-dev] RE: ecf-dev Digest, Vol 35, Issue 19

Hi Dicky,

Dicky Johan wrote:
> Scott,
> Thanks for your reply. Ok, here is the tricky part of what I am trying 
> to accomplish. Assuming I am using the ECF ActiveMQ provider, and I 
> manage to send a serialized message (ie, maybe using the remote 
> services), but once ActiveMQ receives the message, (for example, the 
> message can be a class like this):
>
> class MessageToSend {
>    public String provider = "ecf.yahoo";
>    public String command = "SEND";
>    public String message = "hello world";
>    public String from = "sender@xxxxxxxxx <mailto:sender@xxxxxxxxx>";
>    public String to = "target@xxxxxxxxx <mailto:target@xxxxxxxxx>";
> }
>
> ActiveMQ needs to instantiate the ECF provider, but ActiveMQ is not 
> running in OSGi mode (ie, it is like a servlet), how can ActiveMQ 
> instantiate the right provider and send the message? 

Well, there are two ways to do this:

1) you could run OSGi/Equinox/ECF on the server...and this would not be 
an issue as the ECF use of dynamic classloading/buddy loading takes care 
of the issue.

2) You can/put the needed classes on the classpath for the ActiveMQ 
process, and when the deserialization happens the class should be 
found.  Note that you will probably need to make some ECF classes also 
available on the classpath, as the ECF generic provider serializes some 
of it's own classes, and the if the server needs to deserialize these 
(i.e. if the server has some replicated state as opposed to just being a 
pass-through), then it will need to deserialize some ECF classes as well.

> Should ActiveMQ make a http call back to a headless Eclipse that has 
> all the ECF provider code? Or should I be running an embedded ActiveMQ 
> broker within the headless Eclipse?

I would suggest the latter.  We already have an ECF-based ActiveMQ 
server application...mostly as an example/for testing, but you can could 
use it as example for your own.  Also, the new Runtime top-level project 
is all about OSGi/Equinox on the server, and ECF is moving into that 
project...so we will certainly be having more of a focus within ECF on 
server-side running of ECF.

Regards,

Scott




Back to the top