Yea, each technology has it's pros and cons.

SOAP 
 + it's well defined and the best for interchange of 'official' stuff like with 
government, etc
 + walks through http proxies like butter
 - is just painfully slow and I would not use it for each and every call

REST
 + faster than SOAP but still lacks native performance
 + same good handling for http proxies as SOAP does
 - the message format is arbitrary 
 - still many times slower than binary requests

EJB
 + fast, though not as fast as it could be
 - protocol internally depends on the impl: IIOP/CORBA/RMI/ etc. This has a 
huge influence on speed
 - not firewall aware. Needs special treatment. Thus you can only easily use it 
in intranet scenarios
 - afaik not compatible between EE servers of different vendors. Sometimes not 
even btw different versions of the same vendor...

HESSIAN
 + even faster than EJB
 + can be used to exchange data btw different EE containers
 - same firewall/proxy issues like EJB

So choose your weapon wisely young padawan :)

hope that sums it up


LieGrue,
strub



----- Original Message -----
> From: Jean-Louis MONTEIRO <[email protected]>
> To: [email protected]; Mark Struberg <[email protected]>
> Cc: 
> Sent: Tuesday, 28 May 2013, 9:09
> Subject: Re: Invoke EJB on Glassfish
> 
> Agree, except that EJB Remote calls are usually better in terms of
> performance and overhead.
> Depending on the server you can also get additional features like failover,
> multicast, etc
> Of course, that is also possible using an ESB, or provider built in
> features (like failover in CXF), but it's still vendor dependent.
> 
> JLouis
> 
> 
> 2013/5/28 Mark Struberg <[email protected]>
> 
>>  I've tried such things once and gave up. For accessing the Remote EJB 
> you
>>  need some client.jar from that very server (glassfish-client.jar). And
>>  those often contain lots of classes which really create classpath clashes.
>>  They are really only meant for clients which do not have any EJB knowledge
>>  at all, like say a Swing client.
>> 
>>  My tip is to use JAX-RS or some other portable interface.  There is no way
>>  of transaction propagation between EJBs from different servers anyway,
>>  etc.Thus you gain not much from really using remote EJBs in this case.
>> 
>>  LieGrue,
>>  strub
>> 
>> 
>> 
>> 
>>  ----- Original Message -----
>>  > From: Romain Manni-Bucau <[email protected]>
>>  > To: [email protected]
>>  > Cc:
>>  > Sent: Tuesday, 28 May 2013, 6:40
>>  > Subject: Re: Invoke EJB on Glassfish
>>  >
>>  > Is the lookup itself an issue? If so you can still write a small cdi
>>  > extension to get remote ejb through @Inject, it is quite easy and
>>  portable.
>>  > Le 28 mai 2013 00:41, "jply" 
> <[email protected]> a
>>  > écrit :
>>  >
>>  >>  Romain Manni-Bucau wrote
>>  >>  > If i understood you just need a remote lookup
>>  >>  > [...snip...]
>>  >>
>>  >>  You understand correctly. I need to lookup EJBs on a Glassfish 
> server
>>  from
>>  >>  a
>>  >>  webapp on a TomEE server.
>>  >>
>>  >>
>>  >>
>>  >>
>>  >>  --
>>  >>  View this message in context:
>>  >>
>>  >
>> 
> http://openejb.979440.n4.nabble.com/Invoke-EJB-on-Glassfish-tp4663221p4663262.html
>>  >>  Sent from the OpenEJB User mailing list archive at Nabble.com.
>>  >>
>>  >
>> 
> 
> 
> 
> -- 
> Jean-Louis
>

Reply via email to