Student_z53p80__WebLogic_CMP_RDBMS.java
上传用户:dinglihq
上传日期:2013-02-04
资源大小:99958k
文件大小:77k
源码类别:

Java编程

开发平台:

Java

  1. /**
  2.  * This code was automatically generated at 16:30:06 on 2003-8-29
  3.  * by weblogic.ejb20.cmp.rdbms.codegen.RDBMSCodeGenerator -- do not edit.
  4.  *
  5.  * @version WebLogic Server 8.1  Fri Jun 20 23:06:40 PDT 2003 271009 
  6.  * @author Copyright (c) 2003 by BEA Systems, Inc. All Rights Reserved.
  7.  */
  8. package cmpsample;
  9. import java.lang.reflect.Method;
  10. import java.sql.PreparedStatement;
  11. import java.sql.SQLException;
  12. import java.util.ArrayList;
  13. import java.util.Collection;
  14. import java.util.List;
  15. import java.util.Map;
  16. import java.util.Set;
  17. import java.util.HashMap;
  18. import java.util.HashSet;
  19. import java.util.Iterator;
  20. import java.io.ByteArrayInputStream;
  21. import java.io.ByteArrayOutputStream;
  22. import java.io.ObjectInputStream;
  23. import java.io.ObjectOutputStream;
  24. import java.io.InputStream;
  25. import java.io.OutputStream;
  26. import java.io.Reader;
  27. import java.io.Writer;
  28. import java.io.IOException;
  29. import javax.ejb.EntityContext;
  30. import javax.ejb.EJBException;
  31. import javax.ejb.EJBObject;
  32. import javax.ejb.ObjectNotFoundException;
  33. import javax.ejb.NoSuchEntityException;
  34. import javax.ejb.Handle;
  35. import javax.ejb.HomeHandle;
  36. import javax.naming.Context;
  37. import javax.naming.InitialContext;
  38. import javax.naming.NamingEnumeration;
  39. import javax.naming.NameClassPair;
  40. import javax.rmi.PortableRemoteObject;
  41. import javax.transaction.Transaction;
  42. import javax.transaction.TransactionManager;
  43. import weblogic.ejb.OptimisticConcurrencyException;
  44. import weblogic.ejb20.InternalException;
  45. import weblogic.ejb20.internal.EJBRuntimeUtils;
  46. import weblogic.ejb20.internal.EntityEJBContextImpl;
  47. import weblogic.ejb20.interfaces.WLEnterpriseBean;
  48. import weblogic.ejb20.interfaces.CachingManager;
  49. import weblogic.ejb20.persistence.RSInfoImpl;
  50. import weblogic.ejb20.persistence.spi.CMPBean;
  51. import weblogic.ejb20.persistence.spi.CMPBeanManager;
  52. import weblogic.ejb20.persistence.spi.PersistenceManager;
  53. import weblogic.ejb20.persistence.spi.PersistenceRuntimeException;
  54. import weblogic.ejb20.persistence.spi.RSInfo;
  55. import weblogic.ejb20.cmp.rdbms.RDBMSObjectInputStream;
  56. import weblogic.ejb20.cmp.rdbms.RDBMSPersistenceManager;
  57. import weblogic.ejb20.cmp.rdbms.RDBMSException;
  58. import weblogic.ejb20.cmp.rdbms.RDBMSUtils;
  59. import weblogic.ejb20.cmp.rdbms.RDBMSM2NSet;
  60. import weblogic.ejb20.cmp.rdbms.RDBMSSet;
  61. import weblogic.transaction.TransactionHelper;
  62. import weblogic.ejb20.dd.DDConstants;
  63. import weblogic.ejb20.EJBLogger;
  64. import weblogic.logging.Loggable;
  65. import weblogic.utils.Debug;
  66. public final class Student_z53p80__WebLogic_CMP_RDBMS extends cmpsample.StudentBean
  67.   implements CMPBean, Student_z53p80_Intf
  68. {
  69.   // =================================================================
  70.   // Class  variable(s)
  71.   private static final boolean __WL_debug =
  72.     (System.getProperty(RDBMSUtils.RDBMS_CODEGEN_DEBUG_PROP) != null);
  73.   private static final boolean __WL_verbose =
  74.     (System.getProperty(RDBMSUtils.RDBMS_CODEGEN_VERBOSE_PROP) != null);
  75.   private static String EOL = System.getProperty("line.separator");
  76.   
  77.   private javax.ejb.EJBContext __WL_EJBContext;
  78.   private int __WL_method_state;
  79.   private short __WL_bean_state;
  80.   private boolean __WL_isRemoved = false;
  81.   private boolean __WL_busy = false;
  82.   
  83.   private boolean __WL_isLocal = true;
  84.   private boolean __WL_needsRemove;
  85.   private Object __WL_loadUser;
  86.   private boolean __WL_creatorOfTx;
  87.   public javax.transaction.Transaction __WL_getBeanManagedTransaction() {
  88.     throw new AssertionError("Entity beans can't have"
  89.         + " bean-managed transactions");
  90.   }
  91.   public void __WL_setBeanManagedTransaction(javax.transaction.Transaction tx) {
  92.     throw new AssertionError("Entity beans can't have"
  93.         + " bean-managed transactions");
  94.   }
  95.   public boolean __WL_isBusy() { return __WL_busy; }
  96.   public void __WL_setBusy(boolean b) { __WL_busy = b; }
  97.   public boolean __WL_getIsLocal() { return __WL_isLocal; }
  98.   public void __WL_setIsLocal(boolean b) { __WL_isLocal = b; }
  99.   public int __WL_getMethodState() { return __WL_method_state; }
  100.   public void __WL_setMethodState(int state) { __WL_method_state = state; }
  101.   public boolean __WL_needsRemove() { return __WL_needsRemove; }
  102.   public void __WL_setNeedsRemove(boolean b) { __WL_needsRemove = b; }
  103.   public void __WL_setCreatorOfTx ( boolean b) { __WL_creatorOfTx = b; }
  104.   public boolean __WL_isCreatorOfTx() { return __WL_creatorOfTx; }
  105.   
  106.   public javax.ejb.EJBContext __WL_getEJBContext() { return __WL_EJBContext; }
  107.   public void __WL_setEJBContext(javax.ejb.EJBContext ctx) {
  108.     __WL_EJBContext = ctx;
  109.   }
  110.   public void __WL_setLoadUser(Object o) { __WL_loadUser = o;}
  111.   public Object __WL_getLoadUser() { return __WL_loadUser; } 
  112.   // =================================================================
  113.   // ejbSelect Methods Defined on CMR Beans
  114.   
  115.   // =================================================================
  116.   // Instance variable(s)
  117.   private EntityContext __WL_ctx;
  118.   private RDBMSPersistenceManager __WL_pm; private ClassLoader __WL_classLoader; private CMPBeanManager __WL_roster_bm; private CMPBeanManager __WL_address_bm;
  119.   public java.lang.String studentID; public java.lang.String firstname; public java.lang.String lastname;
  120.   
  121.   public java.util.Collection __WL_roster_field_; public java.util.Collection __WL_address_field_;
  122.   public java.lang.reflect.Method __WL_roster_finder_; public java.lang.reflect.Method __WL_address_finder_;
  123.   
  124.   private boolean[] __WL_isModified = new boolean[3]; private boolean __WL_modifiedBeanIsRegistered= false;
  125.   private boolean __WL_invalidatedBeanIsRegistered= false;
  126.   private boolean[] __WL_isLoaded = new boolean[3]; private boolean __WL_beanIsLoaded= false;
  127.   public boolean __WL_roster_isLoaded_ = false; public boolean __WL_address_isLoaded_ = false;
  128.   // for remote relationships
  129.   
  130.   
  131.   
  132.   // =================================================================
  133.   // Constructor(s)
  134.   public Student_z53p80__WebLogic_CMP_RDBMS()  {
  135.     super();
  136.     __WL_initialize();
  137.     
  138.   }
  139.   // This method is called by ejbLoad, ejbPassivate, and ejbRemove
  140.   // to initialize the persistent state of the bean and its associated
  141.   // variables.
  142.   public void __WL_initialize()
  143.   {
  144.     __WL_initialize(true);
  145.   }
  146.   public void __WL_initialize(boolean __WL_initSnapshotVars)
  147.   {
  148.     __WL_initialize_persistent(__WL_initSnapshotVars);
  149.     __WL_beanIsLoaded = false;
  150.     
  151.     __WL_modifiedBeanIsRegistered = false;
  152.      __WL_roster_isLoaded_ = false; __WL_address_isLoaded_ = false;
  153.     //cached relationship state
  154.      __WL_roster_field_ = null; __WL_address_field_ = null;
  155.   }
  156.   private void __WL_initialize_persistent(boolean __WL_initSnapshotVars)
  157.   {
  158.     for (int __WL_i = 0; __WL_i < 3; __WL_i++) {
  159.        __WL_isLoaded[__WL_i] = false;
  160.        __WL_isModified[__WL_i] = false;
  161.     }
  162.      lastname = null; studentID = null; firstname = null;
  163.     if (__WL_initSnapshotVars) {
  164.       
  165.     }
  166.   }
  167.   
  168.   // ================================================================
  169.   // Method(s)
  170.   public void setEntityContext(javax.ejb.EntityContext arg0) {
  171.     int oldState = __WL_method_state;
  172.     try {
  173.       __WL_method_state = STATE_SET_CONTEXT;
  174.       super.setEntityContext(arg0);
  175.       this.__WL_ctx = arg0;
  176.     } finally {
  177.       __WL_method_state = oldState;
  178.     }
  179.   }
  180.   public void unsetEntityContext()
  181.     
  182.   {
  183.     int oldState = __WL_method_state;
  184.     try {
  185.       __WL_method_state = STATE_UNSET_CONTEXT;
  186.       super.unsetEntityContext();
  187.     } finally {
  188.       __WL_method_state = oldState;
  189.     }
  190.   }
  191.   public void ejbActivate()
  192.     
  193.   {
  194.     int oldState = __WL_method_state;
  195.     try {
  196.       __WL_method_state = STATE_EJB_ACTIVATE;
  197.       super.ejbActivate();
  198.     } finally {
  199.       __WL_method_state = oldState;
  200.     }
  201.   }
  202.   // ================================================================
  203.   // Getter and Setter methods.
  204.     public java.lang.String getStudentID()
  205.   {
  206.     try {
  207.             if (!(__WL_isLoaded[0] || __WL_isModified[0])) {
  208.         __WL_loadGroup0();
  209.       }
  210.       return studentID;
  211.         } catch (RuntimeException re) {
  212.       if (__WL_verbose) {
  213.         Debug.say("rethrowing RuntimeException.");
  214.         re.printStackTrace();
  215.       }
  216.       throw re;
  217.     } catch (Exception ex) {
  218.       if (__WL_verbose) {
  219.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  220.         ex.printStackTrace();
  221.       }
  222.       throw new PersistenceRuntimeException(ex);
  223.     }
  224.   }
  225.   public void setStudentID(
  226.     java.lang.String studentID)
  227.   {
  228.     if (__WL_method_state!=STATE_EJB_CREATE) { Loggable l = EJBLogger.logcannotCallSetOnPkLoggable();throw new IllegalStateException(l.getMessage());}     
  229.     this.studentID = studentID;
  230.     __WL_isModified[0] = true;
  231.     
  232.         if (! __WL_modifiedBeanIsRegistered) {
  233.       __WL_pm.registerModifiedBean(__WL_ctx.getPrimaryKey());
  234.       __WL_modifiedBeanIsRegistered = true;
  235.     }
  236.   }
  237.   public java.lang.String getFirstname()
  238.   {
  239.     try {
  240.             if (!(__WL_isLoaded[1] || __WL_isModified[1])) {
  241.         __WL_loadGroup0();
  242.       }
  243.       return firstname;
  244.         } catch (RuntimeException re) {
  245.       if (__WL_verbose) {
  246.         Debug.say("rethrowing RuntimeException.");
  247.         re.printStackTrace();
  248.       }
  249.       throw re;
  250.     } catch (Exception ex) {
  251.       if (__WL_verbose) {
  252.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  253.         ex.printStackTrace();
  254.       }
  255.       throw new PersistenceRuntimeException(ex);
  256.     }
  257.   }
  258.   public void setFirstname(
  259.     java.lang.String firstname)
  260.   {
  261.         if ((this.firstname == firstname || (this.firstname!=null && this.firstname.equals(firstname))) && __WL_isLoaded[1]) return;
  262.     this.firstname = firstname;
  263.     __WL_isModified[1] = true;
  264.     
  265.         if (! __WL_modifiedBeanIsRegistered) {
  266.       __WL_pm.registerModifiedBean(__WL_ctx.getPrimaryKey());
  267.       __WL_modifiedBeanIsRegistered = true;
  268.     }
  269.   }
  270.   public java.lang.String getLastname()
  271.   {
  272.     try {
  273.             if (!(__WL_isLoaded[2] || __WL_isModified[2])) {
  274.         __WL_loadGroup0();
  275.       }
  276.       return lastname;
  277.         } catch (RuntimeException re) {
  278.       if (__WL_verbose) {
  279.         Debug.say("rethrowing RuntimeException.");
  280.         re.printStackTrace();
  281.       }
  282.       throw re;
  283.     } catch (Exception ex) {
  284.       if (__WL_verbose) {
  285.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  286.         ex.printStackTrace();
  287.       }
  288.       throw new PersistenceRuntimeException(ex);
  289.     }
  290.   }
  291.   public void setLastname(
  292.     java.lang.String lastname)
  293.   {
  294.         if ((this.lastname == lastname || (this.lastname!=null && this.lastname.equals(lastname))) && __WL_isLoaded[2]) return;
  295.     this.lastname = lastname;
  296.     __WL_isModified[2] = true;
  297.     
  298.         if (! __WL_modifiedBeanIsRegistered) {
  299.       __WL_pm.registerModifiedBean(__WL_ctx.getPrimaryKey());
  300.       __WL_modifiedBeanIsRegistered = true;
  301.     }
  302.   }
  303.   public java.util.Collection getRoster() {     try {
  304.       if (__WL_roster_field_==null) {
  305.          if (__WL_verbose) {
  306.             Debug.say("t__WL_roster_field_ was null.");
  307.          }
  308.          __WL_roster_field_ = new Student_z53p80__WebLogic_CMP_RDBMS_roster_Set(this, __WL_roster_bm, __WL_roster_finder_);
  309.       }
  310.       Transaction currentTx =
  311.         TransactionHelper.getTransactionHelper().getTransaction();
  312.       if(currentTx != null && ((RDBMSSet)__WL_roster_field_)
  313.                          .checkIfCurrentTxEqualsCreateTx(currentTx)) {
  314.         return __WL_roster_field_;
  315.       } else {
  316.         __WL_roster_field_ = (Set)(((Student_z53p80__WebLogic_CMP_RDBMS_roster_Set)
  317.                  __WL_roster_field_).clone());
  318.         ((RDBMSSet)__WL_roster_field_).setTransaction(currentTx);
  319.         return __WL_roster_field_;
  320.       }
  321.        
  322.         } catch (RuntimeException re) {
  323.       if (__WL_verbose) {
  324.         Debug.say("rethrowing RuntimeException.");
  325.         re.printStackTrace();
  326.       }
  327.       throw re;
  328.     } catch (Exception ex) {
  329.       if (__WL_verbose) {
  330.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  331.         ex.printStackTrace();
  332.       }
  333.       throw new PersistenceRuntimeException(ex);
  334.     }
  335. } public void setRoster(java.util.Collection roster) { if (__WL_method_state==STATE_EJB_CREATE) { Loggable l = EJBLogger.logsetCheckForCmrFieldDuringEjbCreateLoggable();throw new IllegalStateException(l.getMessage()); }     if (roster==null) {
  336.       Loggable l = EJBLogger.lognullAssignedToCmrFieldLoggable();
  337.       throw new IllegalArgumentException(l.getMessage());
  338.    
  339.     }
  340.     try {
  341.       getRoster();
  342.       if (roster==__WL_roster_field_)
  343.         return;
  344.       __WL_roster_field_.clear();
  345.       __WL_roster_field_.addAll(roster);
  346.         } catch (RuntimeException re) {
  347.       if (__WL_verbose) {
  348.         Debug.say("rethrowing RuntimeException.");
  349.         re.printStackTrace();
  350.       }
  351.       throw re;
  352.     } catch (Exception ex) {
  353.       if (__WL_verbose) {
  354.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  355.         ex.printStackTrace();
  356.       }
  357.       throw new PersistenceRuntimeException(ex);
  358.     }
  359. } public void __WL_add__WL_roster_field_(Object roster) { if (__WL_roster_field_ == null) { __WL_roster_field_ = new Student_z53p80__WebLogic_CMP_RDBMS_roster_Set(this, __WL_roster_bm, __WL_roster_finder_); } ((RDBMSSet)__WL_roster_field_).doAddToCache(roster); __WL_roster_isLoaded_ = true; } public java.util.Collection getAddress() {     try {
  360.       if (__WL_address_field_==null) {
  361.          if (__WL_verbose) {
  362.             Debug.say("t__WL_address_field_ was null.");
  363.          }
  364.          __WL_address_field_ = new Student_z53p80__WebLogic_CMP_RDBMS_address_Set(this, __WL_address_bm, __WL_address_finder_);
  365.       }
  366.       Transaction currentTx =
  367.         TransactionHelper.getTransactionHelper().getTransaction();
  368.       if(currentTx != null && ((RDBMSSet)__WL_address_field_)
  369.                          .checkIfCurrentTxEqualsCreateTx(currentTx)) {
  370.         return __WL_address_field_;
  371.       } else {
  372.         __WL_address_field_ = (Set)(((Student_z53p80__WebLogic_CMP_RDBMS_address_Set)
  373.                  __WL_address_field_).clone());
  374.         ((RDBMSSet)__WL_address_field_).setTransaction(currentTx);
  375.         return __WL_address_field_;
  376.       }
  377.        
  378.         } catch (RuntimeException re) {
  379.       if (__WL_verbose) {
  380.         Debug.say("rethrowing RuntimeException.");
  381.         re.printStackTrace();
  382.       }
  383.       throw re;
  384.     } catch (Exception ex) {
  385.       if (__WL_verbose) {
  386.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  387.         ex.printStackTrace();
  388.       }
  389.       throw new PersistenceRuntimeException(ex);
  390.     }
  391. } public void setAddress(java.util.Collection address) { if (__WL_method_state==STATE_EJB_CREATE) { Loggable l = EJBLogger.logsetCheckForCmrFieldDuringEjbCreateLoggable();throw new IllegalStateException(l.getMessage()); }     if (address==null) {
  392.       Loggable l = EJBLogger.lognullAssignedToCmrFieldLoggable();
  393.       throw new IllegalArgumentException(l.getMessage());
  394.    
  395.     }
  396.     try {
  397.       getAddress();
  398.       if (address==__WL_address_field_)
  399.         return;
  400.       __WL_address_field_.clear();
  401.       __WL_address_field_.addAll(address);
  402.         } catch (RuntimeException re) {
  403.       if (__WL_verbose) {
  404.         Debug.say("rethrowing RuntimeException.");
  405.         re.printStackTrace();
  406.       }
  407.       throw re;
  408.     } catch (Exception ex) {
  409.       if (__WL_verbose) {
  410.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  411.         ex.printStackTrace();
  412.       }
  413.       throw new PersistenceRuntimeException(ex);
  414.     }
  415. } public void __WL_add__WL_address_field_(Object address) { if (__WL_address_field_ == null) { __WL_address_field_ = new Student_z53p80__WebLogic_CMP_RDBMS_address_Set(this, __WL_address_bm, __WL_address_finder_); } ((RDBMSSet)__WL_address_field_).doAddToCache(address); __WL_address_isLoaded_ = true; }
  416.   
  417.   //=================================================================
  418.   //Finder methods.
  419.   public java.util.Collection ejbFindByFirstName(java.lang.String param0) throws javax.ejb.FinderException
  420.     {     if(__WL_verbose) {
  421.       Debug.say("called findByFirstName");
  422.     }
  423.     java.sql.Connection __WL_con = null;
  424.     java.sql.PreparedStatement __WL_stmt = null;
  425.     java.sql.ResultSet __WL_rs = null;
  426.     int __WL_offset = 0;
  427.     
  428.     __WL_pm.flushModifiedBeans();
  429.     int selectForUpdateVal = __WL_pm.getSelectForUpdateValue();
  430.     java.lang.String __WL_query = null;
  431.     switch(selectForUpdateVal) {
  432.       case DDConstants.SELECT_FOR_UPDATE_DISABLED:
  433.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.firstname = ? )";
  434.         break;
  435.       case DDConstants.SELECT_FOR_UPDATE:
  436.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.firstname = ? ) FOR UPDATE ";
  437.         break;
  438.       case DDConstants.SELECT_FOR_UPDATE_NO_WAIT:
  439.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.firstname = ? ) FOR UPDATE NOWAIT ";
  440.         break;
  441.       default:
  442.         throw new AssertionError(
  443.         "Unknown selectForUpdate type: '"+selectForUpdateVal+"'");
  444.     }
  445.     if(__WL_verbose) {
  446.       Debug.say("Finder produced statement string " + __WL_query);
  447.     }
  448.     
  449.     try {
  450.       __WL_con = __WL_pm.getConnection();
  451.     } 
  452.     catch (java.lang.Exception e) {
  453.       __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  454.       throw new javax.ejb.FinderException("Couldn't get connection: " + EOL +
  455.         e.toString() + EOL +
  456.         RDBMSUtils.throwable2StackTrace(e));
  457.     }
  458.     
  459.     try {
  460.       __WL_stmt = __WL_con.prepareStatement(__WL_query);
  461.       
  462.       // preparedStatementParamIndex reset.
  463.        if (param0 == null) { __WL_stmt.setNull(1,java.sql.Types.VARCHAR); } else { __WL_stmt.setString(1, param0); if (__WL_verbose) { Debug.say("paramIdx :"+1+" binded with value :"+param0); } }
  464.       __WL_rs = __WL_stmt.executeQuery();
  465.     } 
  466.     catch (java.lang.Exception e) {
  467.       __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  468.       throw new javax.ejb.FinderException(
  469.         "Exception in findByFirstName while preparing or executing " +
  470.         "statement: '" + __WL_stmt + "'" + EOL +
  471.         e.toString() + EOL +
  472.         RDBMSUtils.throwable2StackTrace(e));
  473.     }
  474.     try {
  475.       java.util.Collection __WL_collection = new java.util.ArrayList(); cmpsample.Student_z53p80__WebLogic_CMP_RDBMS __WL_bean = null; Object __WL_eo = null; Object __WL_eo_rc = null;
  476.       
  477.        Map __WL_pkMap = new HashMap();
  478.       while (__WL_rs.next()) {
  479.          Integer __WL_offsetIntObj = new Integer(0); Object __WL_pk = __WL_getPKFromRS(__WL_rs, __WL_offsetIntObj, __WL_classLoader); __WL_eo = null; if (__WL_pk != null) {  RSInfo __WL_rsInfo = new RSInfoImpl(__WL_rs, 0, 0); __WL_bean = (cmpsample.Student_z53p80__WebLogic_CMP_RDBMS)__WL_pm.getBeanFromRS(__WL_pk, __WL_rsInfo); __WL_eo = __WL_pm.finderGetEoFromBeanOrPk(__WL_bean, __WL_pk, __WL_getIsLocal()); if (__WL_verbose) Debug.say("bean after finder load: " + __WL_bean); __WL_collection.add(__WL_eo); Object __WL_retVal = __WL_pkMap.put(__WL_pk, __WL_bean); }
  480.       }
  481.       return __WL_collection;
  482.     } catch (java.sql.SQLException sqle) {
  483.       throw new javax.ejb.FinderException(
  484.         "Exception in 'findByFirstName' while using " +
  485.         "result set: '" + __WL_rs + "'" + EOL +
  486.         sqle.toString() + EOL +
  487.         RDBMSUtils.throwable2StackTrace(sqle));
  488.     } catch (java.lang.Exception e) {
  489.       throw new javax.ejb.FinderException(
  490.         "Exception executing finder 'findByFirstName': " + EOL +
  491.         e.toString() + EOL +
  492.         RDBMSUtils.throwable2StackTrace(e));
  493.     } finally {
  494.       
  495.       __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  496.     }
  497. } public java.util.Collection ejbFindByLastName(java.lang.String param0) throws javax.ejb.FinderException
  498.     {     if(__WL_verbose) {
  499.       Debug.say("called findByLastName");
  500.     }
  501.     java.sql.Connection __WL_con = null;
  502.     java.sql.PreparedStatement __WL_stmt = null;
  503.     java.sql.ResultSet __WL_rs = null;
  504.     int __WL_offset = 0;
  505.     
  506.     __WL_pm.flushModifiedBeans();
  507.     int selectForUpdateVal = __WL_pm.getSelectForUpdateValue();
  508.     java.lang.String __WL_query = null;
  509.     switch(selectForUpdateVal) {
  510.       case DDConstants.SELECT_FOR_UPDATE_DISABLED:
  511.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.lastname = ? )";
  512.         break;
  513.       case DDConstants.SELECT_FOR_UPDATE:
  514.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.lastname = ? ) FOR UPDATE ";
  515.         break;
  516.       case DDConstants.SELECT_FOR_UPDATE_NO_WAIT:
  517.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.lastname = ? ) FOR UPDATE NOWAIT ";
  518.         break;
  519.       default:
  520.         throw new AssertionError(
  521.         "Unknown selectForUpdate type: '"+selectForUpdateVal+"'");
  522.     }
  523.     if(__WL_verbose) {
  524.       Debug.say("Finder produced statement string " + __WL_query);
  525.     }
  526.     
  527.     try {
  528.       __WL_con = __WL_pm.getConnection();
  529.     } 
  530.     catch (java.lang.Exception e) {
  531.       __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  532.       throw new javax.ejb.FinderException("Couldn't get connection: " + EOL +
  533.         e.toString() + EOL +
  534.         RDBMSUtils.throwable2StackTrace(e));
  535.     }
  536.     
  537.     try {
  538.       __WL_stmt = __WL_con.prepareStatement(__WL_query);
  539.       
  540.       // preparedStatementParamIndex reset.
  541.        if (param0 == null) { __WL_stmt.setNull(1,java.sql.Types.VARCHAR); } else { __WL_stmt.setString(1, param0); if (__WL_verbose) { Debug.say("paramIdx :"+1+" binded with value :"+param0); } }
  542.       __WL_rs = __WL_stmt.executeQuery();
  543.     } 
  544.     catch (java.lang.Exception e) {
  545.       __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  546.       throw new javax.ejb.FinderException(
  547.         "Exception in findByLastName while preparing or executing " +
  548.         "statement: '" + __WL_stmt + "'" + EOL +
  549.         e.toString() + EOL +
  550.         RDBMSUtils.throwable2StackTrace(e));
  551.     }
  552.     try {
  553.       java.util.Collection __WL_collection = new java.util.ArrayList(); cmpsample.Student_z53p80__WebLogic_CMP_RDBMS __WL_bean = null; Object __WL_eo = null; Object __WL_eo_rc = null;
  554.       
  555.        Map __WL_pkMap = new HashMap();
  556.       while (__WL_rs.next()) {
  557.          Integer __WL_offsetIntObj = new Integer(0); Object __WL_pk = __WL_getPKFromRS(__WL_rs, __WL_offsetIntObj, __WL_classLoader); __WL_eo = null; if (__WL_pk != null) {  RSInfo __WL_rsInfo = new RSInfoImpl(__WL_rs, 0, 0); __WL_bean = (cmpsample.Student_z53p80__WebLogic_CMP_RDBMS)__WL_pm.getBeanFromRS(__WL_pk, __WL_rsInfo); __WL_eo = __WL_pm.finderGetEoFromBeanOrPk(__WL_bean, __WL_pk, __WL_getIsLocal()); if (__WL_verbose) Debug.say("bean after finder load: " + __WL_bean); __WL_collection.add(__WL_eo); Object __WL_retVal = __WL_pkMap.put(__WL_pk, __WL_bean); }
  558.       }
  559.       return __WL_collection;
  560.     } catch (java.sql.SQLException sqle) {
  561.       throw new javax.ejb.FinderException(
  562.         "Exception in 'findByLastName' while using " +
  563.         "result set: '" + __WL_rs + "'" + EOL +
  564.         sqle.toString() + EOL +
  565.         RDBMSUtils.throwable2StackTrace(sqle));
  566.     } catch (java.lang.Exception e) {
  567.       throw new javax.ejb.FinderException(
  568.         "Exception executing finder 'findByLastName': " + EOL +
  569.         e.toString() + EOL +
  570.         RDBMSUtils.throwable2StackTrace(e));
  571.     } finally {
  572.       
  573.       __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  574.     }
  575. } public java.lang.Object ejbFindByPrimaryKey(java.lang.String param0) throws javax.ejb.FinderException
  576.     {     if(__WL_verbose) {
  577.       Debug.say("called findByPrimaryKey.");
  578.     }
  579.     java.sql.Connection __WL_con = null;
  580.     java.sql.PreparedStatement __WL_stmt = null;
  581.     java.sql.ResultSet __WL_rs = null;
  582.     int __WL_offset = 0;
  583.     cmpsample.Student_z53p80__WebLogic_CMP_RDBMS __WL_bean = null; Object __WL_eo = null; Object __WL_eo_rc = null;
  584.     
  585.     
  586.     int selectForUpdateVal = __WL_pm.getSelectForUpdateValue();
  587.     java.lang.String __WL_query = null;
  588.     switch(selectForUpdateVal) {
  589.       case DDConstants.SELECT_FOR_UPDATE_DISABLED:
  590.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.studentID = ? )";
  591.         break;
  592.       case DDConstants.SELECT_FOR_UPDATE:
  593.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.studentID = ? ) FOR UPDATE ";
  594.         break;
  595.       case DDConstants.SELECT_FOR_UPDATE_NO_WAIT:
  596.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.studentID = ? ) FOR UPDATE NOWAIT ";
  597.         break;
  598.       default:
  599.         throw new AssertionError(
  600.         "Unknown selectForUpdate type: '"+selectForUpdateVal+"'");
  601.     }
  602.     if(__WL_verbose) {
  603.       Debug.say("Finder produced statement string " + __WL_query);
  604.     }
  605.     
  606.     try {
  607.       __WL_con = __WL_pm.getConnection();
  608.     } 
  609.     catch (java.lang.Exception e) {
  610.       __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  611.       throw new javax.ejb.FinderException("Couldn't get connection: " + EOL +
  612.         e.toString() + EOL +
  613.         RDBMSUtils.throwable2StackTrace(e));
  614.     }
  615.     
  616.     try {
  617.       __WL_stmt = __WL_con.prepareStatement(__WL_query);
  618.       // preparedStatementParamIndex reset.
  619.        if (param0 == null) { __WL_stmt.setNull(1,java.sql.Types.VARCHAR); } else { __WL_stmt.setString(1, param0); if (__WL_verbose) { Debug.say("paramIdx :"+1+" binded with value :"+param0); } }
  620.       __WL_rs = __WL_stmt.executeQuery();
  621.       
  622.        Map __WL_pkMap = new HashMap();
  623.       boolean __WL_isMulti = false;
  624.       while (__WL_rs.next()) {
  625.          Integer __WL_offsetIntObj = new Integer(0); Object __WL_pk = __WL_getPKFromRS(__WL_rs, __WL_offsetIntObj, __WL_classLoader); __WL_eo = null; if (__WL_pk != null) {  RSInfo __WL_rsInfo = new RSInfoImpl(__WL_rs, 0, 0); __WL_bean = (cmpsample.Student_z53p80__WebLogic_CMP_RDBMS)__WL_pm.getBeanFromRS(__WL_pk, __WL_rsInfo); __WL_eo = __WL_pm.finderGetEoFromBeanOrPk(__WL_bean, __WL_pk, __WL_getIsLocal()); if (__WL_verbose) Debug.say("bean after finder load: " + __WL_bean); Object __WL_retVal = __WL_pkMap.put(__WL_pk, __WL_bean); if (__WL_retVal!=null) __WL_isMulti=true; }
  626.       }
  627.       if (__WL_pkMap.size() == 0) {
  628.         if(__WL_verbose) {
  629.           Debug.say("Throwing FinderException because bean wasn't found.");
  630.         }
  631.         throw new javax.ejb.ObjectNotFoundException("Bean with primary key '" + param0.toString() + "' was not found by 'findByPrimaryKey'.");
  632.       }
  633.       if (__WL_isMulti || __WL_pkMap.size() > 1) {
  634.         Loggable l = EJBLogger.logfinderReturnedMultipleValuesLoggable("findByPrimaryKey");
  635.         throw new javax.ejb.FinderException(l.getMessage());
  636.       }
  637.       return __WL_eo;
  638.   } catch (javax.ejb.FinderException fe) {
  639.     throw fe;
  640.   } catch (java.sql.SQLException sqle) {
  641.     throw new javax.ejb.FinderException(
  642.       "Problem in findByPrimaryKey while preparing or executing " +
  643.       "statement: '" +
  644.       __WL_stmt + "': " + EOL +
  645.       sqle.toString() + EOL +
  646.       RDBMSUtils.throwable2StackTrace(sqle));
  647.   } catch (Exception e) {
  648.     throw new javax.ejb.FinderException(
  649.       "Exception raised in findByPrimaryKey " + EOL +
  650.       e.toString() + EOL +
  651.       RDBMSUtils.throwable2StackTrace(e));
  652.   } finally {
  653.     __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  654.     
  655.   }
  656. } public java.lang.Object ejbFindByRoster_2prm6y__WebLogic_CMP_RDBMS_studentBean_roster__WL_
  657.     (java.lang.String param0
  658.     ) throws java.lang.Exception
  659.     {     if(__WL_verbose) {
  660.       Debug.say("called findByRoster_2prm6y__WebLogic_CMP_RDBMS_studentBean_roster__WL_.");
  661.     }
  662.     java.sql.Connection __WL_con = null;
  663.     java.sql.PreparedStatement __WL_stmt = null;
  664.     java.sql.ResultSet __WL_rs = null;
  665.     int __WL_offset = 0;
  666.     cmpsample.Student_z53p80__WebLogic_CMP_RDBMS __WL_bean = null; Object __WL_eo = null; Object __WL_eo_rc = null;
  667.     
  668.     
  669.     int selectForUpdateVal = __WL_pm.getSelectForUpdateValue();
  670.     java.lang.String __WL_query = null;
  671.     switch(selectForUpdateVal) {
  672.       case DDConstants.SELECT_FOR_UPDATE_DISABLED:
  673.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.studentID = ? )";
  674.         break;
  675.       case DDConstants.SELECT_FOR_UPDATE:
  676.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.studentID = ? ) FOR UPDATE ";
  677.         break;
  678.       case DDConstants.SELECT_FOR_UPDATE_NO_WAIT:
  679.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.studentID = ? ) FOR UPDATE NOWAIT ";
  680.         break;
  681.       default:
  682.         throw new AssertionError(
  683.         "Unknown selectForUpdate type: '"+selectForUpdateVal+"'");
  684.     }
  685.     if(__WL_verbose) {
  686.       Debug.say("Finder produced statement string " + __WL_query);
  687.     }
  688.     
  689.     try {
  690.       __WL_con = __WL_pm.getConnection();
  691.     } 
  692.     catch (java.lang.Exception e) {
  693.       __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  694.       throw new javax.ejb.FinderException("Couldn't get connection: " + EOL +
  695.         e.toString() + EOL +
  696.         RDBMSUtils.throwable2StackTrace(e));
  697.     }
  698.     
  699.     try {
  700.       __WL_stmt = __WL_con.prepareStatement(__WL_query);
  701.       // preparedStatementParamIndex reset.
  702.        if (param0 == null) { __WL_stmt.setNull(1,java.sql.Types.VARCHAR); } else { __WL_stmt.setString(1, param0); if (__WL_verbose) { Debug.say("paramIdx :"+1+" binded with value :"+param0); } }
  703.       __WL_rs = __WL_stmt.executeQuery();
  704.       
  705.        Map __WL_pkMap = new HashMap();
  706.       boolean __WL_isMulti = false;
  707.       while (__WL_rs.next()) {
  708.          Integer __WL_offsetIntObj = new Integer(0); Object __WL_pk = __WL_getPKFromRS(__WL_rs, __WL_offsetIntObj, __WL_classLoader); __WL_eo = null; if (__WL_pk != null) {  RSInfo __WL_rsInfo = new RSInfoImpl(__WL_rs, 0, 0); __WL_bean = (cmpsample.Student_z53p80__WebLogic_CMP_RDBMS)__WL_pm.getBeanFromRS(__WL_pk, __WL_rsInfo); __WL_eo = __WL_pm.finderGetEoFromBeanOrPk(__WL_bean, __WL_pk, __WL_getIsLocal()); if (__WL_verbose) Debug.say("bean after finder load: " + __WL_bean); Object __WL_retVal = __WL_pkMap.put(__WL_pk, __WL_bean); if (__WL_retVal!=null) __WL_isMulti=true; }
  709.       }
  710.       if (__WL_pkMap.size() == 0) {
  711.         if(__WL_verbose) {
  712.           Debug.say("Throwing FinderException because bean wasn't found.");
  713.         }
  714.         throw new javax.ejb.ObjectNotFoundException("Bean not found in 'findByRoster_2prm6y__WebLogic_CMP_RDBMS_studentBean_roster__WL_'.");
  715.       }
  716.       if (__WL_isMulti || __WL_pkMap.size() > 1) {
  717.         Loggable l = EJBLogger.logfinderReturnedMultipleValuesLoggable("findByRoster_2prm6y__WebLogic_CMP_RDBMS_studentBean_roster__WL_");
  718.         throw new javax.ejb.FinderException(l.getMessage());
  719.       }
  720.       return __WL_eo;
  721.   } catch (javax.ejb.FinderException fe) {
  722.     throw fe;
  723.   } catch (java.sql.SQLException sqle) {
  724.     throw new javax.ejb.FinderException(
  725.       "Problem in findByRoster_2prm6y__WebLogic_CMP_RDBMS_studentBean_roster__WL_ while preparing or executing " +
  726.       "statement: '" +
  727.       __WL_stmt + "': " + EOL +
  728.       sqle.toString() + EOL +
  729.       RDBMSUtils.throwable2StackTrace(sqle));
  730.   } catch (Exception e) {
  731.     throw new javax.ejb.FinderException(
  732.       "Exception raised in findByRoster_2prm6y__WebLogic_CMP_RDBMS_studentBean_roster__WL_ " + EOL +
  733.       e.toString() + EOL +
  734.       RDBMSUtils.throwable2StackTrace(e));
  735.   } finally {
  736.     __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  737.     
  738.   }
  739. } public java.lang.Object ejbFindByAddress_n6e4pc__WebLogic_CMP_RDBMS_studentBean_address__WL_
  740.     (java.lang.String param0
  741.     ) throws java.lang.Exception
  742.     {     if(__WL_verbose) {
  743.       Debug.say("called findByAddress_n6e4pc__WebLogic_CMP_RDBMS_studentBean_address__WL_.");
  744.     }
  745.     java.sql.Connection __WL_con = null;
  746.     java.sql.PreparedStatement __WL_stmt = null;
  747.     java.sql.ResultSet __WL_rs = null;
  748.     int __WL_offset = 0;
  749.     cmpsample.Student_z53p80__WebLogic_CMP_RDBMS __WL_bean = null; Object __WL_eo = null; Object __WL_eo_rc = null;
  750.     
  751.     
  752.     int selectForUpdateVal = __WL_pm.getSelectForUpdateValue();
  753.     java.lang.String __WL_query = null;
  754.     switch(selectForUpdateVal) {
  755.       case DDConstants.SELECT_FOR_UPDATE_DISABLED:
  756.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.studentID = ? )";
  757.         break;
  758.       case DDConstants.SELECT_FOR_UPDATE:
  759.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.studentID = ? ) FOR UPDATE ";
  760.         break;
  761.       case DDConstants.SELECT_FOR_UPDATE_NO_WAIT:
  762.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.studentID = ? ) FOR UPDATE NOWAIT ";
  763.         break;
  764.       default:
  765.         throw new AssertionError(
  766.         "Unknown selectForUpdate type: '"+selectForUpdateVal+"'");
  767.     }
  768.     if(__WL_verbose) {
  769.       Debug.say("Finder produced statement string " + __WL_query);
  770.     }
  771.     
  772.     try {
  773.       __WL_con = __WL_pm.getConnection();
  774.     } 
  775.     catch (java.lang.Exception e) {
  776.       __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  777.       throw new javax.ejb.FinderException("Couldn't get connection: " + EOL +
  778.         e.toString() + EOL +
  779.         RDBMSUtils.throwable2StackTrace(e));
  780.     }
  781.     
  782.     try {
  783.       __WL_stmt = __WL_con.prepareStatement(__WL_query);
  784.       // preparedStatementParamIndex reset.
  785.        if (param0 == null) { __WL_stmt.setNull(1,java.sql.Types.VARCHAR); } else { __WL_stmt.setString(1, param0); if (__WL_verbose) { Debug.say("paramIdx :"+1+" binded with value :"+param0); } }
  786.       __WL_rs = __WL_stmt.executeQuery();
  787.       
  788.        Map __WL_pkMap = new HashMap();
  789.       boolean __WL_isMulti = false;
  790.       while (__WL_rs.next()) {
  791.          Integer __WL_offsetIntObj = new Integer(0); Object __WL_pk = __WL_getPKFromRS(__WL_rs, __WL_offsetIntObj, __WL_classLoader); __WL_eo = null; if (__WL_pk != null) {  RSInfo __WL_rsInfo = new RSInfoImpl(__WL_rs, 0, 0); __WL_bean = (cmpsample.Student_z53p80__WebLogic_CMP_RDBMS)__WL_pm.getBeanFromRS(__WL_pk, __WL_rsInfo); __WL_eo = __WL_pm.finderGetEoFromBeanOrPk(__WL_bean, __WL_pk, __WL_getIsLocal()); if (__WL_verbose) Debug.say("bean after finder load: " + __WL_bean); Object __WL_retVal = __WL_pkMap.put(__WL_pk, __WL_bean); if (__WL_retVal!=null) __WL_isMulti=true; }
  792.       }
  793.       if (__WL_pkMap.size() == 0) {
  794.         if(__WL_verbose) {
  795.           Debug.say("Throwing FinderException because bean wasn't found.");
  796.         }
  797.         throw new javax.ejb.ObjectNotFoundException("Bean not found in 'findByAddress_n6e4pc__WebLogic_CMP_RDBMS_studentBean_address__WL_'.");
  798.       }
  799.       if (__WL_isMulti || __WL_pkMap.size() > 1) {
  800.         Loggable l = EJBLogger.logfinderReturnedMultipleValuesLoggable("findByAddress_n6e4pc__WebLogic_CMP_RDBMS_studentBean_address__WL_");
  801.         throw new javax.ejb.FinderException(l.getMessage());
  802.       }
  803.       return __WL_eo;
  804.   } catch (javax.ejb.FinderException fe) {
  805.     throw fe;
  806.   } catch (java.sql.SQLException sqle) {
  807.     throw new javax.ejb.FinderException(
  808.       "Problem in findByAddress_n6e4pc__WebLogic_CMP_RDBMS_studentBean_address__WL_ while preparing or executing " +
  809.       "statement: '" +
  810.       __WL_stmt + "': " + EOL +
  811.       sqle.toString() + EOL +
  812.       RDBMSUtils.throwable2StackTrace(sqle));
  813.   } catch (Exception e) {
  814.     throw new javax.ejb.FinderException(
  815.       "Exception raised in findByAddress_n6e4pc__WebLogic_CMP_RDBMS_studentBean_address__WL_ " + EOL +
  816.       e.toString() + EOL +
  817.       RDBMSUtils.throwable2StackTrace(e));
  818.   } finally {
  819.     __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  820.     
  821.   }
  822. }
  823.    // loadGroup method for the 'defaultGroup' group. public void __WL_loadGroup0() throws Exception {     java.sql.Connection __WL_con = null;
  824.     java.sql.PreparedStatement __WL_stmt = null;
  825.     java.sql.ResultSet __WL_rs = null;
  826.     int __WL_offset = 0;
  827.     int selectForUpdateVal = __WL_pm.getSelectForUpdateValue();
  828.     java.lang.String __WL_query;
  829.     // http://bugs.beasys.com/CRView?CR=CR070260
  830.     //
  831.     //  optimization.
  832.     switch(selectForUpdateVal) {
  833.       case DDConstants.SELECT_FOR_UPDATE_DISABLED:
  834.         __WL_query = "SELECT WL0.firstname, WL0.lastname, WL0.studentID  FROM student WL0  WHERE WL0.studentID = ? ";
  835.         break;
  836.       case DDConstants.SELECT_FOR_UPDATE:
  837.         __WL_query = "SELECT WL0.firstname, WL0.lastname, WL0.studentID  FROM student WL0  WHERE WL0.studentID = ?  FOR UPDATE ";
  838.         break;
  839.       case DDConstants.SELECT_FOR_UPDATE_NO_WAIT:
  840.         __WL_query = "SELECT WL0.firstname, WL0.lastname, WL0.studentID  FROM student WL0  WHERE WL0.studentID = ?  FOR UPDATE NOWAIT ";
  841.         break;
  842.       default:
  843.         throw new AssertionError(
  844.         "Unknown selectForUpdate type: '"+selectForUpdateVal+"'");
  845.     }
  846.     
  847.     try {
  848.       if (__WL_verbose) {
  849.         Debug.say("__WL_loadGroup0 for pk=" + __WL_ctx.getPrimaryKey());
  850.       }
  851.       java.lang.String __WL_pk = (java.lang.String) __WL_ctx.getPrimaryKey();
  852.       __WL_con = __WL_pm.getConnection();
  853.       __WL_stmt = __WL_con.prepareStatement(__WL_query);
  854.       // preparedStatementParamIndex reset.
  855.        if(!__WL_pm.setParamNull(__WL_stmt, 1, __WL_pk, "studentID")) { __WL_stmt.setString(1, __WL_pk); if (__WL_verbose) { Debug.say("paramIdx :"+1+" binded with value :"+__WL_pk); } }
  856.       if (__WL_verbose) {
  857.         Debug.say("__WL_loadGroup0 for pk=" + __WL_ctx.getPrimaryKey() + 
  858.                   ", executeQuery: "+__WL_query);
  859.       }
  860.       __WL_rs = __WL_stmt.executeQuery();
  861.       if (__WL_rs.next()) {
  862.         if (__WL_verbose) {
  863.           Debug.say("__WL_loadGroup0 for pk=" + __WL_ctx.getPrimaryKey() + 
  864.                     " now read columns from Results.");
  865.         }
  866.      
  867.         
  868.         if (!(this.__WL_isLoaded[1] || this.__WL_isModified[1])) { this.firstname = (java.lang.String)__WL_rs.getString(1+__WL_offset); if (__WL_rs.wasNull()) {  this.firstname = null; } } else { __WL_rs.getString(1+__WL_offset); } if (!(this.__WL_isLoaded[2] || this.__WL_isModified[2])) { this.lastname = (java.lang.String)__WL_rs.getString(2+__WL_offset); if (__WL_rs.wasNull()) {  this.lastname = null; } } else { __WL_rs.getString(2+__WL_offset); } if (!(this.__WL_isLoaded[0] || this.__WL_isModified[0])) { this.studentID = (java.lang.String)__WL_rs.getString(3+__WL_offset); if (__WL_rs.wasNull()) {  this.studentID = null; } } else { __WL_rs.getString(3+__WL_offset); } this.__WL_isLoaded[1] = true; this.__WL_isLoaded[2] = true; this.__WL_isLoaded[0] = true; this.__WL_beanIsLoaded = true;
  869.         
  870.         __WL_beanIsLoaded = true;
  871.         
  872.       } else {
  873.         if(__WL_verbose) {
  874.           Debug.say("__WL_loadGroup0 could not find primary key " +
  875.                     __WL_pk);
  876.         }
  877.         Loggable l = EJBLogger.lognoSuchEntityExceptionLoggable(__WL_pk.toString());
  878.         throw new NoSuchEntityException(l.getMessage());
  879.               
  880.       }
  881.     } finally {
  882.       __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  883.     }
  884.     
  885. }
  886.    // loadGroup from ResultSet to bean method for the 'defaultGroup' group. public void __WL_loadGroup0FromRS (java.sql.ResultSet __WL_rs,  java.lang.Integer __WL_offsetIntObj,  cmpsample.Student_z53p80_Intf beanIntf)  throws java.sql.SQLException, java.lang.Exception { cmpsample.Student_z53p80__WebLogic_CMP_RDBMS __WL_bean = (cmpsample.Student_z53p80__WebLogic_CMP_RDBMS)beanIntf; if (__WL_verbose) { Debug.say("__WL_loadGroup0FromRS"); } int __WL_offset = __WL_offsetIntObj.intValue(); if (!(__WL_bean.__WL_isLoaded[0] || __WL_bean.__WL_isModified[0])) { __WL_bean.studentID = (java.lang.String)__WL_rs.getString(1+__WL_offset); if (__WL_rs.wasNull()) {  __WL_bean.studentID = null; } } else { __WL_rs.getString(1+__WL_offset); } if (!(__WL_bean.__WL_isLoaded[1] || __WL_bean.__WL_isModified[1])) { __WL_bean.firstname = (java.lang.String)__WL_rs.getString(2+__WL_offset); if (__WL_rs.wasNull()) {  __WL_bean.firstname = null; } } else { __WL_rs.getString(2+__WL_offset); } if (!(__WL_bean.__WL_isLoaded[2] || __WL_bean.__WL_isModified[2])) { __WL_bean.lastname = (java.lang.String)__WL_rs.getString(3+__WL_offset); if (__WL_rs.wasNull()) {  __WL_bean.lastname = null; } } else { __WL_rs.getString(3+__WL_offset); } __WL_bean.__WL_isLoaded[1] = true; __WL_bean.__WL_isLoaded[2] = true; __WL_bean.__WL_isLoaded[0] = true; __WL_bean.__WL_beanIsLoaded = true; __WL_beanIsLoaded = true; }
  887.    public void __WL_loadCMRFieldFromRS_address (java.sql.ResultSet __WL_rs,  java.lang.Integer __WL_offsetIntObj,  cmpsample.Student_z53p80_Intf beanIntf)  throws java.sql.SQLException, java.lang.Exception { cmpsample.Student_z53p80__WebLogic_CMP_RDBMS __WL_bean = (cmpsample.Student_z53p80__WebLogic_CMP_RDBMS)beanIntf; if (__WL_verbose) { Debug.say("__WL_loadCMRFieldFromRS_address"); } int __WL_offset = __WL_offsetIntObj.intValue(); if (!(__WL_bean.__WL_isLoaded[0] || __WL_bean.__WL_isModified[0])) { __WL_bean.studentID = (java.lang.String)__WL_rs.getString(1+__WL_offset); if (__WL_rs.wasNull()) {  __WL_bean.studentID = null; } } else { __WL_rs.getString(1+__WL_offset); } __WL_bean.__WL_isLoaded[0] = true; } public void __WL_loadCMRFieldFromRS_roster (java.sql.ResultSet __WL_rs,  java.lang.Integer __WL_offsetIntObj,  cmpsample.Student_z53p80_Intf beanIntf)  throws java.sql.SQLException, java.lang.Exception { cmpsample.Student_z53p80__WebLogic_CMP_RDBMS __WL_bean = (cmpsample.Student_z53p80__WebLogic_CMP_RDBMS)beanIntf; if (__WL_verbose) { Debug.say("__WL_loadCMRFieldFromRS_roster"); } int __WL_offset = __WL_offsetIntObj.intValue(); if (!(__WL_bean.__WL_isLoaded[0] || __WL_bean.__WL_isModified[0])) { __WL_bean.studentID = (java.lang.String)__WL_rs.getString(1+__WL_offset); if (__WL_rs.wasNull()) {  __WL_bean.studentID = null; } } else { __WL_rs.getString(1+__WL_offset); } __WL_bean.__WL_isLoaded[0] = true; }
  888.   public static Object __WL_getPKFromRS(java.sql.ResultSet __WL_rs, java.lang.Integer __WL_offsetIntObj, ClassLoader __WL_classLoader)
  889.     throws java.sql.SQLException, java.lang.Exception
  890.   {
  891.     int __WL_offset = __WL_offsetIntObj.intValue();
  892.     java.lang.String __WL_pk = null;
  893.     
  894.     __WL_pk = (java.lang.String)__WL_rs.getString(1+__WL_offset); if (__WL_rs.wasNull()) {  __WL_pk = null; }
  895.     
  896.     return __WL_pk;
  897.   }
  898.   public Object __WL_getPKFromRSInstance(java.sql.ResultSet __WL_rs, java.lang.Integer __WL_offsetIntObj, ClassLoader __WL_classLoader)
  899.     throws java.sql.SQLException, java.lang.Exception
  900.   {
  901.     return __WL_getPKFromRS(__WL_rs, __WL_offsetIntObj, __WL_classLoader);
  902.   }
  903.   //End finder methods.
  904.   //=================================================================
  905.   //=================================================================
  906.   //Home methods.
  907.   
  908.   //End home methods.
  909.   //=================================================================
  910.   //=================================================================
  911.   // ejbSelect methods defined in this Bean's abstract class
  912.   
  913.   //=================================================================
  914.   // ejbSelectInternal methods that are to run in this Bean
  915.   
  916.   //=================================================================
  917.   // ================================================================
  918.   // Implementation of CMPBean
  919.   public void __WL_setup(java.util.Map bmMap, PersistenceManager __WL_pm) {
  920.     if (__WL_verbose) {
  921.       Debug.say("Student_z53p80__WebLogic_CMP_RDBMS.setup called.");
  922.     }
  923.     if (__WL_debug) {
  924.       Debug.assertion(bmMap!=null);
  925.       Debug.assertion(__WL_pm !=null);
  926.     }
  927.     this.__WL_pm = (RDBMSPersistenceManager)__WL_pm; 
  928.     this.__WL_classLoader = this.__WL_pm.getClassLoader();
  929.     if (__WL_debug) {
  930.       Debug.assertion(this.__WL_classLoader != null);
  931.     }
  932.     try {__WL_roster_finder_ = cmpsample.Roster_2prm6y_Intf.class.getMethod("ejbFindByStudent_z53p80__WebLogic_CMP_RDBMS_roster__WL_", new Class[] {java.lang.String.class }); __WL_address_finder_ = cmpsample.Address_n6e4pc_Intf.class.getMethod("ejbFindByStudent_z53p80__WebLogic_CMP_RDBMS_address__WL_", new Class[] {java.lang.String.class }); __WL_address_bm = (CMPBeanManager)bmMap.get("Address"); if (__WL_debug) Debug.assertion(bmMap.get("Address")!=null); __WL_roster_bm = (CMPBeanManager)bmMap.get("Roster"); if (__WL_debug) Debug.assertion(bmMap.get("Roster")!=null);     } catch (RuntimeException re) {
  933.       if (__WL_verbose) {
  934.         Debug.say("rethrowing RuntimeException.");
  935.         re.printStackTrace();
  936.       }
  937.       throw re;
  938.     } catch (Exception ex) {
  939.       if (__WL_verbose) {
  940.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  941.         ex.printStackTrace();
  942.       }
  943.       throw new PersistenceRuntimeException(ex);
  944.     }
  945.     
  946.   }
  947.   public EntityContext __WL_getEntityContext() {
  948.     return __WL_ctx;
  949.   }
  950.   public Object __WL_getPrimaryKey() {
  951.     java.lang.String __WL_pk = null; __WL_pk = this.studentID; return __WL_pk;
  952.   }
  953.   public void __WL_superEjbLoad()  {
  954.     int oldState = __WL_method_state;
  955.     try {
  956.       __WL_method_state = STATE_EJBLOAD;
  957.       super.ejbLoad();
  958.     } finally {
  959.       __WL_method_state = oldState;
  960.     }
  961.   }
  962.   public void __WL_superEjbStore()  {
  963.     int oldState = __WL_method_state;
  964.     try {
  965.       __WL_method_state = STATE_EJBSTORE;
  966.       if (__WL_verbose) {
  967.         Debug.say("__WL_superEjbStore "+ __WL_ctx.getPrimaryKey());
  968.       }
  969.       super.ejbStore();
  970.     } finally {
  971.       __WL_method_state = oldState;
  972.     }
  973.   }
  974.   public void __WL_superEjbRemove()  throws javax.ejb.RemoveException {
  975.         int oldState = __WL_method_state;
  976.     try {
  977.       __WL_method_state = STATE_EJB_REMOVE;
  978.       if (__WL_verbose) {
  979.         Debug.say("__WL_superEjbRemove " + __WL_ctx.getPrimaryKey());
  980.       }
  981.       super.ejbRemove();
  982.        getRoster(); ((Student_z53p80__WebLogic_CMP_RDBMS_roster_Set)__WL_roster_field_).clear(true); getAddress(); ((Student_z53p80__WebLogic_CMP_RDBMS_address_Set)__WL_address_field_).clear(true);
  983.       
  984.       
  985.       // initialize state before this instance goes back into the pool
  986.       if (!__WL_getIsRemoved()) __WL_initialize();
  987.     } finally {
  988.       __WL_method_state = oldState;
  989.     }
  990.   }
  991.   public void __WL_copyFrom(CMPBean otherBean, boolean __WL_initSnapshotVars) {
  992.     Student_z53p80__WebLogic_CMP_RDBMS __WL_bean = null; try { __WL_bean = (Student_z53p80__WebLogic_CMP_RDBMS)otherBean;     } catch (RuntimeException re) {
  993.       if (__WL_verbose) {
  994.         Debug.say("rethrowing RuntimeException.");
  995.         re.printStackTrace();
  996.       }
  997.       throw re;
  998.     } catch (Exception ex) {
  999.       if (__WL_verbose) {
  1000.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  1001.         ex.printStackTrace();
  1002.       }
  1003.       throw new PersistenceRuntimeException(ex);
  1004.     }
  1005. if (!(this.__WL_isLoaded[0] || this.__WL_isModified[0])) { if (__WL_bean.__WL_isLoaded[0]) { if (__WL_verbose) { Debug.say("copying field 'studentID' to bean '" + __WL_bean.__WL_getPrimaryKey() + "'."); } this.studentID = __WL_bean.studentID; this.__WL_isLoaded[0] = true; if (!__WL_initSnapshotVars) this.__WL_isModified[0] = true; } } if (!(this.__WL_isLoaded[1] || this.__WL_isModified[1])) { if (__WL_bean.__WL_isLoaded[1]) { if (__WL_verbose) { Debug.say("copying field 'firstname' to bean '" + __WL_bean.__WL_getPrimaryKey() + "'."); } this.firstname = __WL_bean.firstname; this.__WL_isLoaded[1] = true; if (!__WL_initSnapshotVars) this.__WL_isModified[1] = true; } } if (!(this.__WL_isLoaded[2] || this.__WL_isModified[2])) { if (__WL_bean.__WL_isLoaded[2]) { if (__WL_verbose) { Debug.say("copying field 'lastname' to bean '" + __WL_bean.__WL_getPrimaryKey() + "'."); } this.lastname = __WL_bean.lastname; this.__WL_isLoaded[2] = true; if (!__WL_initSnapshotVars) this.__WL_isModified[2] = true; } } this.__WL_modifiedBeanIsRegistered = __WL_bean.__WL_modifiedBeanIsRegistered; this.__WL_beanIsLoaded = __WL_bean.__WL_beanIsLoaded; if (!this.__WL_address_isLoaded_) { if (__WL_bean.__WL_address_isLoaded_==true) { if (__WL_verbose) { Debug.say("copying cmr field 'address' to bean '" + __WL_bean.__WL_getPrimaryKey() + "'."); } this.__WL_address_field_ = __WL_bean.__WL_address_field_; this.__WL_address_isLoaded_ = true; } } if (!this.__WL_roster_isLoaded_) { if (__WL_bean.__WL_roster_isLoaded_==true) { if (__WL_verbose) { Debug.say("copying cmr field 'roster' to bean '" + __WL_bean.__WL_getPrimaryKey() + "'."); } this.__WL_roster_field_ = __WL_bean.__WL_roster_field_; this.__WL_roster_isLoaded_ = true; } }
  1006.   }
  1007.   public void __WL_loadGroupByIndex(int index, java.sql.ResultSet rs,
  1008.     Integer offset, javax.ejb.EntityBean eb) throws Exception
  1009.   {
  1010.     switch(index) {
  1011.       case 0: __WL_loadGroup0FromRS(rs, offset,(cmpsample.Student_z53p80__WebLogic_CMP_RDBMS)eb); break; default: throw new AssertionError("Bad Group index: "+index);
  1012.     }
  1013.   }
  1014.   public void __WL_loadCMRFieldByCmrField(String cmrField, java.sql.ResultSet rs,
  1015.     Integer offset, javax.ejb.EntityBean eb) throws Exception
  1016.   {
  1017.     if ("address".equalsIgnoreCase(cmrField)) __WL_loadCMRFieldFromRS_address(rs, offset,(cmpsample.Student_z53p80__WebLogic_CMP_RDBMS)eb); if ("roster".equalsIgnoreCase(cmrField)) __WL_loadCMRFieldFromRS_roster(rs, offset,(cmpsample.Student_z53p80__WebLogic_CMP_RDBMS)eb);
  1018.   }
  1019.   public PersistenceManager __WL_getPersistenceManager() {
  1020.     return __WL_pm;
  1021.   }
  1022.   public void __WL_makeCascadeDelList(java.util.Map mapCascadeDelBeans,
  1023.                                  java.util.List listCascadeDelBeans,
  1024.                                  java.util.List listCascadeDelBeansWithoutDBUpdate,
  1025.                                  boolean withoutDBUpdate)
  1026.     throws java.lang.Exception
  1027.   {
  1028.     
  1029.     int oldState = __WL_method_state;
  1030.     __WL_method_state = STATE_EJB_REMOVE;
  1031.     // create a unique mapKey to map beans to mapCascadeDelBeans
  1032.     // re-use weblogic.ejb20.cache.CacheKey class since it take two
  1033.     // objects to create the key
  1034.     Object pk = __WL_ctx.getPrimaryKey();
  1035.     Object beanManager = __WL_pm.getBeanManager();
  1036.     weblogic.ejb20.cache.CacheKey mapKey =
  1037.       new weblogic.ejb20.cache.CacheKey(pk, (CachingManager)beanManager);
  1038.     // step 1:
  1039.     // keep track of all of the beans been visited is the map to detect the circular case
  1040.     if (mapCascadeDelBeans.get(mapKey) == null) {
  1041.       mapCascadeDelBeans.put(mapKey, this);
  1042.     }
  1043.     else {
  1044.       if (__WL_verbose) {
  1045.         Debug.say("Trying to add " + mapKey + " to list during cascade delete, " +
  1046.           "but it already exists in the list, a possible circular detect, ignored.");
  1047.       }
  1048.       return;
  1049.     }
  1050.     // step 2:
  1051.     // This is the place every bean bean added to the list.
  1052.     // true  if don't need a database update, db-cascade-delete is specified
  1053.     // false if do need a database update, db-cascade-detelet isn't specified
  1054.     if (withoutDBUpdate) {
  1055.       listCascadeDelBeansWithoutDBUpdate.add(this);
  1056.     } else {
  1057.       listCascadeDelBeans.add(this);
  1058.     }
  1059.     __WL_method_state = oldState;
  1060.   }
  1061.   public void __WL_setBeanParamsForCreateArray(
  1062.     java.sql.PreparedStatement[] __WL_stmt_array)
  1063.     throws Exception
  1064.   {
  1065.     
  1066.     // preparedStatementParamIndex reset. if(!__WL_pm.setParamNull(__WL_stmt_array[0], 1, this.studentID, "studentID")) { __WL_stmt_array[0].setString(1, this.studentID); if (__WL_verbose) { Debug.say("paramIdx :"+1+" binded with value :"+this.studentID); } } if(!__WL_pm.setParamNull(__WL_stmt_array[0], 2, this.firstname, "firstname")) { __WL_stmt_array[0].setString(2, this.firstname); if (__WL_verbose) { Debug.say("paramIdx :"+2+" binded with value :"+this.firstname); } } if(!__WL_pm.setParamNull(__WL_stmt_array[0], 3, this.lastname, "lastname")) { __WL_stmt_array[0].setString(3, this.lastname); if (__WL_verbose) { Debug.say("paramIdx :"+3+" binded with value :"+this.lastname); } }
  1067.   }
  1068.   public void __WL_setBeanParamsForUpdateArray(
  1069.     java.sql.PreparedStatement[] __WL_stmt_array,
  1070.     boolean[] __WL_isModified,
  1071.     java.lang.String __WL_pk,
  1072.     int curTableIndex)
  1073.     throws Exception
  1074.   {
  1075.     // set all __WL_stmt_array when curTableIndex == -1
  1076.       if ((__WL_stmt_array[0] != null) && ((curTableIndex == 0) || (curTableIndex == -1))) {
  1077.     int __WL_num = 1;
  1078.     if (__WL_isModified[1]) { if(__WL_verbose) Debug.say("setting("+this+") 'firstname' using column " +__WL_num + ". Value is " + this.firstname); if(!__WL_pm.setParamNull(__WL_stmt_array[0], __WL_num, this.firstname, "firstname")) { __WL_stmt_array[0].setString(__WL_num, this.firstname); if (__WL_verbose) { Debug.say("paramIdx :"+__WL_num+" binded with value :"+this.firstname); } } __WL_num++; }; if (__WL_isModified[2]) { if(__WL_verbose) Debug.say("setting("+this+") 'lastname' using column " +__WL_num + ". Value is " + this.lastname); if(!__WL_pm.setParamNull(__WL_stmt_array[0], __WL_num, this.lastname, "lastname")) { __WL_stmt_array[0].setString(__WL_num, this.lastname); if (__WL_verbose) { Debug.say("paramIdx :"+__WL_num+" binded with value :"+this.lastname); } } __WL_num++; };
  1079.     
  1080.      if(!__WL_pm.setParamNull(__WL_stmt_array[0], __WL_num, __WL_pk, "studentID")) { __WL_stmt_array[0].setString(__WL_num, __WL_pk); if (__WL_verbose) { Debug.say("paramIdx :"+__WL_num+" binded with value :"+__WL_pk); } } __WL_num++;
  1081.     
  1082.   }
  1083.   }
  1084.   public void __WL_setBeanParamsForDeleteArray(
  1085.     java.sql.PreparedStatement[] __WL_stmt_array,
  1086.     boolean[] __WL_isModified,
  1087.     java.lang.String __WL_pk)
  1088.     throws Exception
  1089.   {
  1090.     int __WL_num = 0; __WL_num = 1; if(!__WL_pm.setParamNull(__WL_stmt_array[0], __WL_num, __WL_pk, "studentID")) { __WL_stmt_array[0].setString(__WL_num, __WL_pk); if (__WL_verbose) { Debug.say("paramIdx :"+__WL_num+" binded with value :"+__WL_pk); } } __WL_num++;
  1091.   }
  1092.   public java.sql.PreparedStatement[] __WL_getStmtArray(
  1093.     java.sql.Connection __WL_con,
  1094.     boolean[] __WL_isModified,
  1095.     int operation)
  1096.     throws SQLException
  1097.   {
  1098.         if (__WL_verbose) {
  1099.       Debug.say("called __WL_getStmtArray.");
  1100.     }
  1101.      java.sql.PreparedStatement[] __WL_stmt_array = new java.sql.PreparedStatement[1]; java.sql.PreparedStatement __WL_stmt_student_0 = null; __WL_stmt_array[0] = __WL_stmt_student_0;
  1102.      String[] __WL_query_array = new String[1];
  1103.     if (operation == DDConstants.INSERT) {
  1104.       __WL_query_array[0] = "INSERT INTO student (studentID, firstname, lastname) VALUES (?, ?, ?)";
  1105.     } else if (operation == DDConstants.UPDATE) {
  1106.       int __WL_count        = 0;
  1107.       
  1108.       StringBuffer sb      = new StringBuffer();
  1109.       
  1110.       __WL_count = 0; sb.setLength(0); if (__WL_isModified[1])  { if (__WL_count > 0) sb.append(", "); sb.append("firstname = ? "); __WL_count++; } if (__WL_isModified[2])  { if (__WL_count > 0) sb.append(", "); sb.append("lastname = ? "); __WL_count++; } if (__WL_count != 0) { __WL_query_array[0] = "UPDATE student SET " + sb.toString() + " WHERE studentID = ?"; }
  1111.     } else if (operation == DDConstants.DELETE) {
  1112.       
  1113.       __WL_query_array[0] = "DELETE FROM student WHERE studentID = ?" ;
  1114.     }
  1115.     if(__WL_verbose) {
  1116.       for (int i = 0 ; i < 1 ; i++) {
  1117.         Debug.say("__WL_getStmtArray() for " + operation + " produced sqlString: " + __WL_query_array[i]);
  1118.       }
  1119.     }
  1120.      if (__WL_query_array[0] != null) __WL_stmt_array[0] = __WL_con.prepareStatement(__WL_query_array[0]);
  1121.     return __WL_stmt_array;
  1122.   }
  1123.   public void __WL_setBeanParamsForStmtArray(
  1124.     java.sql.PreparedStatement[] __WL_stmt_array,
  1125.     boolean[] __WL_isModified,
  1126.     int operation)
  1127.     throws Exception
  1128.   {
  1129.         if (operation == DDConstants.INSERT) {
  1130.       __WL_setBeanParamsForCreateArray(__WL_stmt_array);
  1131.     } else if (operation == DDConstants.UPDATE) {
  1132.       __WL_setBeanParamsForBulkUpdateArray(__WL_stmt_array, __WL_isModified);
  1133.     } else if (operation == DDConstants.DELETE) {
  1134.       __WL_setBeanParamsForBulkDeleteArray(__WL_stmt_array, __WL_isModified);
  1135.     }
  1136.   }
  1137.   public void __WL_setBeanParamsForBulkUpdateArray(
  1138.     java.sql.PreparedStatement[] __WL_stmt_array,
  1139.     boolean[] __WL_isModified)
  1140.     throws Exception
  1141.   {
  1142.       int oldState = __WL_method_state;
  1143.   try {
  1144.     __WL_method_state = STATE_EJBSTORE;
  1145.     java.lang.String __WL_pk = (java.lang.String) __WL_ctx.getPrimaryKey();
  1146.     __WL_setBeanParamsForUpdateArray(__WL_stmt_array, __WL_isModified, __WL_pk, -1);
  1147.   } finally {
  1148.     __WL_method_state = oldState;
  1149.   }
  1150.   }
  1151.   public void __WL_setBeanParamsForBulkDeleteArray(
  1152.     java.sql.PreparedStatement[] __WL_stmt_array,
  1153.     boolean[] __WL_isModified)
  1154.     throws Exception
  1155.   {
  1156.       int oldState = __WL_method_state;
  1157.   try {
  1158.     __WL_method_state = STATE_EJB_REMOVE;
  1159.     java.lang.String __WL_pk = (java.lang.String) __WL_ctx.getPrimaryKey();
  1160.     __WL_setBeanParamsForDeleteArray(__WL_stmt_array, __WL_isModified, __WL_pk);
  1161.   } finally {
  1162.     __WL_method_state = oldState;
  1163.   }
  1164.   }
  1165.   public boolean[] __WL_getIsModifiedUnion(boolean[] __WL_isModifiedUnion) {
  1166.       if (__WL_isModifiedUnion == null) return __WL_isModified;
  1167.   for (int i=0; i<__WL_isModified.length; i++) {
  1168.     __WL_isModifiedUnion[i] |= __WL_isModified[i];
  1169.   }
  1170.   return __WL_isModifiedUnion;
  1171.   }
  1172.   public void __WL_setIsModifiedVars(boolean __WL_isModifiedFlag,
  1173.                                      java.sql.Connection __WL_con)
  1174.     throws Exception
  1175.   {
  1176.       int oldState = __WL_method_state;
  1177.   try {
  1178.     __WL_method_state = STATE_EJBSTORE;
  1179.     int __WL_num = 1;
  1180.     java.lang.String __WL_pk = (java.lang.String) __WL_ctx.getPrimaryKey();
  1181.     
  1182.     for (int __WL_i = 0; __WL_i < __WL_isModified.length; __WL_i++) {
  1183.       __WL_isModified[__WL_i] = __WL_isModifiedFlag;
  1184.     }
  1185.     __WL_modifiedBeanIsRegistered = __WL_isModifiedFlag;
  1186.   } finally {
  1187.     __WL_method_state = oldState;
  1188.   }
  1189.   }
  1190.   public void __WL_perhapsTakeSnapshot() {
  1191.     
  1192.     
  1193.   }
  1194.   public boolean __WL_exists(Object __WL_key) {
  1195.         if (__WL_verbose) {
  1196.       Debug.say("exists: " + __WL_key);
  1197.     }
  1198.     java.sql.Connection __WL_con = null;
  1199.     java.sql.PreparedStatement __WL_stmt = null;
  1200.     java.sql.ResultSet __WL_rs = null;
  1201.     try {
  1202.       java.lang.String __WL_pk = (java.lang.String) __WL_key;
  1203.       __WL_con = __WL_pm.getConnection();
  1204.       java.lang.String __WL_query =
  1205.         "select studentID from student where studentID = ?";
  1206.       __WL_stmt = __WL_con.prepareStatement(__WL_query);
  1207.       // preparedStatementParamIndex reset.
  1208.        if(!__WL_pm.setParamNull(__WL_stmt, 1, __WL_pk, "studentID")) { __WL_stmt.setString(1, __WL_pk); if (__WL_verbose) { Debug.say("paramIdx :"+1+" binded with value :"+__WL_pk); } }
  1209.       __WL_rs = __WL_stmt.executeQuery();
  1210.       if (__WL_rs.next()) {
  1211.         return true;
  1212.       }
  1213.       else {
  1214.         return false;
  1215.       }
  1216.         } catch (RuntimeException re) {
  1217.       if (__WL_verbose) {
  1218.         Debug.say("rethrowing RuntimeException.");
  1219.         re.printStackTrace();
  1220.       }
  1221.       throw re;
  1222.     } catch (Exception ex) {
  1223.       if (__WL_verbose) {
  1224.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  1225.         ex.printStackTrace();
  1226.       }
  1227.       throw new PersistenceRuntimeException(ex);
  1228.     }
  1229.     finally {
  1230.       __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  1231.     }
  1232.   }
  1233.   public void __WL_checkExistsOnMethod() throws NoSuchEntityException
  1234.   {
  1235.       if (__WL_getIsRemoved()) {
  1236.     Loggable l = EJBLogger.lognoSuchEntityExceptionLoggable(
  1237.       ((EntityEJBContextImpl)__WL_ctx).__WL_getPrimaryKey().toString());
  1238.     NoSuchEntityException nsee = new NoSuchEntityException(l.getMessage());
  1239.     if (__WL_verbose) {
  1240.       Debug.say("throwing RuntimeException.");
  1241.       nsee.printStackTrace();
  1242.     }
  1243.     throw nsee;
  1244.   }
  1245.   if (__WL_beanIsLoaded()) return;
  1246.   int oldState = __WL_method_state;
  1247.   
  1248.   try {
  1249.     __WL_method_state = WLEnterpriseBean.STATE_BUSINESS_METHOD;
  1250.     __WL_pm.disableTransactionStatusCheck();
  1251.     __WL_loadGroup0();
  1252.       } catch (RuntimeException re) {
  1253.       if (__WL_verbose) {
  1254.         Debug.say("rethrowing RuntimeException.");
  1255.         re.printStackTrace();
  1256.       }
  1257.       throw re;
  1258.     } catch (Exception ex) {
  1259.       if (__WL_verbose) {
  1260.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  1261.         ex.printStackTrace();
  1262.       }
  1263.       throw new PersistenceRuntimeException(ex);
  1264.     }
  1265.   finally {
  1266.     __WL_method_state = oldState;
  1267.     __WL_pm.enableTransactionStatusCheck();
  1268.   }
  1269.   }
  1270.   public short __WL_getBeanState() 
  1271.   {
  1272.     return __WL_bean_state;
  1273.   } 
  1274.   public void __WL_setBeanState(short value)
  1275.   {
  1276.     __WL_bean_state = value;
  1277.   }
  1278.   public boolean __WL_getIsRemoved() { return __WL_isRemoved; }
  1279.   public void __WL_setIsRemoved(boolean b) { __WL_isRemoved = b; }
  1280.   public int __WL_appendVerifySqlForBatch(java.util.List verifyPk, 
  1281.                                           StringBuffer[] verifySql, 
  1282.                                           int[] verifyCount,
  1283.                                           int verifyMax)
  1284.   {
  1285.     int oldState = __WL_method_state;
  1286.     try {
  1287.       __WL_method_state = STATE_EJBSTORE;
  1288.       
  1289.     }
  1290.     finally {
  1291.       __WL_method_state = oldState;
  1292.     }
  1293.     return verifyMax;
  1294.   }
  1295.   public void __WL_setVerifyParamsForBatch(java.sql.Connection con,
  1296.                                            java.sql.PreparedStatement[] __WL_stmt_array, 
  1297.                                            int[] verifyCount)
  1298.     throws SQLException 
  1299.   {
  1300.     
  1301.   }
  1302.   public int __WL_appendVerifySql(java.util.List verifyPk, 
  1303.                              StringBuffer[] verifySql, 
  1304.                              int[] verifyCount,
  1305.                              int verifyMax)
  1306.   {
  1307.     int oldState = __WL_method_state;
  1308.     try {
  1309.       __WL_method_state = STATE_EJBSTORE;
  1310.       
  1311.       
  1312.     }
  1313.     finally {
  1314.       __WL_method_state = oldState;
  1315.     }
  1316.     return verifyMax;
  1317.   }
  1318.   public void __WL_setVerifyParams(java.sql.Connection con,
  1319.                               java.sql.PreparedStatement[] __WL_stmt_array, 
  1320.                               int[] verifyCount)
  1321.     throws SQLException 
  1322.   {
  1323.     
  1324.   }
  1325.   public String __WL_getM2NSQL(String cmrf, int operation)
  1326.   {
  1327.     throw new AssertionError(" in __WL_getM2NSQL: unknown Many To Many cmr-field "+cmrf+".");
  1328.   }
  1329.   public Collection __WL_getCmrBeansForCmrField(String cmrf)
  1330.   {
  1331.     throw new AssertionError(" in __WL_getCmrBeansForCmrField: unknown Many To Many cmr-field "+cmrf+".");
  1332.   }
  1333.   // end of CMPBean
  1334.   // ================================================================
  1335.   //=================================================================
  1336.   // implementation of javax.ejb.EntityBean
  1337.   public boolean __WL_beanIsLoaded() { 
  1338.     return __WL_beanIsLoaded; 
  1339.   }
  1340.     void pkCheck()
  1341.     throws javax.ejb.CreateException
  1342.   {
  1343.     // check that 'studentID' was set if (!__WL_isModified[0]) { Loggable l = EJBLogger.logpkNotSetLoggable("Student","studentID");throw new javax.ejb.CreateException(l.getMessage()); }
  1344.   }
  1345.   public java.lang.String ejbCreate(java.lang.String arg0, java.lang.String arg1, java.lang.String arg2)
  1346.     throws javax.ejb.CreateException
  1347.   {
  1348.     int oldState = __WL_method_state;
  1349.     try {
  1350.       __WL_method_state = STATE_EJB_CREATE;
  1351.       for (int __WL_i = 0; __WL_i < 3; __WL_i++) {
  1352.         __WL_isLoaded[__WL_i] = true;
  1353.         __WL_isModified[__WL_i] = false;
  1354.       }
  1355.       __WL_beanIsLoaded = true;
  1356.       
  1357.       // set true, this prevents us from registering the bean until after the
  1358.       // database insert
  1359.       __WL_modifiedBeanIsRegistered = true;
  1360.        __WL_roster_isLoaded_ = false; __WL_address_isLoaded_ = false;
  1361.       // initialize persistent and cached relationship variables, this
  1362.       // is done here purely to ensure robustness as the CMP variables
  1363.       // are also initialized whenever the bean enters the pooled state
  1364.        lastname = null; studentID = null; firstname = null;
  1365.        __WL_roster_field_ = null; __WL_address_field_ = null;
  1366.       super.ejbCreate( arg0, arg1, arg2);
  1367.        pkCheck();
  1368.       
  1369.        java.lang.String __WL_pk = null; __WL_pk = (java.lang.String) __WL_getPrimaryKey(); return __WL_pk; } catch (javax.ejb.CreateException ce) { throw ce;     } catch (RuntimeException re) {
  1370.       if (__WL_verbose) {
  1371.         Debug.say("rethrowing RuntimeException.");
  1372.         re.printStackTrace();
  1373.       }
  1374.       throw re;
  1375.     } catch (Exception ex) {
  1376.       if (__WL_verbose) {
  1377.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  1378.         ex.printStackTrace();
  1379.       }
  1380.       throw new PersistenceRuntimeException(ex);
  1381.     }
  1382.     finally {
  1383.       __WL_method_state = oldState;
  1384.     }
  1385.   }
  1386. public java.lang.String ejbCreate(java.lang.String arg0)
  1387.     throws javax.ejb.CreateException
  1388.   {
  1389.     int oldState = __WL_method_state;
  1390.     try {
  1391.       __WL_method_state = STATE_EJB_CREATE;
  1392.       for (int __WL_i = 0; __WL_i < 3; __WL_i++) {
  1393.         __WL_isLoaded[__WL_i] = true;
  1394.         __WL_isModified[__WL_i] = false;
  1395.       }
  1396.       __WL_beanIsLoaded = true;
  1397.       
  1398.       // set true, this prevents us from registering the bean until after the
  1399.       // database insert
  1400.       __WL_modifiedBeanIsRegistered = true;
  1401.        __WL_roster_isLoaded_ = false; __WL_address_isLoaded_ = false;
  1402.       // initialize persistent and cached relationship variables, this
  1403.       // is done here purely to ensure robustness as the CMP variables
  1404.       // are also initialized whenever the bean enters the pooled state
  1405.        lastname = null; studentID = null; firstname = null;
  1406.        __WL_roster_field_ = null; __WL_address_field_ = null;
  1407.       super.ejbCreate( arg0);
  1408.        pkCheck();
  1409.       
  1410.        java.lang.String __WL_pk = null; __WL_pk = (java.lang.String) __WL_getPrimaryKey(); return __WL_pk; } catch (javax.ejb.CreateException ce) { throw ce;     } catch (RuntimeException re) {
  1411.       if (__WL_verbose) {
  1412.         Debug.say("rethrowing RuntimeException.");
  1413.         re.printStackTrace();
  1414.       }
  1415.       throw re;
  1416.     } catch (Exception ex) {
  1417.       if (__WL_verbose) {
  1418.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  1419.         ex.printStackTrace();
  1420.       }
  1421.       throw new PersistenceRuntimeException(ex);
  1422.     }
  1423.     finally {
  1424.       __WL_method_state = oldState;
  1425.     }
  1426.   }
  1427.   public void ejbPostCreate(java.lang.String arg0, java.lang.String arg1, java.lang.String arg2)
  1428.     throws javax.ejb.CreateException
  1429.   {
  1430.     int oldState = __WL_method_state;
  1431.     try {
  1432.       __WL_method_state = STATE_EJB_POSTCREATE;
  1433.       
  1434.       super.ejbPostCreate( arg0, arg1, arg2);
  1435.       if (!__WL_pm.getOrderDatabaseOperations()) __WL_create();
  1436.       
  1437.       } catch (javax.ejb.CreateException ce) { throw ce;
  1438.           } catch (RuntimeException re) {
  1439.       if (__WL_verbose) {
  1440.         Debug.say("rethrowing RuntimeException.");
  1441.         re.printStackTrace();
  1442.       }
  1443.       throw re;
  1444.     } catch (Exception ex) {
  1445.       if (__WL_verbose) {
  1446.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  1447.         ex.printStackTrace();
  1448.       }
  1449.       throw new PersistenceRuntimeException(ex);
  1450.     }
  1451.     finally {
  1452.       __WL_method_state = oldState;
  1453.     }
  1454.   }
  1455. public void ejbPostCreate(java.lang.String arg0)
  1456.     throws javax.ejb.CreateException
  1457.   {
  1458.     int oldState = __WL_method_state;
  1459.     try {
  1460.       __WL_method_state = STATE_EJB_POSTCREATE;
  1461.       
  1462.       super.ejbPostCreate( arg0);
  1463.       if (!__WL_pm.getOrderDatabaseOperations()) __WL_create();
  1464.       
  1465.       } catch (javax.ejb.CreateException ce) { throw ce;
  1466.           } catch (RuntimeException re) {
  1467.       if (__WL_verbose) {
  1468.         Debug.say("rethrowing RuntimeException.");
  1469.         re.printStackTrace();
  1470.       }
  1471.       throw re;
  1472.     } catch (Exception ex) {
  1473.       if (__WL_verbose) {
  1474.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  1475.         ex.printStackTrace();
  1476.       }
  1477.       throw new PersistenceRuntimeException(ex);
  1478.     }
  1479.     finally {
  1480.       __WL_method_state = oldState;
  1481.     }
  1482.   }
  1483.     private Object __WL_create() throws Exception {
  1484.     if (__WL_verbose) {
  1485.       Debug.say("called __WL_create.");
  1486.     }
  1487.     
  1488.     java.sql.Connection __WL_con = null;
  1489.      java.sql.PreparedStatement[] __WL_stmt_array = new java.sql.PreparedStatement[1]; java.sql.PreparedStatement __WL_stmt_student_0 = null; __WL_stmt_array[0] = __WL_stmt_student_0;
  1490.      String[] __WL_query_array = new String[1];
  1491.     java.lang.String __WL_pk = null;
  1492.     try {
  1493.       
  1494.        __WL_pk = this.studentID;
  1495.       __WL_con = __WL_pm.getConnection();
  1496.       if(__WL_verbose) {
  1497.         Debug.say("__WL_create() got connection.");
  1498.       }
  1499.       __WL_query_array[0] = "INSERT INTO student (studentID, firstname, lastname) VALUES (?, ?, ?)";
  1500.       if (__WL_verbose) {
  1501.         for (int i = 0 ; i < 1 ; i++) {
  1502.           Debug.say("__WL_create() produced sqlString " + __WL_query_array[i]);
  1503.         }
  1504.       }
  1505.        if (__WL_query_array[0] != null) __WL_stmt_array[0] = __WL_con.prepareStatement(__WL_query_array[0]);
  1506.       __WL_setBeanParamsForCreateArray(__WL_stmt_array);
  1507.       if(__WL_verbose) {
  1508.         Debug.say("__WL_create() about to execute sql.");
  1509.       }
  1510.       for (int i = 0 ; i < 1 ; i++) {
  1511.         if (__WL_stmt_array[i].executeUpdate() != 1) {
  1512.           throw new java.lang.Exception("Failed to CREATE Bean.  Primary Key Value: '" + __WL_pk + "'");
  1513.         }
  1514.       }
  1515.       
  1516.       for (int __WL_i = 0; __WL_i < __WL_isModified.length; __WL_i++) {
  1517.         __WL_isModified[__WL_i] = false;
  1518.       }
  1519.       __WL_modifiedBeanIsRegistered = false;
  1520.       return __WL_pk;
  1521.     } catch (java.sql.SQLException se) {
  1522.             //ejb wants a duplicate key exception if that was what happened
  1523.       if(__WL_verbose) {
  1524.         Debug.say("__WL_create() "+
  1525.            "checking for duplicate key " + __WL_pk);
  1526.       }
  1527.       boolean exists = false;
  1528.       try {
  1529.         exists = __WL_exists(__WL_pk);
  1530.       }
  1531.       catch (Exception e) {
  1532.         throw se;
  1533.       }
  1534.       if (exists) {
  1535.         Loggable l = EJBLogger.logduplicateKeyFoundLoggable(__WL_pk.toString());
  1536.         throw new javax.ejb.DuplicateKeyException(
  1537.              l.getMessage());
  1538.        }
  1539.       else {
  1540.         throw se;
  1541.       }
  1542.     } finally {
  1543.       __WL_pm.releaseArrayResources(__WL_con, __WL_stmt_array, null);
  1544.     }
  1545.   }
  1546.   public void ejbRemove() throws javax.ejb.RemoveException {     java.sql.Connection __WL_con = null;
  1547.      java.sql.PreparedStatement[] __WL_stmt_array = new java.sql.PreparedStatement[1]; java.sql.PreparedStatement __WL_stmt_student_0 = null; __WL_stmt_array[0] = __WL_stmt_student_0;
  1548.      String[] __WL_query_array = new String[1];
  1549.     
  1550.     java.sql.PreparedStatement __WL_stmt = null;
  1551.     int oldState = __WL_method_state;
  1552.     try {
  1553.       __WL_method_state = STATE_EJB_REMOVE;
  1554.       int __WL_num = 0;
  1555.       if (__WL_verbose) {
  1556.         Debug.say("ejbRemove " + __WL_ctx.getPrimaryKey());
  1557.       }
  1558.       super.ejbRemove();
  1559.       try {
  1560.          getRoster(); ((Student_z53p80__WebLogic_CMP_RDBMS_roster_Set)__WL_roster_field_).clear(true); getAddress(); ((Student_z53p80__WebLogic_CMP_RDBMS_address_Set)__WL_address_field_).clear(true);
  1561.         java.lang.String __WL_pk = (java.lang.String) __WL_ctx.getPrimaryKey();
  1562.         
  1563.         
  1564.         __WL_con = __WL_pm.getConnection();
  1565.         __WL_query_array[0] = "DELETE FROM student WHERE studentID = ?" ;
  1566.          if (__WL_query_array[0] != null) __WL_stmt_array[0] = __WL_con.prepareStatement(__WL_query_array[0]);
  1567.         __WL_setBeanParamsForDeleteArray(__WL_stmt_array, __WL_isModified, __WL_pk);
  1568.         for (int i = 0 ; i < 1 ; i++) {
  1569.           int j = __WL_stmt_array[i].executeUpdate();
  1570.           if (j == 0) {
  1571.              Loggable l = EJBLogger.logbeanDoesNotExistLoggable("Student",__WL_pk.toString());  throw new NoSuchEntityException(l.getMessage()); 
  1572.           }
  1573.         }
  1574.         // initialize state before this instance goes back into the pool
  1575.         __WL_initialize();
  1576.           } catch (RuntimeException re) {
  1577.       if (__WL_verbose) {
  1578.         Debug.say("rethrowing RuntimeException.");
  1579.         re.printStackTrace();
  1580.       }
  1581.       throw re;
  1582.     } catch (Exception ex) {
  1583.       if (__WL_verbose) {
  1584.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  1585.         ex.printStackTrace();
  1586.       }
  1587.       throw new PersistenceRuntimeException(ex);
  1588.     }
  1589.     } finally {
  1590.       __WL_method_state = oldState;
  1591.       __WL_pm.releaseArrayResources(__WL_con, __WL_stmt_array, null);
  1592.     }
  1593. }
  1594.   
  1595.   public void ejbLoad()
  1596.   {
  1597.     int oldState = __WL_method_state;
  1598.     try {
  1599.       __WL_method_state = STATE_EJBLOAD;
  1600.       __WL_initialize();
  1601.       super.ejbLoad();
  1602.     } finally {
  1603.       __WL_method_state = oldState;
  1604.     }
  1605.   }
  1606.    public void ejbStore() {     __WL_store(true);
  1607. }
  1608.   public void __WL_store(boolean unregister) 
  1609.   {
  1610.     
  1611.     java.sql.Connection __WL_con = null;
  1612.      java.sql.PreparedStatement[] __WL_stmt_array = new java.sql.PreparedStatement[1]; java.sql.PreparedStatement __WL_stmt_student_0 = null; __WL_stmt_array[0] = __WL_stmt_student_0;
  1613.     int oldState = __WL_method_state;
  1614.     try {
  1615.       __WL_method_state = STATE_EJBSTORE;
  1616.       if (__WL_verbose) {
  1617.         Debug.say("ejbStore "+ __WL_ctx.getPrimaryKey());
  1618.       }
  1619.       super.ejbStore();
  1620.       try {
  1621.         int __WL_num          = 0;
  1622.         int __WL_count        = 0;
  1623.         int __WL_total       = 0;
  1624.         
  1625.         java.lang.String __WL_pk     = (java.lang.String) __WL_ctx.getPrimaryKey();
  1626.         String __WL_query     = null;
  1627.         StringBuffer sb      = new StringBuffer();
  1628.         
  1629.         
  1630.         
  1631.         __WL_count = 0;
  1632.          sb.setLength(0); if (__WL_isModified[1])  { if (__WL_count > 0) sb.append(", "); sb.append("firstname = ? "); __WL_count++; } if (__WL_isModified[2])  { if (__WL_count > 0) sb.append(", "); sb.append("lastname = ? "); __WL_count++; }
  1633.         __WL_total = __WL_total + __WL_count + 0;
  1634.         if ( (__WL_count > 0) || (0 > 0) ) {
  1635.           __WL_con = __WL_pm.getConnection();
  1636.           if (__WL_count > 0) {
  1637.             // we have modified non-Blob/Clob Columns
  1638.             
  1639.             
  1640.             __WL_query = "UPDATE student SET " +
  1641.                         sb.toString() +
  1642.                         " WHERE studentID = ?" 
  1643.                         ;
  1644.             if(__WL_verbose) {
  1645.               Debug.say("WL_store sql: " + __WL_query);
  1646.             }
  1647.             __WL_stmt_array[0] = __WL_con.prepareStatement(__WL_query);
  1648.             __WL_setBeanParamsForUpdateArray(__WL_stmt_array, __WL_isModified, __WL_pk, 0);
  1649.             int __WL_i = __WL_stmt_array[0].executeUpdate();
  1650.             if (__WL_i == 0) {
  1651.                Loggable l = EJBLogger.logbeanDoesNotExistLoggable("Student",__WL_pk.toString());  throw new NoSuchEntityException(l.getMessage()); 
  1652.             }
  1653.           }
  1654.           if (0 > 0) {
  1655.             // we have modified Blob/Clob Columns
  1656.             
  1657.           }
  1658.         }
  1659.         if (__WL_total == 0) {
  1660.           if (__WL_verbose) {
  1661.             Debug.say("ejbStore: avoided a store.  ejbStore: complete");
  1662.           }
  1663.           return;
  1664.         }
  1665.         
  1666.         for (int __WL_i = 0; __WL_i < __WL_isModified.length; __WL_i++) {
  1667.           if (__WL_isModified[__WL_i]) {
  1668.             __WL_isModified[__WL_i] = false;
  1669.             __WL_isLoaded[__WL_i] = true;
  1670.           }
  1671.         }
  1672.         if (unregister) {
  1673.               __WL_pm.unregisterModifiedBean(__WL_ctx.getPrimaryKey());
  1674.         }
  1675.         __WL_modifiedBeanIsRegistered = false;
  1676.         
  1677.         if (__WL_verbose) {
  1678.           Debug.say("ejbStore: complete");
  1679.         }
  1680.           } catch (RuntimeException re) {
  1681.       if (__WL_verbose) {
  1682.         Debug.say("rethrowing RuntimeException.");
  1683.         re.printStackTrace();
  1684.       }
  1685.       throw re;
  1686.     } catch (Exception ex) {
  1687.       if (__WL_verbose) {
  1688.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  1689.         ex.printStackTrace();
  1690.       }
  1691.       throw new PersistenceRuntimeException(ex);
  1692.     }
  1693.     } 
  1694.     finally {
  1695.       __WL_method_state = oldState;
  1696.       __WL_pm.releaseArrayResources(__WL_con, __WL_stmt_array, null);
  1697.     }
  1698.   }
  1699.   public void ejbPassivate()
  1700.   {
  1701.     int oldState = __WL_method_state;
  1702.     try {
  1703.       __WL_method_state = STATE_EJB_PASSIVATE;
  1704.       super.ejbPassivate();
  1705.       __WL_initialize();
  1706.     } finally {
  1707.       __WL_method_state = oldState;
  1708.     }
  1709.   }
  1710.   // Blob/Clob methods
  1711.   
  1712.   // end javax.ejb.EntityBean
  1713.   //=================================================================
  1714. }