ciao
i used to access a remote ejb from a servlet.

put the home and remote in the -cp java option
> java -cp .....\orion.jar;.....yourhomeremote
com.evermind.server.ApplicationServer

code like this.


the servlet:
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import java.net.*;
import javax.naming.*;
import javax.rmi.*;


public class MyServlet extends HttpServlet
{
  private static final String CONTENT_TYPE = "text/html";
  public void init(ServletConfig config) throws ServletException
  {
    super.init(config);
  }
  public void doGet(HttpServletRequest request, HttpServletResponse
response) throws ServletException, IOException
  {
  Context context = null;
    Hashtable env = new Hashtable();
    response.setContentType(CONTENT_TYPE);
    PrintWriter out = response.getWriter();

   //env.put(Context.INITIAL_CONTEXT_FACTORY,
"com.evermind.server.rmi.RMIInitialContextFactory");
   env.put(Context.SECURITY_PRINCIPAL, "admin");
   env.put(Context.SECURITY_CREDENTIALS, "paolo");
   env.put("java.naming.provider.url", "ormi://localhost:23791/ejb2");

   //env.put(Context.PROVIDER_URL, "ormi://localhost:23791/ejb1");
   env.put("java.naming.factory.initial",
"com.evermind.server.rmi.RMIInitialContextFactory");

   env.put("dedicated.connection" ,"true");

    try
    {
    out.println("EJBCellerServlet before context");
      context = new InitialContext (env);
      //context = new InitialContext ();
      out.println("EJBCallerServlet after context");
    }
    catch(Exception e)
    {
      e.printStackTrace();
    }

 try {

  out.println("EJBCellerServlet before lookup");
    // MySessionEJBHome home =
(MySessionEJBHome)context.lookup("MySessionEJB");
        Object objref = context.lookup("MySessionEJB1");
        // Object objref =
context.lookup("java:comp/env/ejb/MySessionEJB1Home");
  out.println("EJBCellerServlet after lookup");



 out.println("EJBCellerServlet before cast");
   MySessionEJB1Home home =
(MySessionEJB1Home)PortableRemoteObject.narrow(objref,
                                              MySessionEJB1Home.class);


  out.println("EJBCellerServlet after cast");
    MySessionEJB1 hello = home.create();


      } catch (Exception e) {
        e.printStackTrace(out);
      }

    //response.setContentType(CONTENT_TYPE);
    //PrintWriter out = response.getWriter();
    out.println("<html>");
    out.println("<head><title>CallerServlet</title></head>");
    out.println("<body>");
    out.println("<p>The servlet has received a GET. This is the
reply.</p>");
    out.println("</body></html>");
    out.close();
  }
}


and the web.xml file:

<?xml version = '1.0' encoding = 'UTF-8'?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application
2.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd";>
<web-app>
   <description>Empty web.xml file for Web Application</description>
   <servlet>
      <servlet-name>myservlet</servlet-name>
      <servlet-class>MyServlet</servlet-class>
   </servlet>
   <servlet-mapping>
      <servlet-name>myservlet</servlet-name>
      <url-pattern>/myservlet</url-pattern>
   </servlet-mapping>
   <session-config>
      <session-timeout>30</session-timeout>
   </session-config>
   <mime-mapping>
      <extension>html</extension>
      <mime-type>text/html</mime-type>
   </mime-mapping>
   <mime-mapping>
      <extension>txt</extension>
      <mime-type>text/plain</mime-type>
   </mime-mapping>
   <welcome-file-list>
      <welcome-file>index.jsp</welcome-file>
      <welcome-file>index.html</welcome-file>
   </welcome-file-list>
   <ejb-ref>
      <description>test 3</description>
      <ejb-ref-name>MySessionEJB1</ejb-ref-name>
      <ejb-ref-type>Session</ejb-ref-type>
      <home>MySessionEJB1Home</home>
      <remote>MySessionEJB1</remote>
   </ejb-ref>
</web-app>

hope this helps
ciao
Paolo


Venkata_Nallam wrote:

> Dear All,
>         I would like to know, how to invoke a EJB bean in OC4J from another
> machine.
> What are the steps I have to follow.
>
> It would appreciated if any one help in this regard.
>
> Thanking you
>
> With regards
> Venkata
begin:vcard 
n:ramasso;paolo
x-mozilla-html:FALSE
adr:;;;;;;
version:2.1
email;internet:[EMAIL PROTECTED]
fn:paolo ramasso
end:vcard

Reply via email to