【JAVA】新手入门核心技术高级技术J2EEJ2MEJava&XML开源技术其他技术考试认证

您现在的位置:首页 > 网络学院 > 编程开发 > JAVA > J2EE > Beans入门必读之经典EJB例子代码

Beans入门必读之经典EJB例子代码

来源: 作者: 日期:2007-06-06

【聚杰网J2EE】Beans入门必读之经典EJB例子代码
  rmi-iiop ejb客户端例子
  
  A Java RMI-IIOP client with a proprietary EJB server.
  
  package com.wiley.compBooks.roman.corba.helloworld;
  import javax.ejb.*;
  import javax.naming.*;
  import javax.rmi.*;
  import java.util.Properties;
  import javax.transaction.UserTransaction;
  /**
  * This class is an example of client code that invokes
  * methods on a simple stateless session bean.
  */
  public class RMIClient {
  public static void main(String[] args) {
  try {
  /*
  * Get System properties for JNDI initialization
  */
  Properties props = System.getProperties();
  /*
  * Use JNDI to look up the home object
  */
  Context ctx = new InitialContext(props);
  HelloHome home = (HelloHome)
  javax.rmi.PortableRemoteObject.narrow(
  ctx.lookup("HelloHome"),
  HelloHome.class);
  /*
  * Use JNDI to look up the JTA
  * UserTransaction interface
  */
  UserTransaction userTran = (UserTransaction)
  ctx.lookup("javax.transaction.UserTransaction");
  /*
  * Start the transaction
  */
  userTran.begin();
  /*
  * Use the home object to create the Hello EJB Object
  */
  Hello hello = home.create();
  /*
  * Call the hello() method, and print it
  */
  System.out.println(hello.hello());
  /*
  * Done with EJB Object, so remove it
  */
  hello.remove();
  /*
  * Commit the transaction
  */
  userTran.commit();
  } catch (Exception e) {
  e.printStackTrace();
  }
  }
  }
  Example RMI-IIOP EJB client
  
  
  A CORBA client with a CORBA-based EJB server.
  package com.wiley.compBooks.roman.corba.helloworld;
  import java.util.*;
  import org.omg.CosNaming.*;
  import org.omg.CosTransactions.*;
  public class CORBAClient {
  public static void main(String[] args) throws Exception {
  /*
  * Initialize the ORB.
  *
  * A more portable way to do this is:
  *
  * Properties p = new Properties();
  * p.put("org.omg.CORBA.ORBClass", <..ORB class..>);
  * org.omg.CORBA.ORB orb = org.omg.CORBA.ORB.init(args, p);
  */
  org.omg.CORBA.ORB orb = com.inprise.ejb.Global.orb();
  /*
  * Get a reference to a naming context
  */
  NamingContext context = NamingContextHelper.narrow
  (orb.resolve_initial_references("NameService"));
  /*
  * Look up the home object using COS Naming
  */
  NameComponent[] names = { new NameComponent("HelloHome", "") };
  HelloHome helloHome = HelloHomeHelper.narrow
  (context.resolve(names));
  /*
  * Get the CORBA OTS Current interface for
  * controlling transactions
  */
  Current currentTX = CurrentHelper.narrow
  (orb.resolve_initial_references("TransactionCurrent"));
  /*
  * Begin the transaction
  */
  currentTX.begin();
  /*
  * Use the home object to create an EJB object
  */
  Hello hello = helloHome.create();
  /*
  * Call a business method
  */
  System.out.println(hello.hello());
  /*
  * Remove the EJB object
  */
  hello.remove();
  /*
  * Commit the transaction
  */
  currentTX.commit(true);
  }
  }


以下相关文章您是否也应该阅读一下 无相关信息
评论   点击查看全部评论
您的评论参与,将为聚杰带来更大的动力!请不要吝啬!
快速回复
请使用文明语言让我们维护健康绿色网络环境!

匿名发表   验证码: