The following codes inside a JSP file tries to use the bean:
try {
errSource = "InitialContext()";
Context ctx = new InitialContext();
errSource = "lookup()";
productEntityEJBHome = (ProductEntityEJBHome)ctx.lookup("productEJB.ProductEntityEJB");
productEntityEJB = productEntityEJBHome.findByPrimaryKey(new Integer(1));
out.println("Product Name: " + productEntityEJB.getProduct_name());
return;
} catch (javax.naming.NamingException ex) {
errMsg = "Naming Exception in calling productEntityEJBHome(" + errSource + "):
" + ex.getMessage();
} catch (Exception ex) {
errMsg = "Exception in calling productEntityEJBHome(" + errSource + "): " +
ex.getMessage();
}
out.println(errMsg);
It is successful to get the home interface but when the findByPrimaryKey() function
is call,
an error message is produced as follows:
Exception in calling productEntityEJBHome(lookup()): Problem in findByPrimaryKey
while preparing or executing statement: 'weblogic.jdbc.jts.PreparedStatement@5a64e6':
com.sybase.jdbc2.jdbc.SybSQLException: ASA Error -143: column '@p0' not found
at com.sybase.jdbc2.tds.Tds.processEed(Tds.java:2429) at com.sybase.jdbc2.tds.Tds.nextResult(Tds.java:1865)
at com.sybase.jdbc2.jdbc.ResultGetter.nextResult(ResultGetter.java:69) at com.sybase.jdbc2.jdbc.SybStatement.nextResult(SybStatement.java:201)
at com.sybase.jdbc2.jdbc.SybStatement.nextResult(SybStatement.java:182) at com.sybase.jdbc2.jdbc.SybStatement.queryLoop(SybStatement.java:1401)
at com.sybase.jdbc2.jdbc.SybStatement.executeQuery(SybStatement.java:1386) at
com.sybase.jdbc2.jdbc.SybPreparedStatement.executeQuery(SybPreparedStatement.java:69)
at weblogic.jdbc.jts.Statement.executeQuery(Statement.java:208) at productEJB.ProductEntityEJB_WebLogic_CMP_RDBMS.ejbFindByPrimaryKey(ProductEntityEJB_WebLogic_CMP_RDBMS.java:288)
at java.lang.reflect.Method.invoke(Native Method) at weblogic.ejb20.cmp11.rdbms.PersistenceManagerImpl.findByPrimaryKey(PersistenceManagerImpl.java:150)
at weblogic.ejb20.manager.BaseEntityManager.findByPrimaryKey(BaseEntityManager.java:434)
at weblogic.ejb20.manager.BaseEntityManager.remoteFindByPrimaryKey(BaseEntityManager.java:381)
at weblogic.ejb20.internal.EntityEJBHome.findByPrimaryKey(EntityEJBHome.java:332)
at productEJB.ProductEntityEJBBean_lyl1ud_HomeImpl.findByPrimaryKey(ProductEntityEJBBean_lyl1ud_HomeImpl.java:98)
at productEJB.ProductEntityEJBBean_lyl1ud_HomeImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:288) at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:257)
at weblogic.rmi.internal.BasicServerRef.dispatch(BasicServerRef.java:158) at weblogic.rmi.internal.ServerRequest.sendOneWayRaw(ServerRequest.java:92)
at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:112) at
weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:253)
at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:220)
at weblogic.rmi.internal.ProxyStub.invoke(ProxyStub.java:35) at $Proxy83.findByPrimaryKey(Unknown
Source) at jsp_servlet._testejb._jspService(_testejb.java:112) at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:263)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:302)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:200)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:2390)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:1959)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137) at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
It seems that there is something wrong with the container generated file "productEJB.ProductEntityEJB_WebLogic_CMP_RDBMS.java",
but looking at it(see the following) I have no clue for what happen. Is this problem
a bug? Any workaround?
Thanks.
/**
* This code was automatically generated at 11:59:57 PM on Sep 18, 2001
* by weblogic.ejb20.cmp11.rdbms.codegen.RDBMSCodeGenerator -- do not edit.
*
* @version unknown
* @author Copyright (c) 2001 by BEA Systems, Inc. All Rights Reserved.
*/
package productEJB;
import java.util.List;
import java.util.Map;
import javax.ejb.EntityContext;
import javax.ejb.ObjectNotFoundException;
import javax.ejb.NoSuchEntityException;
import javax.ejb.EJBException;
import weblogic.ejb20.persistence.spi.PersistenceManager;
import weblogic.ejb20.persistence.spi.PersistenceRuntimeException;
import weblogic.ejb20.persistence.spi.CMPBean;
import weblogic.ejb20.persistence.spi.CMPBeanManager;
import weblogic.ejb20.cmp11.rdbms.PersistenceManagerImpl;
import weblogic.ejb20.cmp11.rdbms.RDBMSUtils;
import weblogic.utils.Debug;
public final class ProductEntityEJB_WebLogic_CMP_RDBMS extends productEJB.ProductEntityEJBBean
implements CMPBean
{
private static String EOL = System.getProperty("line.separator");
private static boolean __WL_updateable = true;
// Snapshot Code to implement Tuned Writes
private boolean __WL_snapshots_enabled = true;
private boolean __WL_modified[] = new boolean [1];
// Snapshot variables
private java.lang.String __WL_snap_product_name;
// This method is called by ejbLoad, ejbPassivate, and ejbRemove
// to initialize the persistent state of the bean and its associated
// variables.
private void __WL_initialize()
{
// initialize persistent state.
product_id = null;
product_name = null;
}
private void __WL_print_byte_array(byte [] b) {
if (b == null) {
weblogic.utils.Debug.say("** NULL **");
} else {
weblogic.utils.Debug.say("Length: "+b.length);
for (int i=0; i<b.length; i++) {
weblogic.utils.Debug.say("** b["+i+"] = "+b[i]);
}
}
}
// Clear snapshot variables on passivation to free any associated
// memory
private void __WL_clear_snapshot_variables() {
__WL_snap_product_name = null;
}
private void __WL_take_snapshot() {
for (int i=0; i<__WL_modified.length; i++) {
__WL_modified[i] = false;
}
__WL_snap_product_name = product_name;
}
private String __WL_determineSetString() {
if (! __WL_snapshots_enabled) return "product_name = ?";
boolean nothingModified = true;
boolean needsComma = false;
StringBuffer sb = new StringBuffer(200);
__WL_modified[0] = product_name != __WL_snap_product_name;
if (__WL_modified[0]) {
nothingModified = false;
__WL_snap_product_name = product_name;
if (needsComma) {
sb.append(", ");
} else {
needsComma = true;
}
sb.append("product_name = ?");
}
if (nothingModified) {
return null;
} else {
return sb.toString();
}
}
private byte [] __WL_snapshot_byte_array(byte [] a) {
if (a == null) return null;
byte [] b = new byte[a.length];
System.arraycopy(a,0,b,0,a.length);
return b;
}
private javax.ejb.EJBContext __WL_EJBContext;
private int __WL_method_state;
private boolean __WL_busy = false;
public javax.transaction.Transaction __WL_getBeanManagedTransaction() {
throw new weblogic.utils.AssertionError("Entity beans can't have"
+ " bean-managed transactions");
}
public void __WL_setBeanManagedTransaction(javax.transaction.Transaction tx)
{
throw new weblogic.utils.AssertionError("Entity beans can't have"
+ " bean-managed transactions");
}
public boolean __WL_isBusy() { return __WL_busy; }
public void __WL_setBusy(boolean b) { __WL_busy = b; }
public int __WL_getMethodState() { return __WL_method_state; }
public void __WL_setMethodState(int state) { __WL_method_state = state; }
public javax.ejb.EJBContext __WL_getEJBContext() { return __WL_EJBContext; }
public void __WL_setEJBContext(javax.ejb.EJBContext ctx) {
__WL_EJBContext = ctx;
}
// =================================================================
// Instance variable(s)
private EntityContext __WL_ctx;
// =================================================================
// Constructor.
public ProductEntityEJB_WebLogic_CMP_RDBMS() {
super();
__WL_initialize();
}
// =================================================================
// the CMP fields.
private boolean[] isModified = new boolean[2];
private PersistenceManagerImpl __WL_pm = null;
private static final boolean __WL_debug =
(System.getProperty(RDBMSUtils.RDBMS_CODEGEN_DEBUG_PROP) != null);
private static final boolean __WL_verbose =
(System.getProperty(RDBMSUtils.RDBMS_CODEGEN_VERBOSE_PROP) != null);
// =================================================================
// Implementation of CMPBean
public void __WL_setup(java.util.Map bmMap, PersistenceManager pm) {
this.__WL_pm = (PersistenceManagerImpl)pm;
}
public Object __WL_getPrimaryKey() {
java.lang.Integer __WL_pk = null;
__WL_pk = this.product_id;
return __WL_pk;
}
public EntityContext __WL_getEntityContext() {
return null;
}
public void __WL_store(boolean unregister) {}
public void __WL_superEjbLoad() {
int oldState = __WL_method_state;
try {
__WL_method_state = STATE_EJBLOAD;
super.ejbLoad();
if (__WL_snapshots_enabled) __WL_take_snapshot();
} finally {
__WL_method_state = oldState;
}
}
public void __WL_copyFrom(CMPBean otherBean) {}
public PersistenceManager __WL_getPersistenceManager() {
return null;
}
public void ejbRemoveWithoutDBUpdate()
throws javax.ejb.RemoveException {
}
public void makeCascadeDelList(Map mapCascadeDelBeans,
List listCascadeDelBeans,
List listCascadeDelBeansWithoutDBUpdate,
boolean withoutDBUpdate)
throws java.lang.Exception
{
listCascadeDelBeans.add(this);
}
//=================================================================
//Finder methods.
public java.lang.Object ejbFindByPrimaryKey(java.lang.Integer param0) throws
javax.ejb.FinderException
{
if(__WL_verbose) {
Debug.say("ProductEntityEJB_WebLogic_CMP_RDBMS.findByPrimaryKey");
}
java.sql.Connection __WL_con = null;
java.sql.PreparedStatement __WL_stmt = null;
java.sql.ResultSet __WL_rs = null;
try {
__WL_con = __WL_pm.getConnection();
} catch (java.lang.Exception e) {
__WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
throw new javax.ejb.FinderException("Couldn't get connection: " +
RDBMSUtils.throwable2StackTrace(e));
}
java.lang.String __WL_query =
"SELECT product_id, product_name FROM dba.product WHERE (? = product_id)";
if(__WL_verbose) {
System.out.println("Finder produced statement string "
+ __WL_query);
}
productEJB.ProductEntityEJB_WebLogic_CMP_RDBMS __WL_bean = null;
try {
__WL_stmt = __WL_con.prepareStatement(__WL_query);
// preparedStatementParamIndex reset.
if (param0 == null) {
__WL_stmt.setNull(1,4);
} else
__WL_stmt.setInt(1, param0.intValue());
__WL_rs = __WL_stmt.executeQuery();
if (__WL_rs.next()) {
__WL_bean = (productEJB.ProductEntityEJB_WebLogic_CMP_RDBMS)__WL_pm.getBeanFromPool();
__WL_bean.product_id = null;
__WL_bean.product_name = null;
__WL_bean.product_id = new Integer(__WL_rs.getInt(1));
if (__WL_rs.wasNull()) { __WL_bean.product_id = null; }
__WL_bean.product_name = (java.lang.String)__WL_rs.getString(2);
if (__WL_rs.wasNull()) { __WL_bean.product_name = null; }
} else {
if(__WL_verbose) {
Debug.say("Throwing FinderException because " +
"bean wasn't found.");
}
throw new javax.ejb.ObjectNotFoundException(
"Bean not found in 'findByPrimaryKey'.");
}
return __WL_bean;
} catch (javax.ejb.FinderException fe) {
throw fe;
} catch (java.sql.SQLException sqle) {
throw new javax.ejb.FinderException(
"Problem in findByPrimaryKey while preparing or executing " +
"statement: '" +
__WL_stmt + "': " + EOL +
RDBMSUtils.throwable2StackTrace(sqle));
} catch (Exception e) {
throw new javax.ejb.FinderException(
"Exception raised in findByPrimaryKey " + EOL +
RDBMSUtils.throwable2StackTrace(e));
} finally {
__WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
}
}
//End finder methods.
//=================================================================
//=================================================================
//Home methods.
//End home methods.
//=================================================================
//=================================================================
// implementation of javax.ejb.EntityBean
public void ejbPostCreate()
{
int oldState = __WL_method_state;
try {
__WL_method_state = STATE_EJB_POSTCREATE;
// No return value
super.ejbPostCreate();
// No return result
} finally {
__WL_method_state = oldState;
}
}
public void ejbActivate()
{
int oldState = __WL_method_state;
try {
__WL_method_state = STATE_EJB_ACTIVATE;
super.ejbActivate();
} finally {
__WL_method_state = oldState;
}
}
public void ejbPassivate()
{
int oldState = __WL_method_state;
try {
__WL_method_state = STATE_EJB_PASSIVATE;
super.ejbPassivate();
__WL_initialize();
__WL_clear_snapshot_variables();
} finally {
__WL_method_state = oldState;
}
}
public void setEntityContext(javax.ejb.EntityContext arg0) {
int oldState = __WL_method_state;
try {
__WL_method_state = STATE_SET_CONTEXT;
super.setEntityContext(arg0);
this.__WL_ctx = arg0;
} finally {
__WL_method_state = oldState;
}
}
public void unsetEntityContext()
{
int oldState = __WL_method_state;
try {
__WL_method_state = STATE_UNSET_CONTEXT;
super.unsetEntityContext();
} finally {
__WL_method_state = oldState;
}
}
public java.lang.Integer ejbCreate() throws javax.ejb.CreateException {
int oldState = __WL_method_state;
try {
__WL_method_state = STATE_EJB_CREATE;
__WL_initialize();
super.ejbCreate();
try {
return (java.lang.Integer)__WL_create();
} catch (javax.ejb.CreateException ce) {
System.out.println("throwing create exception.");
throw ce;
} catch (RuntimeException e) {
if (__WL_debug) System.out.println("throwing runtime exception");
throw e;
}
catch (Exception ex) {
if (__WL_debug) System.out.println("throwing ejbeception");
throw new PersistenceRuntimeException(ex);
}
} finally { __WL_method_state = oldState; }
}
private Object __WL_create() throws Exception {
if (__WL_verbose) {
System.out.println("ProductEntityEJB_WebLogic_CMP_RDBMS.__WL_create");
}
java.sql.Connection __WL_con = null;
java.sql.PreparedStatement __WL_stmt = null;
java.lang.Integer __WL_pk = null;
try {
__WL_pk = this.product_id;
__WL_con = __WL_pm.getConnection();
if(__WL_verbose) {
System.out.println(
"ProductEntityEJB_WebLogic_CMP_RDBMS.__WL_create() got connection "
+
__WL_con);
}
String __WL_query =
"insert into dba.product (product_id, product_name) values (?, ?)";
if(__WL_verbose) {
System.out.println(
"ProductEntityEJB_WebLogic_CMP_RDBMS.createMethodName() produced sqlString
"
+ __WL_query);
}
__WL_stmt = __WL_con.prepareStatement(__WL_query);
// preparedStatementParamIndex reset.
if(!__WL_pm.setParamNull(__WL_stmt, 1, this.product_id, "product_id")) {
__WL_stmt.setInt(1, this.product_id.intValue());
}
if(!__WL_pm.setParamNull(__WL_stmt, 2, this.product_name, "product_name")) {
__WL_stmt.setString(2, this.product_name);
}
int count = __WL_stmt.executeUpdate();
if (count != 1) {
throw new java.lang.Exception("Bean with primary key: '" +
__WL_pk + "' not created.");
}
if (__WL_snapshots_enabled) __WL_take_snapshot();
return __WL_pk;
} catch (java.sql.SQLException se) {
//ejb wants a duplicate key exception if that was what happened
if(__WL_verbose) {
System.out.println("ProductEntityEJB_WebLogic_CMP_RDBMS.__WL_create()
"+
"checking for duplicate key " + __WL_con);
}
boolean exists = false;
try {
exists = __WL_exists(__WL_pk);
}
catch (Exception e) {
throw se;
}
if (exists) {
throw new javax.ejb.DuplicateKeyException("Bean with " +
"primary key: '" + __WL_pk + "' already exists.");
}
else {
throw se;
}
} finally {
__WL_pm.releaseResources(__WL_con, __WL_stmt, null);
}
}
private boolean __WL_exists(Object __WL_key) throws Exception {
if (__WL_verbose) {
System.out.println("ProductEntityEJB_WebLogic_CMP_RDBMS.exists: " + __WL_key);
}
java.sql.Connection __WL_con = null;
java.sql.PreparedStatement __WL_stmt = null;
java.sql.ResultSet __WL_rs = null;
try {
java.lang.Integer __WL_pk = (java.lang.Integer) __WL_key;
__WL_con = __WL_pm.getConnection();
__WL_stmt = __WL_con.prepareStatement(
"select * from dba.product where product_id = ?");
// preparedStatementParamIndex reset.
if(!__WL_pm.setParamNull(__WL_stmt, 1, __WL_pk, "product_id")) {
__WL_stmt.setInt(1, __WL_pk.intValue());
}
__WL_rs = __WL_stmt.executeQuery();
if (__WL_rs.next()) {
if (__WL_verbose) System.out.println("exists returning true");
return true;
}
else {
if (__WL_verbose) System.out.println("exists returning false");
return false;
}
} catch (RuntimeException e) {
if (__WL_debug) System.out.println("throwing runtime exception");
throw e;
}
catch (Exception ex) {
if (__WL_debug) System.out.println("throwing ejbeception");
throw new PersistenceRuntimeException(ex);
}
finally {
__WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
}
}
public void ejbRemove() {
int oldState = __WL_method_state;
try {
__WL_method_state = STATE_EJB_REMOVE;
if (__WL_verbose) {
System.out.println("ProductEntityEJB_WebLogic_CMP_RDBMS.ejbRemove " +
__WL_ctx.getPrimaryKey());
}
super.ejbRemove();
java.sql.Connection __WL_con = null;
java.sql.PreparedStatement __WL_stmt = null;
try {
__WL_initialize();
java.lang.Integer __WL_pk = (java.lang.Integer) __WL_ctx.getPrimaryKey();
__WL_con = __WL_pm.getConnection();
__WL_stmt = __WL_con.prepareStatement(
"delete from dba.product where product_id = ?");
// preparedStatementParamIndex reset.
if(!__WL_pm.setParamNull(__WL_stmt, 1, __WL_pk, "product_id")) {
__WL_stmt.setInt(1, __WL_pk.intValue());
}
int i = __WL_stmt.executeUpdate();
if (i == 0) {
throw new NoSuchEntityException("Bean with " +
"primary key: '" + __WL_pk + "' not found.");
}
} catch (RuntimeException e) {
if (__WL_debug) System.out.println("throwing runtime exception");
throw e;
}
catch (Exception ex) {
if (__WL_debug) System.out.println("throwing ejbeception");
throw new PersistenceRuntimeException(ex);
}
finally {
__WL_pm.releaseResources(__WL_con, __WL_stmt, null);
}
} finally {
__WL_method_state = oldState;
}
}
public void ejbLoad() {
int oldState = __WL_method_state;
try {
__WL_method_state = STATE_EJBLOAD;
__WL_initialize();
try {
if (__WL_verbose) {
Debug.say("ProductEntityEJB_WebLogic_CMP_RDBMS.ejbLoad"
+ __WL_ctx.getPrimaryKey());
}
java.sql.Connection __WL_con = null;
java.sql.PreparedStatement __WL_stmt = null;
java.sql.ResultSet __WL_rs = null;
try {
java.lang.Integer __WL_pk = (java.lang.Integer) __WL_ctx.getPrimaryKey();
__WL_con = __WL_pm.getConnection();
__WL_stmt = __WL_con.prepareStatement("select product_id, product_name from
dba.product where product_id = ?");
// preparedStatementParamIndex reset.
if(!__WL_pm.setParamNull(__WL_stmt, 1, __WL_pk, "product_id")) {
__WL_stmt.setInt(1, __WL_pk.intValue());
}
__WL_rs = __WL_stmt.executeQuery();
if (__WL_rs.next()) {
this.product_id = new Integer(__WL_rs.getInt(1));
if (__WL_rs.wasNull()) { this.product_id = null; }
this.product_name = (java.lang.String)__WL_rs.getString(2);
if (__WL_rs.wasNull()) { this.product_name = null; }
} else {
if(__WL_verbose) {
Debug.say("ProductEntityEJB_WebLogic_CMP_RDBMS.ejbLoad could not "
+ " find primary key " + __WL_pk);
}
throw new NoSuchEntityException("Bean with " +
"primary key: '" + __WL_pk + "' not found.");
}
} finally {
__WL_pm.releaseResources(__WL_con, __WL_stmt, __WL_rs);
}
} catch (RuntimeException e) {
if (__WL_debug) System.out.println("throwing runtime exception");
throw e;
}
catch (Exception ex) {
if (__WL_debug) System.out.println("throwing ejbeception");
throw new PersistenceRuntimeException(ex);
}
super.ejbLoad();
if (__WL_snapshots_enabled) __WL_take_snapshot();
} finally {
__WL_method_state = oldState;
}
}
public void ejbStore() {
int oldState = __WL_method_state;
try {
__WL_method_state = STATE_EJBSTORE;
if (__WL_verbose) {
System.out.println("ProductEntityEJB_WebLogic_CMP_RDBMS.ejbStore "+
__WL_ctx.getPrimaryKey());
}
super.ejbStore();
String setString = __WL_determineSetString();
if (setString == null) {
// nothing to write back to the database
if (__WL_verbose) Debug.say("** Skipping database write for" +
"read-only transaction");
return;
}
if (__WL_updateable) {
if(__WL_verbose) {
Debug.say(
"ProductEntityEJB_WebLogic_CMP_RDBMS.ejbStore: bean is updatable.");
}
java.sql.Connection __WL_con = null;
java.sql.PreparedStatement __WL_stmt = null;
try {
java.lang.Integer __WL_pk = (java.lang.Integer) __WL_ctx.getPrimaryKey();
String __WL_query = "UPDATE dba.product SET " +
setString +
" WHERE product_id = ?";
if(__WL_verbose) {
Debug.say("sql: " + __WL_query);
}
__WL_con = __WL_pm.getConnection();
__WL_stmt = __WL_con.prepareStatement(__WL_query);
int __WL_num = 1;
if((! __WL_snapshots_enabled) || __WL_modified[0]) {
if(!__WL_pm.setParamNull(__WL_stmt, __WL_num, product_name, "product_name")) {
__WL_stmt.setString(__WL_num, product_name);
}
__WL_num++;
__WL_modified[0] = false;
}
if(!__WL_pm.setParamNull(__WL_stmt, __WL_num, __WL_pk, "product_id")) {
__WL_stmt.setInt(__WL_num, __WL_pk.intValue());
}
__WL_num++;
int __WL_i = __WL_stmt.executeUpdate();
if (__WL_i == 0) {
throw new NoSuchEntityException("Bean with " +
"primary key: '" + __WL_pk + "' not found.");
}
} catch (RuntimeException e) {
if (__WL_debug) System.out.println("throwing runtime exception");
throw e;
}
catch (Exception ex) {
if (__WL_debug) System.out.println("throwing ejbeception");
throw new PersistenceRuntimeException(ex);
}
finally {
try {
if (__WL_stmt != null) __WL_stmt.close();
__WL_pm.releaseConnection (__WL_con);
} catch (java.lang.Exception e) {
if (__WL_debug) e.printStackTrace();
throw new EJBException(e);
}
}
}
} finally {
__WL_method_state = oldState;
}
}
// end javax.ejb.EntityBean
//=================================================================
}