----- Original Message -----
From: <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Friday, November 26, 1999 6:48 PM
Subject: [SouJava-J] corba + servlet
> Amigos, tenho um problema e conto com a colabora��o de vcs.
>
> Desenvolvi um servlet que � um cliente CORBA de outros 2 servidores. O que
> acontece � que quando o cliente (applet) invoca o servlet, este d� o bind
para
> os 2 servidores a fim de estabelecer o servi�o. Isto funciona, mas
evidentemente
> n�o � bom. Gostaria de saber como fazer para dar o bind apenas uma vez por
> sess�o do applet.
>
Olha, voc� pode associar sua referencia ao servi�o CORBA a sua sess�o Http e
utiliz�-lo na mesma sess�o.
public class UseCorbaServlet extends HttpServlet {
public void doPost (HttpServletRequest req, HttpServletResponse resp)
throws ... {
HttpSession session = req.getSession (true);
// Assuma que seu SeuServico � o servico corba que voc� quer usar
SeuServico service;
if (session.isNew ()) {
ORB orb = ORB.init (...);
org.omg.CORBA.Object ncRef = orb.resolve_initial_references
("NameService");
NameContext nc = NameContextHelper.narrow (ncRef);
NameComponent [] name = {new NameComponent ("SeuServico", "")};
org.omg.CORBA.Object serviceRef = nc.resolve (name);
service = SeuServicoHelper.narrow (serviceRef);
// Now this is the point
session.putValue ("UseCorbaServlet.SeuServico", service);
}
else {
service = (SeuServico) session.getValue
("UseCorbaServlet.SeuServico");
}
}
}
� claro que isso � s� uma id�ia. O exemplo � simplista, mas espero que te
ajude!
� claro que o applet ter� de invocar o servlet sempre no escopo da mesma
sess�o!
Ricardo Munhoz Santiago
Sun Certified Programmer for the Java 2 platform
Come and get some !!!
--------------------------- LISTA SOUJAVA ---------------------------
http://www.soujava.org.br - Sociedade de Usu�rios Java da Sucesu-SP
[para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
---------------------------------------------------------------------