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

Java编程

开发平台:

Java

  1. /**
  2.  * This code was automatically generated at 13:53:50 on 2003-9-3
  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 com.cwj.entitybeandempcmp;
  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 com.cwj.entitybeandempcmp.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;
  119.   public java.lang.String studentID; public java.lang.String firstname; public java.lang.String lastname;
  120.   
  121.   
  122.   
  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.   
  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.     
  153.     //cached relationship state
  154.     
  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.   
  304.   
  305.   //=================================================================
  306.   //Finder methods.
  307.   public java.util.Collection ejbFindLastName(java.lang.String param0) throws javax.ejb.FinderException
  308.     {     if(__WL_verbose) {
  309.       Debug.say("called findLastName");
  310.     }
  311.     java.sql.Connection __WL_con = null;
  312.     java.sql.PreparedStatement __WL_stmt = null;
  313.     java.sql.ResultSet __WL_rs = null;
  314.     int __WL_offset = 0;
  315.     
  316.     __WL_pm.flushModifiedBeans();
  317.     int selectForUpdateVal = __WL_pm.getSelectForUpdateValue();
  318.     java.lang.String __WL_query = null;
  319.     switch(selectForUpdateVal) {
  320.       case DDConstants.SELECT_FOR_UPDATE_DISABLED:
  321.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.lastname = ? )";
  322.         break;
  323.       case DDConstants.SELECT_FOR_UPDATE:
  324.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.lastname = ? ) FOR UPDATE ";
  325.         break;
  326.       case DDConstants.SELECT_FOR_UPDATE_NO_WAIT:
  327.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.lastname = ? ) FOR UPDATE NOWAIT ";
  328.         break;
  329.       default:
  330.         throw new AssertionError(
  331.         "Unknown selectForUpdate type: '"+selectForUpdateVal+"'");
  332.     }
  333.     if(__WL_verbose) {
  334.       Debug.say("Finder produced statement string " + __WL_query);
  335.     }
  336.     
  337.     try {
  338.       __WL_con = __WL_pm.getConnection();
  339.     } 
  340.     catch (java.lang.Exception e) {
  341.       __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  342.       throw new javax.ejb.FinderException("Couldn't get connection: " + EOL +
  343.         e.toString() + EOL +
  344.         RDBMSUtils.throwable2StackTrace(e));
  345.     }
  346.     
  347.     try {
  348.       __WL_stmt = __WL_con.prepareStatement(__WL_query);
  349.       
  350.       // preparedStatementParamIndex reset.
  351.        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); } }
  352.       __WL_rs = __WL_stmt.executeQuery();
  353.     } 
  354.     catch (java.lang.Exception e) {
  355.       __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  356.       throw new javax.ejb.FinderException(
  357.         "Exception in findLastName while preparing or executing " +
  358.         "statement: '" + __WL_stmt + "'" + EOL +
  359.         e.toString() + EOL +
  360.         RDBMSUtils.throwable2StackTrace(e));
  361.     }
  362.     try {
  363.       java.util.Collection __WL_collection = new java.util.ArrayList(); com.cwj.entitybeandempcmp.Student_z53p80__WebLogic_CMP_RDBMS __WL_bean = null; Object __WL_eo = null; Object __WL_eo_rc = null;
  364.       
  365.        Map __WL_pkMap = new HashMap();
  366.       while (__WL_rs.next()) {
  367.          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 = (com.cwj.entitybeandempcmp.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); }
  368.       }
  369.       return __WL_collection;
  370.     } catch (java.sql.SQLException sqle) {
  371.       throw new javax.ejb.FinderException(
  372.         "Exception in 'findLastName' while using " +
  373.         "result set: '" + __WL_rs + "'" + EOL +
  374.         sqle.toString() + EOL +
  375.         RDBMSUtils.throwable2StackTrace(sqle));
  376.     } catch (java.lang.Exception e) {
  377.       throw new javax.ejb.FinderException(
  378.         "Exception executing finder 'findLastName': " + EOL +
  379.         e.toString() + EOL +
  380.         RDBMSUtils.throwable2StackTrace(e));
  381.     } finally {
  382.       
  383.       __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  384.     }
  385. } public java.lang.Object ejbFindByPrimaryKey(java.lang.String param0) throws javax.ejb.FinderException
  386.     {     if(__WL_verbose) {
  387.       Debug.say("called findByPrimaryKey.");
  388.     }
  389.     java.sql.Connection __WL_con = null;
  390.     java.sql.PreparedStatement __WL_stmt = null;
  391.     java.sql.ResultSet __WL_rs = null;
  392.     int __WL_offset = 0;
  393.     com.cwj.entitybeandempcmp.Student_z53p80__WebLogic_CMP_RDBMS __WL_bean = null; Object __WL_eo = null; Object __WL_eo_rc = null;
  394.     
  395.     
  396.     int selectForUpdateVal = __WL_pm.getSelectForUpdateValue();
  397.     java.lang.String __WL_query = null;
  398.     switch(selectForUpdateVal) {
  399.       case DDConstants.SELECT_FOR_UPDATE_DISABLED:
  400.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.studentID = ? )";
  401.         break;
  402.       case DDConstants.SELECT_FOR_UPDATE:
  403.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.studentID = ? ) FOR UPDATE ";
  404.         break;
  405.       case DDConstants.SELECT_FOR_UPDATE_NO_WAIT:
  406.         __WL_query = "SELECT WL0.studentID, WL0.firstname, WL0.lastname  FROM student WL0 WHERE ( WL0.studentID = ? ) FOR UPDATE NOWAIT ";
  407.         break;
  408.       default:
  409.         throw new AssertionError(
  410.         "Unknown selectForUpdate type: '"+selectForUpdateVal+"'");
  411.     }
  412.     if(__WL_verbose) {
  413.       Debug.say("Finder produced statement string " + __WL_query);
  414.     }
  415.     
  416.     try {
  417.       __WL_con = __WL_pm.getConnection();
  418.     } 
  419.     catch (java.lang.Exception e) {
  420.       __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  421.       throw new javax.ejb.FinderException("Couldn't get connection: " + EOL +
  422.         e.toString() + EOL +
  423.         RDBMSUtils.throwable2StackTrace(e));
  424.     }
  425.     
  426.     try {
  427.       __WL_stmt = __WL_con.prepareStatement(__WL_query);
  428.       // preparedStatementParamIndex reset.
  429.        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); } }
  430.       __WL_rs = __WL_stmt.executeQuery();
  431.       
  432.        Map __WL_pkMap = new HashMap();
  433.       boolean __WL_isMulti = false;
  434.       while (__WL_rs.next()) {
  435.          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 = (com.cwj.entitybeandempcmp.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; }
  436.       }
  437.       if (__WL_pkMap.size() == 0) {
  438.         if(__WL_verbose) {
  439.           Debug.say("Throwing FinderException because bean wasn't found.");
  440.         }
  441.         throw new javax.ejb.ObjectNotFoundException("Bean with primary key '" + param0.toString() + "' was not found by 'findByPrimaryKey'.");
  442.       }
  443.       if (__WL_isMulti || __WL_pkMap.size() > 1) {
  444.         Loggable l = EJBLogger.logfinderReturnedMultipleValuesLoggable("findByPrimaryKey");
  445.         throw new javax.ejb.FinderException(l.getMessage());
  446.       }
  447.       return __WL_eo;
  448.   } catch (javax.ejb.FinderException fe) {
  449.     throw fe;
  450.   } catch (java.sql.SQLException sqle) {
  451.     throw new javax.ejb.FinderException(
  452.       "Problem in findByPrimaryKey while preparing or executing " +
  453.       "statement: '" +
  454.       __WL_stmt + "': " + EOL +
  455.       sqle.toString() + EOL +
  456.       RDBMSUtils.throwable2StackTrace(sqle));
  457.   } catch (Exception e) {
  458.     throw new javax.ejb.FinderException(
  459.       "Exception raised in findByPrimaryKey " + EOL +
  460.       e.toString() + EOL +
  461.       RDBMSUtils.throwable2StackTrace(e));
  462.   } finally {
  463.     __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  464.     
  465.   }
  466. }
  467.    // loadGroup method for the 'defaultGroup' group. public void __WL_loadGroup0() throws Exception {     java.sql.Connection __WL_con = null;
  468.     java.sql.PreparedStatement __WL_stmt = null;
  469.     java.sql.ResultSet __WL_rs = null;
  470.     int __WL_offset = 0;
  471.     int selectForUpdateVal = __WL_pm.getSelectForUpdateValue();
  472.     java.lang.String __WL_query;
  473.     // http://bugs.beasys.com/CRView?CR=CR070260
  474.     //
  475.     //  optimization.
  476.     switch(selectForUpdateVal) {
  477.       case DDConstants.SELECT_FOR_UPDATE_DISABLED:
  478.         __WL_query = "SELECT WL0.firstname, WL0.lastname, WL0.studentID  FROM student WL0  WHERE WL0.studentID = ? ";
  479.         break;
  480.       case DDConstants.SELECT_FOR_UPDATE:
  481.         __WL_query = "SELECT WL0.firstname, WL0.lastname, WL0.studentID  FROM student WL0  WHERE WL0.studentID = ?  FOR UPDATE ";
  482.         break;
  483.       case DDConstants.SELECT_FOR_UPDATE_NO_WAIT:
  484.         __WL_query = "SELECT WL0.firstname, WL0.lastname, WL0.studentID  FROM student WL0  WHERE WL0.studentID = ?  FOR UPDATE NOWAIT ";
  485.         break;
  486.       default:
  487.         throw new AssertionError(
  488.         "Unknown selectForUpdate type: '"+selectForUpdateVal+"'");
  489.     }
  490.     
  491.     try {
  492.       if (__WL_verbose) {
  493.         Debug.say("__WL_loadGroup0 for pk=" + __WL_ctx.getPrimaryKey());
  494.       }
  495.       java.lang.String __WL_pk = (java.lang.String) __WL_ctx.getPrimaryKey();
  496.       __WL_con = __WL_pm.getConnection();
  497.       __WL_stmt = __WL_con.prepareStatement(__WL_query);
  498.       // preparedStatementParamIndex reset.
  499.        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); } }
  500.       if (__WL_verbose) {
  501.         Debug.say("__WL_loadGroup0 for pk=" + __WL_ctx.getPrimaryKey() + 
  502.                   ", executeQuery: "+__WL_query);
  503.       }
  504.       __WL_rs = __WL_stmt.executeQuery();
  505.       if (__WL_rs.next()) {
  506.         if (__WL_verbose) {
  507.           Debug.say("__WL_loadGroup0 for pk=" + __WL_ctx.getPrimaryKey() + 
  508.                     " now read columns from Results.");
  509.         }
  510.      
  511.         
  512.         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;
  513.         
  514.         __WL_beanIsLoaded = true;
  515.         
  516.       } else {
  517.         if(__WL_verbose) {
  518.           Debug.say("__WL_loadGroup0 could not find primary key " +
  519.                     __WL_pk);
  520.         }
  521.         Loggable l = EJBLogger.lognoSuchEntityExceptionLoggable(__WL_pk.toString());
  522.         throw new NoSuchEntityException(l.getMessage());
  523.               
  524.       }
  525.     } finally {
  526.       __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  527.     }
  528.     
  529. }
  530.    // loadGroup from ResultSet to bean method for the 'defaultGroup' group. public void __WL_loadGroup0FromRS (java.sql.ResultSet __WL_rs,  java.lang.Integer __WL_offsetIntObj,  com.cwj.entitybeandempcmp.Student_z53p80_Intf beanIntf)  throws java.sql.SQLException, java.lang.Exception { com.cwj.entitybeandempcmp.Student_z53p80__WebLogic_CMP_RDBMS __WL_bean = (com.cwj.entitybeandempcmp.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; }
  531.   
  532.   public static Object __WL_getPKFromRS(java.sql.ResultSet __WL_rs, java.lang.Integer __WL_offsetIntObj, ClassLoader __WL_classLoader)
  533.     throws java.sql.SQLException, java.lang.Exception
  534.   {
  535.     int __WL_offset = __WL_offsetIntObj.intValue();
  536.     java.lang.String __WL_pk = null;
  537.     
  538.     __WL_pk = (java.lang.String)__WL_rs.getString(1+__WL_offset); if (__WL_rs.wasNull()) {  __WL_pk = null; }
  539.     
  540.     return __WL_pk;
  541.   }
  542.   public Object __WL_getPKFromRSInstance(java.sql.ResultSet __WL_rs, java.lang.Integer __WL_offsetIntObj, ClassLoader __WL_classLoader)
  543.     throws java.sql.SQLException, java.lang.Exception
  544.   {
  545.     return __WL_getPKFromRS(__WL_rs, __WL_offsetIntObj, __WL_classLoader);
  546.   }
  547.   //End finder methods.
  548.   //=================================================================
  549.   //=================================================================
  550.   //Home methods.
  551.   
  552.   //End home methods.
  553.   //=================================================================
  554.   //=================================================================
  555.   // ejbSelect methods defined in this Bean's abstract class
  556.   
  557.   //=================================================================
  558.   // ejbSelectInternal methods that are to run in this Bean
  559.   
  560.   //=================================================================
  561.   // ================================================================
  562.   // Implementation of CMPBean
  563.   public void __WL_setup(java.util.Map bmMap, PersistenceManager __WL_pm) {
  564.     if (__WL_verbose) {
  565.       Debug.say("Student_z53p80__WebLogic_CMP_RDBMS.setup called.");
  566.     }
  567.     if (__WL_debug) {
  568.       Debug.assertion(bmMap!=null);
  569.       Debug.assertion(__WL_pm !=null);
  570.     }
  571.     this.__WL_pm = (RDBMSPersistenceManager)__WL_pm; 
  572.     this.__WL_classLoader = this.__WL_pm.getClassLoader();
  573.     if (__WL_debug) {
  574.       Debug.assertion(this.__WL_classLoader != null);
  575.     }
  576.     
  577.     
  578.   }
  579.   public EntityContext __WL_getEntityContext() {
  580.     return __WL_ctx;
  581.   }
  582.   public Object __WL_getPrimaryKey() {
  583.     java.lang.String __WL_pk = null; __WL_pk = this.studentID; return __WL_pk;
  584.   }
  585.   public void __WL_superEjbLoad()  {
  586.     int oldState = __WL_method_state;
  587.     try {
  588.       __WL_method_state = STATE_EJBLOAD;
  589.       super.ejbLoad();
  590.     } finally {
  591.       __WL_method_state = oldState;
  592.     }
  593.   }
  594.   public void __WL_superEjbStore()  {
  595.     int oldState = __WL_method_state;
  596.     try {
  597.       __WL_method_state = STATE_EJBSTORE;
  598.       if (__WL_verbose) {
  599.         Debug.say("__WL_superEjbStore "+ __WL_ctx.getPrimaryKey());
  600.       }
  601.       super.ejbStore();
  602.     } finally {
  603.       __WL_method_state = oldState;
  604.     }
  605.   }
  606.   public void __WL_superEjbRemove()  throws javax.ejb.RemoveException {
  607.         int oldState = __WL_method_state;
  608.     try {
  609.       __WL_method_state = STATE_EJB_REMOVE;
  610.       if (__WL_verbose) {
  611.         Debug.say("__WL_superEjbRemove " + __WL_ctx.getPrimaryKey());
  612.       }
  613.       super.ejbRemove();
  614.       
  615.       
  616.       
  617.       // initialize state before this instance goes back into the pool
  618.       if (!__WL_getIsRemoved()) __WL_initialize();
  619.     } finally {
  620.       __WL_method_state = oldState;
  621.     }
  622.   }
  623.   public void __WL_copyFrom(CMPBean otherBean, boolean __WL_initSnapshotVars) {
  624.     Student_z53p80__WebLogic_CMP_RDBMS __WL_bean = null; try { __WL_bean = (Student_z53p80__WebLogic_CMP_RDBMS)otherBean;     } catch (RuntimeException re) {
  625.       if (__WL_verbose) {
  626.         Debug.say("rethrowing RuntimeException.");
  627.         re.printStackTrace();
  628.       }
  629.       throw re;
  630.     } catch (Exception ex) {
  631.       if (__WL_verbose) {
  632.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  633.         ex.printStackTrace();
  634.       }
  635.       throw new PersistenceRuntimeException(ex);
  636.     }
  637. 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;
  638.   }
  639.   public void __WL_loadGroupByIndex(int index, java.sql.ResultSet rs,
  640.     Integer offset, javax.ejb.EntityBean eb) throws Exception
  641.   {
  642.     switch(index) {
  643.       case 0: __WL_loadGroup0FromRS(rs, offset,(com.cwj.entitybeandempcmp.Student_z53p80__WebLogic_CMP_RDBMS)eb); break; default: throw new AssertionError("Bad Group index: "+index);
  644.     }
  645.   }
  646.   public void __WL_loadCMRFieldByCmrField(String cmrField, java.sql.ResultSet rs,
  647.     Integer offset, javax.ejb.EntityBean eb) throws Exception
  648.   {
  649.     
  650.   }
  651.   public PersistenceManager __WL_getPersistenceManager() {
  652.     return __WL_pm;
  653.   }
  654.   public void __WL_makeCascadeDelList(java.util.Map mapCascadeDelBeans,
  655.                                  java.util.List listCascadeDelBeans,
  656.                                  java.util.List listCascadeDelBeansWithoutDBUpdate,
  657.                                  boolean withoutDBUpdate)
  658.     throws java.lang.Exception
  659.   {
  660.     
  661.     int oldState = __WL_method_state;
  662.     __WL_method_state = STATE_EJB_REMOVE;
  663.     // create a unique mapKey to map beans to mapCascadeDelBeans
  664.     // re-use weblogic.ejb20.cache.CacheKey class since it take two
  665.     // objects to create the key
  666.     Object pk = __WL_ctx.getPrimaryKey();
  667.     Object beanManager = __WL_pm.getBeanManager();
  668.     weblogic.ejb20.cache.CacheKey mapKey =
  669.       new weblogic.ejb20.cache.CacheKey(pk, (CachingManager)beanManager);
  670.     // step 1:
  671.     // keep track of all of the beans been visited is the map to detect the circular case
  672.     if (mapCascadeDelBeans.get(mapKey) == null) {
  673.       mapCascadeDelBeans.put(mapKey, this);
  674.     }
  675.     else {
  676.       if (__WL_verbose) {
  677.         Debug.say("Trying to add " + mapKey + " to list during cascade delete, " +
  678.           "but it already exists in the list, a possible circular detect, ignored.");
  679.       }
  680.       return;
  681.     }
  682.     // step 2:
  683.     // This is the place every bean bean added to the list.
  684.     // true  if don't need a database update, db-cascade-delete is specified
  685.     // false if do need a database update, db-cascade-detelet isn't specified
  686.     if (withoutDBUpdate) {
  687.       listCascadeDelBeansWithoutDBUpdate.add(this);
  688.     } else {
  689.       listCascadeDelBeans.add(this);
  690.     }
  691.     __WL_method_state = oldState;
  692.   }
  693.   public void __WL_setBeanParamsForCreateArray(
  694.     java.sql.PreparedStatement[] __WL_stmt_array)
  695.     throws Exception
  696.   {
  697.     
  698.     // 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); } }
  699.   }
  700.   public void __WL_setBeanParamsForUpdateArray(
  701.     java.sql.PreparedStatement[] __WL_stmt_array,
  702.     boolean[] __WL_isModified,
  703.     java.lang.String __WL_pk,
  704.     int curTableIndex)
  705.     throws Exception
  706.   {
  707.     // set all __WL_stmt_array when curTableIndex == -1
  708.       if ((__WL_stmt_array[0] != null) && ((curTableIndex == 0) || (curTableIndex == -1))) {
  709.     int __WL_num = 1;
  710.     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++; };
  711.     
  712.      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++;
  713.     
  714.   }
  715.   }
  716.   public void __WL_setBeanParamsForDeleteArray(
  717.     java.sql.PreparedStatement[] __WL_stmt_array,
  718.     boolean[] __WL_isModified,
  719.     java.lang.String __WL_pk)
  720.     throws Exception
  721.   {
  722.     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++;
  723.   }
  724.   public java.sql.PreparedStatement[] __WL_getStmtArray(
  725.     java.sql.Connection __WL_con,
  726.     boolean[] __WL_isModified,
  727.     int operation)
  728.     throws SQLException
  729.   {
  730.         if (__WL_verbose) {
  731.       Debug.say("called __WL_getStmtArray.");
  732.     }
  733.      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;
  734.      String[] __WL_query_array = new String[1];
  735.     if (operation == DDConstants.INSERT) {
  736.       __WL_query_array[0] = "INSERT INTO student (studentID, firstname, lastname) VALUES (?, ?, ?)";
  737.     } else if (operation == DDConstants.UPDATE) {
  738.       int __WL_count        = 0;
  739.       
  740.       StringBuffer sb      = new StringBuffer();
  741.       
  742.       __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 = ?"; }
  743.     } else if (operation == DDConstants.DELETE) {
  744.       
  745.       __WL_query_array[0] = "DELETE FROM student WHERE studentID = ?" ;
  746.     }
  747.     if(__WL_verbose) {
  748.       for (int i = 0 ; i < 1 ; i++) {
  749.         Debug.say("__WL_getStmtArray() for " + operation + " produced sqlString: " + __WL_query_array[i]);
  750.       }
  751.     }
  752.      if (__WL_query_array[0] != null) __WL_stmt_array[0] = __WL_con.prepareStatement(__WL_query_array[0]);
  753.     return __WL_stmt_array;
  754.   }
  755.   public void __WL_setBeanParamsForStmtArray(
  756.     java.sql.PreparedStatement[] __WL_stmt_array,
  757.     boolean[] __WL_isModified,
  758.     int operation)
  759.     throws Exception
  760.   {
  761.         if (operation == DDConstants.INSERT) {
  762.       __WL_setBeanParamsForCreateArray(__WL_stmt_array);
  763.     } else if (operation == DDConstants.UPDATE) {
  764.       __WL_setBeanParamsForBulkUpdateArray(__WL_stmt_array, __WL_isModified);
  765.     } else if (operation == DDConstants.DELETE) {
  766.       __WL_setBeanParamsForBulkDeleteArray(__WL_stmt_array, __WL_isModified);
  767.     }
  768.   }
  769.   public void __WL_setBeanParamsForBulkUpdateArray(
  770.     java.sql.PreparedStatement[] __WL_stmt_array,
  771.     boolean[] __WL_isModified)
  772.     throws Exception
  773.   {
  774.       int oldState = __WL_method_state;
  775.   try {
  776.     __WL_method_state = STATE_EJBSTORE;
  777.     java.lang.String __WL_pk = (java.lang.String) __WL_ctx.getPrimaryKey();
  778.     __WL_setBeanParamsForUpdateArray(__WL_stmt_array, __WL_isModified, __WL_pk, -1);
  779.   } finally {
  780.     __WL_method_state = oldState;
  781.   }
  782.   }
  783.   public void __WL_setBeanParamsForBulkDeleteArray(
  784.     java.sql.PreparedStatement[] __WL_stmt_array,
  785.     boolean[] __WL_isModified)
  786.     throws Exception
  787.   {
  788.       int oldState = __WL_method_state;
  789.   try {
  790.     __WL_method_state = STATE_EJB_REMOVE;
  791.     java.lang.String __WL_pk = (java.lang.String) __WL_ctx.getPrimaryKey();
  792.     __WL_setBeanParamsForDeleteArray(__WL_stmt_array, __WL_isModified, __WL_pk);
  793.   } finally {
  794.     __WL_method_state = oldState;
  795.   }
  796.   }
  797.   public boolean[] __WL_getIsModifiedUnion(boolean[] __WL_isModifiedUnion) {
  798.       if (__WL_isModifiedUnion == null) return __WL_isModified;
  799.   for (int i=0; i<__WL_isModified.length; i++) {
  800.     __WL_isModifiedUnion[i] |= __WL_isModified[i];
  801.   }
  802.   return __WL_isModifiedUnion;
  803.   }
  804.   public void __WL_setIsModifiedVars(boolean __WL_isModifiedFlag,
  805.                                      java.sql.Connection __WL_con)
  806.     throws Exception
  807.   {
  808.       int oldState = __WL_method_state;
  809.   try {
  810.     __WL_method_state = STATE_EJBSTORE;
  811.     int __WL_num = 1;
  812.     java.lang.String __WL_pk = (java.lang.String) __WL_ctx.getPrimaryKey();
  813.     
  814.     for (int __WL_i = 0; __WL_i < __WL_isModified.length; __WL_i++) {
  815.       __WL_isModified[__WL_i] = __WL_isModifiedFlag;
  816.     }
  817.     __WL_modifiedBeanIsRegistered = __WL_isModifiedFlag;
  818.   } finally {
  819.     __WL_method_state = oldState;
  820.   }
  821.   }
  822.   public void __WL_perhapsTakeSnapshot() {
  823.     
  824.     
  825.   }
  826.   public boolean __WL_exists(Object __WL_key) {
  827.         if (__WL_verbose) {
  828.       Debug.say("exists: " + __WL_key);
  829.     }
  830.     java.sql.Connection __WL_con = null;
  831.     java.sql.PreparedStatement __WL_stmt = null;
  832.     java.sql.ResultSet __WL_rs = null;
  833.     try {
  834.       java.lang.String __WL_pk = (java.lang.String) __WL_key;
  835.       __WL_con = __WL_pm.getConnection();
  836.       java.lang.String __WL_query =
  837.         "select studentID from student where studentID = ?";
  838.       __WL_stmt = __WL_con.prepareStatement(__WL_query);
  839.       // preparedStatementParamIndex reset.
  840.        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); } }
  841.       __WL_rs = __WL_stmt.executeQuery();
  842.       if (__WL_rs.next()) {
  843.         return true;
  844.       }
  845.       else {
  846.         return false;
  847.       }
  848.         } catch (RuntimeException re) {
  849.       if (__WL_verbose) {
  850.         Debug.say("rethrowing RuntimeException.");
  851.         re.printStackTrace();
  852.       }
  853.       throw re;
  854.     } catch (Exception ex) {
  855.       if (__WL_verbose) {
  856.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  857.         ex.printStackTrace();
  858.       }
  859.       throw new PersistenceRuntimeException(ex);
  860.     }
  861.     finally {
  862.       __WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
  863.     }
  864.   }
  865.   public void __WL_checkExistsOnMethod() throws NoSuchEntityException
  866.   {
  867.       if (__WL_getIsRemoved()) {
  868.     Loggable l = EJBLogger.lognoSuchEntityExceptionLoggable(
  869.       ((EntityEJBContextImpl)__WL_ctx).__WL_getPrimaryKey().toString());
  870.     NoSuchEntityException nsee = new NoSuchEntityException(l.getMessage());
  871.     if (__WL_verbose) {
  872.       Debug.say("throwing RuntimeException.");
  873.       nsee.printStackTrace();
  874.     }
  875.     throw nsee;
  876.   }
  877.   if (__WL_beanIsLoaded()) return;
  878.   int oldState = __WL_method_state;
  879.   
  880.   try {
  881.     __WL_method_state = WLEnterpriseBean.STATE_BUSINESS_METHOD;
  882.     __WL_pm.disableTransactionStatusCheck();
  883.     __WL_loadGroup0();
  884.       } catch (RuntimeException re) {
  885.       if (__WL_verbose) {
  886.         Debug.say("rethrowing RuntimeException.");
  887.         re.printStackTrace();
  888.       }
  889.       throw re;
  890.     } catch (Exception ex) {
  891.       if (__WL_verbose) {
  892.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  893.         ex.printStackTrace();
  894.       }
  895.       throw new PersistenceRuntimeException(ex);
  896.     }
  897.   finally {
  898.     __WL_method_state = oldState;
  899.     __WL_pm.enableTransactionStatusCheck();
  900.   }
  901.   }
  902.   public short __WL_getBeanState() 
  903.   {
  904.     return __WL_bean_state;
  905.   } 
  906.   public void __WL_setBeanState(short value)
  907.   {
  908.     __WL_bean_state = value;
  909.   }
  910.   public boolean __WL_getIsRemoved() { return __WL_isRemoved; }
  911.   public void __WL_setIsRemoved(boolean b) { __WL_isRemoved = b; }
  912.   public int __WL_appendVerifySqlForBatch(java.util.List verifyPk, 
  913.                                           StringBuffer[] verifySql, 
  914.                                           int[] verifyCount,
  915.                                           int verifyMax)
  916.   {
  917.     int oldState = __WL_method_state;
  918.     try {
  919.       __WL_method_state = STATE_EJBSTORE;
  920.       
  921.     }
  922.     finally {
  923.       __WL_method_state = oldState;
  924.     }
  925.     return verifyMax;
  926.   }
  927.   public void __WL_setVerifyParamsForBatch(java.sql.Connection con,
  928.                                            java.sql.PreparedStatement[] __WL_stmt_array, 
  929.                                            int[] verifyCount)
  930.     throws SQLException 
  931.   {
  932.     
  933.   }
  934.   public int __WL_appendVerifySql(java.util.List verifyPk, 
  935.                              StringBuffer[] verifySql, 
  936.                              int[] verifyCount,
  937.                              int verifyMax)
  938.   {
  939.     int oldState = __WL_method_state;
  940.     try {
  941.       __WL_method_state = STATE_EJBSTORE;
  942.       
  943.       
  944.     }
  945.     finally {
  946.       __WL_method_state = oldState;
  947.     }
  948.     return verifyMax;
  949.   }
  950.   public void __WL_setVerifyParams(java.sql.Connection con,
  951.                               java.sql.PreparedStatement[] __WL_stmt_array, 
  952.                               int[] verifyCount)
  953.     throws SQLException 
  954.   {
  955.     
  956.   }
  957.   public String __WL_getM2NSQL(String cmrf, int operation)
  958.   {
  959.     return "";
  960.   }
  961.   public Collection __WL_getCmrBeansForCmrField(String cmrf)
  962.   {
  963.     return null;
  964.   }
  965.   // end of CMPBean
  966.   // ================================================================
  967.   //=================================================================
  968.   // implementation of javax.ejb.EntityBean
  969.   public boolean __WL_beanIsLoaded() { 
  970.     return __WL_beanIsLoaded; 
  971.   }
  972.     void pkCheck()
  973.     throws javax.ejb.CreateException
  974.   {
  975.     // check that 'studentID' was set if (!__WL_isModified[0]) { Loggable l = EJBLogger.logpkNotSetLoggable("Student","studentID");throw new javax.ejb.CreateException(l.getMessage()); }
  976.   }
  977.   public java.lang.String ejbCreate(java.lang.String arg0, java.lang.String arg1, java.lang.String arg2)
  978.     throws javax.ejb.CreateException
  979.   {
  980.     int oldState = __WL_method_state;
  981.     try {
  982.       __WL_method_state = STATE_EJB_CREATE;
  983.       for (int __WL_i = 0; __WL_i < 3; __WL_i++) {
  984.         __WL_isLoaded[__WL_i] = true;
  985.         __WL_isModified[__WL_i] = false;
  986.       }
  987.       __WL_beanIsLoaded = true;
  988.       
  989.       // set true, this prevents us from registering the bean until after the
  990.       // database insert
  991.       __WL_modifiedBeanIsRegistered = true;
  992.       
  993.       // initialize persistent and cached relationship variables, this
  994.       // is done here purely to ensure robustness as the CMP variables
  995.       // are also initialized whenever the bean enters the pooled state
  996.        lastname = null; studentID = null; firstname = null;
  997.       
  998.       super.ejbCreate( arg0, arg1, arg2);
  999.        pkCheck();
  1000.       
  1001.        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) {
  1002.       if (__WL_verbose) {
  1003.         Debug.say("rethrowing RuntimeException.");
  1004.         re.printStackTrace();
  1005.       }
  1006.       throw re;
  1007.     } catch (Exception ex) {
  1008.       if (__WL_verbose) {
  1009.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  1010.         ex.printStackTrace();
  1011.       }
  1012.       throw new PersistenceRuntimeException(ex);
  1013.     }
  1014.     finally {
  1015.       __WL_method_state = oldState;
  1016.     }
  1017.   }
  1018. public java.lang.String ejbCreate(java.lang.String arg0)
  1019.     throws javax.ejb.CreateException
  1020.   {
  1021.     int oldState = __WL_method_state;
  1022.     try {
  1023.       __WL_method_state = STATE_EJB_CREATE;
  1024.       for (int __WL_i = 0; __WL_i < 3; __WL_i++) {
  1025.         __WL_isLoaded[__WL_i] = true;
  1026.         __WL_isModified[__WL_i] = false;
  1027.       }
  1028.       __WL_beanIsLoaded = true;
  1029.       
  1030.       // set true, this prevents us from registering the bean until after the
  1031.       // database insert
  1032.       __WL_modifiedBeanIsRegistered = true;
  1033.       
  1034.       // initialize persistent and cached relationship variables, this
  1035.       // is done here purely to ensure robustness as the CMP variables
  1036.       // are also initialized whenever the bean enters the pooled state
  1037.        lastname = null; studentID = null; firstname = null;
  1038.       
  1039.       super.ejbCreate( arg0);
  1040.        pkCheck();
  1041.       
  1042.        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) {
  1043.       if (__WL_verbose) {
  1044.         Debug.say("rethrowing RuntimeException.");
  1045.         re.printStackTrace();
  1046.       }
  1047.       throw re;
  1048.     } catch (Exception ex) {
  1049.       if (__WL_verbose) {
  1050.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  1051.         ex.printStackTrace();
  1052.       }
  1053.       throw new PersistenceRuntimeException(ex);
  1054.     }
  1055.     finally {
  1056.       __WL_method_state = oldState;
  1057.     }
  1058.   }
  1059.   public void ejbPostCreate(java.lang.String arg0, java.lang.String arg1, java.lang.String arg2)
  1060.     throws javax.ejb.CreateException
  1061.   {
  1062.     int oldState = __WL_method_state;
  1063.     try {
  1064.       __WL_method_state = STATE_EJB_POSTCREATE;
  1065.       
  1066.       super.ejbPostCreate( arg0, arg1, arg2);
  1067.       if (!__WL_pm.getOrderDatabaseOperations()) __WL_create();
  1068.       
  1069.       } catch (javax.ejb.CreateException ce) { throw ce;
  1070.           } catch (RuntimeException re) {
  1071.       if (__WL_verbose) {
  1072.         Debug.say("rethrowing RuntimeException.");
  1073.         re.printStackTrace();
  1074.       }
  1075.       throw re;
  1076.     } catch (Exception ex) {
  1077.       if (__WL_verbose) {
  1078.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  1079.         ex.printStackTrace();
  1080.       }
  1081.       throw new PersistenceRuntimeException(ex);
  1082.     }
  1083.     finally {
  1084.       __WL_method_state = oldState;
  1085.     }
  1086.   }
  1087. public void ejbPostCreate(java.lang.String arg0)
  1088.     throws javax.ejb.CreateException
  1089.   {
  1090.     int oldState = __WL_method_state;
  1091.     try {
  1092.       __WL_method_state = STATE_EJB_POSTCREATE;
  1093.       
  1094.       super.ejbPostCreate( arg0);
  1095.       if (!__WL_pm.getOrderDatabaseOperations()) __WL_create();
  1096.       
  1097.       } catch (javax.ejb.CreateException ce) { throw ce;
  1098.           } catch (RuntimeException re) {
  1099.       if (__WL_verbose) {
  1100.         Debug.say("rethrowing RuntimeException.");
  1101.         re.printStackTrace();
  1102.       }
  1103.       throw re;
  1104.     } catch (Exception ex) {
  1105.       if (__WL_verbose) {
  1106.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  1107.         ex.printStackTrace();
  1108.       }
  1109.       throw new PersistenceRuntimeException(ex);
  1110.     }
  1111.     finally {
  1112.       __WL_method_state = oldState;
  1113.     }
  1114.   }
  1115.     private Object __WL_create() throws Exception {
  1116.     if (__WL_verbose) {
  1117.       Debug.say("called __WL_create.");
  1118.     }
  1119.     
  1120.     java.sql.Connection __WL_con = null;
  1121.      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;
  1122.      String[] __WL_query_array = new String[1];
  1123.     java.lang.String __WL_pk = null;
  1124.     try {
  1125.       
  1126.        __WL_pk = this.studentID;
  1127.       __WL_con = __WL_pm.getConnection();
  1128.       if(__WL_verbose) {
  1129.         Debug.say("__WL_create() got connection.");
  1130.       }
  1131.       __WL_query_array[0] = "INSERT INTO student (studentID, firstname, lastname) VALUES (?, ?, ?)";
  1132.       if (__WL_verbose) {
  1133.         for (int i = 0 ; i < 1 ; i++) {
  1134.           Debug.say("__WL_create() produced sqlString " + __WL_query_array[i]);
  1135.         }
  1136.       }
  1137.        if (__WL_query_array[0] != null) __WL_stmt_array[0] = __WL_con.prepareStatement(__WL_query_array[0]);
  1138.       __WL_setBeanParamsForCreateArray(__WL_stmt_array);
  1139.       if(__WL_verbose) {
  1140.         Debug.say("__WL_create() about to execute sql.");
  1141.       }
  1142.       for (int i = 0 ; i < 1 ; i++) {
  1143.         if (__WL_stmt_array[i].executeUpdate() != 1) {
  1144.           throw new java.lang.Exception("Failed to CREATE Bean.  Primary Key Value: '" + __WL_pk + "'");
  1145.         }
  1146.       }
  1147.       
  1148.       for (int __WL_i = 0; __WL_i < __WL_isModified.length; __WL_i++) {
  1149.         __WL_isModified[__WL_i] = false;
  1150.       }
  1151.       __WL_modifiedBeanIsRegistered = false;
  1152.       return __WL_pk;
  1153.     } catch (java.sql.SQLException se) {
  1154.             //ejb wants a duplicate key exception if that was what happened
  1155.       if(__WL_verbose) {
  1156.         Debug.say("__WL_create() "+
  1157.            "checking for duplicate key " + __WL_pk);
  1158.       }
  1159.       boolean exists = false;
  1160.       try {
  1161.         exists = __WL_exists(__WL_pk);
  1162.       }
  1163.       catch (Exception e) {
  1164.         throw se;
  1165.       }
  1166.       if (exists) {
  1167.         Loggable l = EJBLogger.logduplicateKeyFoundLoggable(__WL_pk.toString());
  1168.         throw new javax.ejb.DuplicateKeyException(
  1169.              l.getMessage());
  1170.        }
  1171.       else {
  1172.         throw se;
  1173.       }
  1174.     } finally {
  1175.       __WL_pm.releaseArrayResources(__WL_con, __WL_stmt_array, null);
  1176.     }
  1177.   }
  1178.   public void ejbRemove() throws javax.ejb.RemoveException {     java.sql.Connection __WL_con = null;
  1179.      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;
  1180.      String[] __WL_query_array = new String[1];
  1181.     
  1182.     java.sql.PreparedStatement __WL_stmt = null;
  1183.     int oldState = __WL_method_state;
  1184.     try {
  1185.       __WL_method_state = STATE_EJB_REMOVE;
  1186.       int __WL_num = 0;
  1187.       if (__WL_verbose) {
  1188.         Debug.say("ejbRemove " + __WL_ctx.getPrimaryKey());
  1189.       }
  1190.       super.ejbRemove();
  1191.       try {
  1192.         
  1193.         java.lang.String __WL_pk = (java.lang.String) __WL_ctx.getPrimaryKey();
  1194.         
  1195.         
  1196.         __WL_con = __WL_pm.getConnection();
  1197.         __WL_query_array[0] = "DELETE FROM student WHERE studentID = ?" ;
  1198.          if (__WL_query_array[0] != null) __WL_stmt_array[0] = __WL_con.prepareStatement(__WL_query_array[0]);
  1199.         __WL_setBeanParamsForDeleteArray(__WL_stmt_array, __WL_isModified, __WL_pk);
  1200.         for (int i = 0 ; i < 1 ; i++) {
  1201.           int j = __WL_stmt_array[i].executeUpdate();
  1202.           if (j == 0) {
  1203.              Loggable l = EJBLogger.logbeanDoesNotExistLoggable("Student",__WL_pk.toString());  throw new NoSuchEntityException(l.getMessage()); 
  1204.           }
  1205.         }
  1206.         // initialize state before this instance goes back into the pool
  1207.         __WL_initialize();
  1208.           } catch (RuntimeException re) {
  1209.       if (__WL_verbose) {
  1210.         Debug.say("rethrowing RuntimeException.");
  1211.         re.printStackTrace();
  1212.       }
  1213.       throw re;
  1214.     } catch (Exception ex) {
  1215.       if (__WL_verbose) {
  1216.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  1217.         ex.printStackTrace();
  1218.       }
  1219.       throw new PersistenceRuntimeException(ex);
  1220.     }
  1221.     } finally {
  1222.       __WL_method_state = oldState;
  1223.       __WL_pm.releaseArrayResources(__WL_con, __WL_stmt_array, null);
  1224.     }
  1225. }
  1226.   
  1227.   public void ejbLoad()
  1228.   {
  1229.     int oldState = __WL_method_state;
  1230.     try {
  1231.       __WL_method_state = STATE_EJBLOAD;
  1232.       __WL_initialize();
  1233.       super.ejbLoad();
  1234.     } finally {
  1235.       __WL_method_state = oldState;
  1236.     }
  1237.   }
  1238.    public void ejbStore() {     __WL_store(true);
  1239. }
  1240.   public void __WL_store(boolean unregister) 
  1241.   {
  1242.     
  1243.     java.sql.Connection __WL_con = null;
  1244.      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;
  1245.     int oldState = __WL_method_state;
  1246.     try {
  1247.       __WL_method_state = STATE_EJBSTORE;
  1248.       if (__WL_verbose) {
  1249.         Debug.say("ejbStore "+ __WL_ctx.getPrimaryKey());
  1250.       }
  1251.       super.ejbStore();
  1252.       try {
  1253.         int __WL_num          = 0;
  1254.         int __WL_count        = 0;
  1255.         int __WL_total       = 0;
  1256.         
  1257.         java.lang.String __WL_pk     = (java.lang.String) __WL_ctx.getPrimaryKey();
  1258.         String __WL_query     = null;
  1259.         StringBuffer sb      = new StringBuffer();
  1260.         
  1261.         
  1262.         
  1263.         __WL_count = 0;
  1264.          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++; }
  1265.         __WL_total = __WL_total + __WL_count + 0;
  1266.         if ( (__WL_count > 0) || (0 > 0) ) {
  1267.           __WL_con = __WL_pm.getConnection();
  1268.           if (__WL_count > 0) {
  1269.             // we have modified non-Blob/Clob Columns
  1270.             
  1271.             
  1272.             __WL_query = "UPDATE student SET " +
  1273.                         sb.toString() +
  1274.                         " WHERE studentID = ?" 
  1275.                         ;
  1276.             if(__WL_verbose) {
  1277.               Debug.say("WL_store sql: " + __WL_query);
  1278.             }
  1279.             __WL_stmt_array[0] = __WL_con.prepareStatement(__WL_query);
  1280.             __WL_setBeanParamsForUpdateArray(__WL_stmt_array, __WL_isModified, __WL_pk, 0);
  1281.             int __WL_i = __WL_stmt_array[0].executeUpdate();
  1282.             if (__WL_i == 0) {
  1283.                Loggable l = EJBLogger.logbeanDoesNotExistLoggable("Student",__WL_pk.toString());  throw new NoSuchEntityException(l.getMessage()); 
  1284.             }
  1285.           }
  1286.           if (0 > 0) {
  1287.             // we have modified Blob/Clob Columns
  1288.             
  1289.           }
  1290.         }
  1291.         if (__WL_total == 0) {
  1292.           if (__WL_verbose) {
  1293.             Debug.say("ejbStore: avoided a store.  ejbStore: complete");
  1294.           }
  1295.           return;
  1296.         }
  1297.         
  1298.         for (int __WL_i = 0; __WL_i < __WL_isModified.length; __WL_i++) {
  1299.           if (__WL_isModified[__WL_i]) {
  1300.             __WL_isModified[__WL_i] = false;
  1301.             __WL_isLoaded[__WL_i] = true;
  1302.           }
  1303.         }
  1304.         if (unregister) {
  1305.               __WL_pm.unregisterModifiedBean(__WL_ctx.getPrimaryKey());
  1306.         }
  1307.         __WL_modifiedBeanIsRegistered = false;
  1308.         
  1309.         if (__WL_verbose) {
  1310.           Debug.say("ejbStore: complete");
  1311.         }
  1312.           } catch (RuntimeException re) {
  1313.       if (__WL_verbose) {
  1314.         Debug.say("rethrowing RuntimeException.");
  1315.         re.printStackTrace();
  1316.       }
  1317.       throw re;
  1318.     } catch (Exception ex) {
  1319.       if (__WL_verbose) {
  1320.         Debug.say("wrapping Exception in PersistenceRuntimeException.");
  1321.         ex.printStackTrace();
  1322.       }
  1323.       throw new PersistenceRuntimeException(ex);
  1324.     }
  1325.     } 
  1326.     finally {
  1327.       __WL_method_state = oldState;
  1328.       __WL_pm.releaseArrayResources(__WL_con, __WL_stmt_array, null);
  1329.     }
  1330.   }
  1331.   public void ejbPassivate()
  1332.   {
  1333.     int oldState = __WL_method_state;
  1334.     try {
  1335.       __WL_method_state = STATE_EJB_PASSIVATE;
  1336.       super.ejbPassivate();
  1337.       __WL_initialize();
  1338.     } finally {
  1339.       __WL_method_state = oldState;
  1340.     }
  1341.   }
  1342.   // Blob/Clob methods
  1343.   
  1344.   // end javax.ejb.EntityBean
  1345.   //=================================================================
  1346. }