Perso,

je commence par ce que je ne ferais pas:

A)
JNI via import de DLL.
Deconseille par la spec.
See Programming restrictions section 24.1.2 EJB 2.0.

Ensuite ce qui est possible mais "Nasty":

B)
Socket - ton EJB peut etre un client socket - mais il
ne peut pas etre serveur. Ton appli en C serait le
serveur et tu ouvrirais une socket de ton ejb vers
ton serveur C, et la ben - tu fais du marshalling...

Finallement, ce que je "prefere":

C)
CORBA, tu wrappes ton code C avec une interface CORBA
et tu bindes ce serveur dans JNDI, ou tu utilises un
CNS quelconque pour le lookup a partir de ton EJB.
Il te faut CORBA 2.3 et RMI/IIOP pour les OBV.

D)
JMS/MQ, tu configures ton serveur d'application pour
utiliser MQ Series (tu l'as mentionne - donc il est a
ta disposition je crois) - et tu configures un PTP
queue ou tu envois tes messages.
Le serveur C ecoute sur cette queue recupere le msg
(peut etre un byte[] ou un XML) fait son traitement
et renvoit le msg. Si tu veux un comportement
synchrone, tu peux configurer le queue manager pour
qu'il cree une queue dynamique sur laquelle tu
bloqueras pour avoir la reponse dans l'EJB.

Il y a certainement d'autres possibilites... (genre
Web Services...)

T




=====
<firstName>Thierry</firstName>
<lastName>Janaudy</lastName>
<company-url>http://www.jyperion.com/</company-url>
<perso-url>http://www.janaudy.com/</perso-url> 

Accelerate EJB 2.0 development with EJBGen
http://www.javaworld.com/javaworld/jw-02-2002/jw-0222-ejbgen.html

__________________________________________________
Do You Yahoo!?
LAUNCH - Your Yahoo! Music Experience
http://launch.yahoo.com

Répondre à