Do I need to Create Primary Key Class for Entity beans with Local interface
Do I need to Create Primary Key Class for Entity beans with Local interface?
I have created my entity bean with the wizard in Sun One Studio and it does not create a primary key class for you.
I thought that the primary key class was required. My key is made up of only one field.
Anyone know the answer.
Jim
u dont need to create a primary key class for a entity bean.if ur table's primary key feild(int ,float) is a built in or primitive data type,then u dont need one.But if ur table has a primary key field which is non primitive (for example StudentID,ItemID etc)then u have to create a primary key class.
hope this helps :-)
Similar Messages
-
Need to create a driver class for a program i have made...
hey guys im new to these forums and someone told me that i could get help on here if i get in a bind...my problem is that i need help creating a driver class for a program that i have created and i dont know what to do. i need to know how to do this is because my professor told us after i was 2/3 done my project that we need at least 2 class files for our project, so i need at least 2 class files for it to run... my program is as follows:
p.s might be kinda messy, might need to put it into a text editor
Cipher.java
This program encodes and decodes text strings using a cipher that
can be specified by the user.
import java.io.*;
public class Cipher
public static void printID()
// output program ID
System.out.println ("*********************");
System.out.println ("* Cipher *");
System.out.println ("* *");
System.out.println ("* *");
System.out.println ("* *");
System.out.println ("* CS 181-03 *");
System.out.println ("*********************");
public static void printMenu()
// output menu
System.out.println("\n\n****************************" +
"\n* 1. Set cipher code. *" +
"\n* 2. Encode text. *" +
"\n* 3. Decode coded text. *" +
"\n* 4. Exit the program *" +
"\n****************************");
public static String getText(BufferedReader input, String prompt)
throws IOException
// prompt the user and get their response
System.out.print(prompt);
return input.readLine();
public static int getInteger(BufferedReader input, String prompt)
throws IOException
// prompt and get response from user
String text = getText(input, prompt);
// convert it to an integer
return (new Integer(text).intValue());
public static String encode(String original, int offset)
// declare constants
final int ALPHABET_SIZE = 26; // used to wrap around A-Z
String encoded = ""; // base for string to return
char letter; // letter being processed
// convert message to upper case
original = original.toUpperCase();
// process each character of the message
for (int index = 0; index < original.length(); index++)
// get the letter and determine whether or not to
// add the cipher value
letter = original.charAt(index);
if (letter >='A' && letter <= 'Z')
// is A-Z, so add offset
// determine whether result will be out of A-Z range
if ((letter + offset) > 'Z') // need to wrap around to 'A'
letter = (char)(letter - ALPHABET_SIZE + offset);
else
if ((letter + offset) < 'A') // need to wrap around to 'Z'
letter = (char)(letter + ALPHABET_SIZE + offset);
else
letter = (char) (letter + offset);
// build encoded message string
encoded = encoded + letter;
return encoded;
public static String decode(String original, int offset)
// declare constants
final int ALPHABET_SIZE = 26; // used to wrap around A-Z
String decoded = ""; // base for string to return
char letter; // letter being processed
// make original message upper case
original = original.toUpperCase();
// process each letter of message
for (int index = 0; index < original.length(); index++)
// get letter and determine whether to subtract cipher value
letter = original.charAt(index);
if (letter >= 'A' && letter <= 'Z')
// is A-Z, so subtract cipher value
// determine whether result will be out of A-Z range
if ((letter - offset) < 'A') // wrap around to 'Z'
letter = (char)(letter + ALPHABET_SIZE - offset);
else
if ((letter - offset) > 'Z') // wrap around to 'A'
letter = (char)(letter - ALPHABET_SIZE - offset);
else
letter = (char) (letter - offset);
// build decoded message
decoded = decoded + letter;
return decoded;
// main controls flow throughout the program, presenting a
// menu of options the user.
public static void main (String[] args) throws IOException
// declare constants
final String PROMPT_CHOICE = "Enter your choice: ";
final String PROMPT_VALID = "\nYou must enter a number between 1" +
" and 4 to indicate your selection.\n";
final String PROMPT_CIPHER = "\nEnter the offset value for a caesar " +
"cipher: ";
final String PROMPT_ENCODE = "\nEnter the text to encode: ";
final String PROMPT_DECODE = "\nEnter the text to decode: ";
final String SET_STR = "1"; // selection of 1 at main menu
final String ENCODE_STR = "2"; // selection of 2 at main menu
final String DECODE_STR = "3"; // selection of 3 at main menu
final String EXIT_STR = "4"; // selection of 4 at main menu
final int SET = 1; // menu choice 1
final int ENCODE = 2; // menu choice 2
final int DECODE =3; // menu choice 4
final int EXIT = 4; // menu choice 3
final int ALPHABET_SIZE = 26; // number of elements in alphabet
// declare variables
boolean finished = false; // whether or not to exit program
String text; // input string read from keyboard
int choice; // menu choice selected
int offset = 0; // caesar cipher offset
// declare and instantiate input objects
InputStreamReader reader = new InputStreamReader(System.in);
BufferedReader input = new BufferedReader(reader);
// Display program identification
printID();
// until the user selects the exit option, display the menu
// and respond to the choice
do
// Display menu of options
printMenu();
// Prompt user for an option and read input
text = getText(input, PROMPT_CHOICE);
// While selection is not valid, prompt for correct info
while (!text.equals(SET_STR) && !text.equals(ENCODE_STR) &&
!text.equals(EXIT_STR) && !text.equals(DECODE_STR))
text = getText(input, PROMPT_VALID + PROMPT_CHOICE);
// convert choice to an integer
choice = new Integer(text).intValue();
// respond to the choice selected
switch(choice)
case SET:
// get the cipher value from the user and constrain to
// -25..0..25
offset = getInteger(input, PROMPT_CIPHER);
offset %= ALPHABET_SIZE;
break;
case ENCODE:
// get message to encode from user, and encode it using
// the current cipher value
text = getText(input, PROMPT_ENCODE);
text = encode(text, offset);
System.out.println("Encoded text is: " + text);
break;
case DECODE:
// get message to decode from user, and decode it using
// the current cipher value
text = getText(input, PROMPT_DECODE);
text = decode(text, offset);
System.out.println("Decoded text is: " + text);
break;
case EXIT:
// set exit flag to true
finished = true ;
break;
} // end of switch on choice
} while (!finished); // end of outer do loop
// Thank user
System.out.println("Thank you for using Cipher for all your" +
" code breaking and code making needs.");
}My source in code format...sorry guys :)
Cipher.java
This program encodes and decodes text strings using a cipher that
can be specified by the user.
import java.io.*;
public class Cipher
public static void printID()
// output program ID
System.out.println ("*********************");
System.out.println ("* Cipher *");
System.out.println ("* *");
System.out.println ("* *");
System.out.println ("* *");
System.out.println ("* CS 181-03 *");
System.out.println ("*********************");
public static void printMenu()
// output menu
System.out.println("\n\n****************************" +
"\n* 1. Set cipher code. *" +
"\n* 2. Encode text. *" +
"\n* 3. Decode coded text. *" +
"\n* 4. Exit the program *" +
"\n****************************");
public static String getText(BufferedReader input, String prompt)
throws IOException
// prompt the user and get their response
System.out.print(prompt);
return input.readLine();
public static int getInteger(BufferedReader input, String prompt)
throws IOException
// prompt and get response from user
String text = getText(input, prompt);
// convert it to an integer
return (new Integer(text).intValue());
public static String encode(String original, int offset)
// declare constants
final int ALPHABET_SIZE = 26; // used to wrap around A-Z
String encoded = ""; // base for string to return
char letter; // letter being processed
// convert message to upper case
original = original.toUpperCase();
// process each character of the message
for (int index = 0; index < original.length(); index++)
// get the letter and determine whether or not to
// add the cipher value
letter = original.charAt(index);
if (letter >='A' && letter <= 'Z')
// is A-Z, so add offset
// determine whether result will be out of A-Z range
if ((letter + offset) > 'Z') // need to wrap around to 'A'
letter = (char)(letter - ALPHABET_SIZE + offset);
else
if ((letter + offset) < 'A') // need to wrap around to 'Z'
letter = (char)(letter + ALPHABET_SIZE + offset);
else
letter = (char) (letter + offset);
// build encoded message string
encoded = encoded + letter;
return encoded;
public static String decode(String original, int offset)
// declare constants
final int ALPHABET_SIZE = 26; // used to wrap around A-Z
String decoded = ""; // base for string to return
char letter; // letter being processed
// make original message upper case
original = original.toUpperCase();
// process each letter of message
for (int index = 0; index < original.length(); index++)
// get letter and determine whether to subtract cipher value
letter = original.charAt(index);
if (letter >= 'A' && letter <= 'Z')
// is A-Z, so subtract cipher value
// determine whether result will be out of A-Z range
if ((letter - offset) < 'A') // wrap around to 'Z'
letter = (char)(letter + ALPHABET_SIZE - offset);
else
if ((letter - offset) > 'Z') // wrap around to 'A'
letter = (char)(letter - ALPHABET_SIZE - offset);
else
letter = (char) (letter - offset);
// build decoded message
decoded = decoded + letter;
return decoded;
// main controls flow throughout the program, presenting a
// menu of options the user.
public static void main (String[] args) throws IOException
// declare constants
final String PROMPT_CHOICE = "Enter your choice: ";
final String PROMPT_VALID = "\nYou must enter a number between 1" +
" and 4 to indicate your selection.\n";
final String PROMPT_CIPHER = "\nEnter the offset value for a caesar " +
"cipher: ";
final String PROMPT_ENCODE = "\nEnter the text to encode: ";
final String PROMPT_DECODE = "\nEnter the text to decode: ";
final String SET_STR = "1"; // selection of 1 at main menu
final String ENCODE_STR = "2"; // selection of 2 at main menu
final String DECODE_STR = "3"; // selection of 3 at main menu
final String EXIT_STR = "4"; // selection of 4 at main menu
final int SET = 1; // menu choice 1
final int ENCODE = 2; // menu choice 2
final int DECODE =3; // menu choice 4
final int EXIT = 4; // menu choice 3
final int ALPHABET_SIZE = 26; // number of elements in alphabet
// declare variables
boolean finished = false; // whether or not to exit program
String text; // input string read from keyboard
int choice; // menu choice selected
int offset = 0; // caesar cipher offset
// declare and instantiate input objects
InputStreamReader reader = new InputStreamReader(System.in);
BufferedReader input = new BufferedReader(reader);
// Display program identification
printID();
// until the user selects the exit option, display the menu
// and respond to the choice
do
// Display menu of options
printMenu();
// Prompt user for an option and read input
text = getText(input, PROMPT_CHOICE);
// While selection is not valid, prompt for correct info
while (!text.equals(SET_STR) && !text.equals(ENCODE_STR) &&
!text.equals(EXIT_STR) && !text.equals(DECODE_STR))
text = getText(input, PROMPT_VALID + PROMPT_CHOICE);
// convert choice to an integer
choice = new Integer(text).intValue();
// respond to the choice selected
switch(choice)
case SET:
// get the cipher value from the user and constrain to
// -25..0..25
offset = getInteger(input, PROMPT_CIPHER);
offset %= ALPHABET_SIZE;
break;
case ENCODE:
// get message to encode from user, and encode it using
// the current cipher value
text = getText(input, PROMPT_ENCODE);
text = encode(text, offset);
System.out.println("Encoded text is: " + text);
break;
case DECODE:
// get message to decode from user, and decode it using
// the current cipher value
text = getText(input, PROMPT_DECODE);
text = decode(text, offset);
System.out.println("Decoded text is: " + text);
break;
case EXIT:
// set exit flag to true
finished = true ;
break;
} // end of switch on choice
} while (!finished); // end of outer do loop
// Thank user
System.out.println("Thank you for using Cipher for all your" +
" code breaking and code making needs.");
} -
Need to get primary key value from entity
Hi,
I have 2 pages. In the first page on click of GO button, Im inserting data into table using EO and Immediately navigating to second page.
Primary Key value is generated in EOImpl java file.
In second screen, in the header region, I need to show the row inserted in table.
to query the VO, i need to have primary key generated in EOImpl.
Please let me know how can i get this value in either in PFR of first page or in PR of second page. Thanks.Hi
have you included the eo that tyou are refering to in the header oif the second page..
if both pages are using the same AM, the data will appear.
at worse can you can get the ID from the eo using amethod in your AM. -
Deploying BMP Entity Bean with primary key calss
Hi,
I am using EJB 2.0 with and websphere studio 5.0 and database is sql server 2000.
My BMP Entity bean has a primary key class.From my client I am invoking the Entity Bean by calling it's findbyprimarykey method.
The home interface of my findbyprimarykey method returns a class of type Remote.But in the Entity Bean class,the return type is the primarykey class type.
My problem is invoking this findbyprimarykey from the client to get the remote interface so that the other business methods of the entity bean can be called.
The control goes into the ejbFindbyPrimaryKey but when it is returing from the Entity Bean class,it gives a remote exception (as the return type in Entity Bean class and Home interface are different for the findbyprimarykey method).
I think that somewhere in the deployment decriptor in my websphere,i have to specify the primarykey class type,which i am missing out and hence getting the error.
Please help me out with your advice and solution.
Thanks
Rahul PriyadarshiHi,
Sorry to disturb you again.
Even my code is also almost the same....i am pasting the code below...Please go through it and let me know if I have made any mistake..
EditVendorEntityBean.....(Bean Class)
package code.beans.EditVendor;
import code.beans.dataAccess.*;
import javax.ejb.CreateException;
import javax.ejb.RemoveException;
import javax.ejb.EntityBean;
import javax.ejb.EntityContext;
import javax.ejb.EJBException;
import javax.ejb.FinderException;
import javax.ejb.ObjectNotFoundException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import java.sql.*;
import javax.sql.*;
import java.util.*;
* Bean implementation class for Enterprise Bean: EditVendorEntity
public class EditVendorEntityBean implements javax.ejb.EntityBean {
private static Hashtable dataSources = new Hashtable();
private String username;
private int Vendor_ID;
private int Category_Id;
private String Category_Name;
private String Vendor_Name;
private String Vendor_Address1;
private String Vendor_Address2;
private String Contact_Name;
private String Home_Phone;
private String Work_Phone;
private String email;
private String faxno;
private String userloginname;
private boolean dirtyFlag = false;
private EntityContext context;
private static final String DS_NAME = "jdbc/spiPOPS";
Connection con = null;
Statement stmt = null;
PreparedStatement st = null;
ResultSet res = null;
//***********************Business Methods*********************
// Begin of Busines Methods
public void setData (String[] catname, String vendorname,String vendadd1,String vendadd2,String vendcontact,String venoff,String venres,String mailid,String venfax) {
System.out.println("in setData where Vendor Id= "+ Vendor_ID);
boolean status=false;
boolean existing=false;
ArrayList cat=new ArrayList();
try
cat=getcategorylist(this.Vendor_ID);
catch(SQLException e)
System.out.println("Could not get category list");
System.out.println("Size of cat array -->" + cat.size() + " and string array size -->" + catname.length);
if(catname.length>0)
//Removing unwanted vendor categories for a particular vendor id
for(int i=0;i<cat.size();i++)
existing=false;
String tempdata=(String)cat.get(i);
for(int j=0;j<catname.length;j++)
if(tempdata.equals(catname[j]))
existing=true;
if(!existing)
try
delvencat(this.Vendor_ID,tempdata.trim());
catch(SQLException e)
System.out.println("Could not delete record in POPS_VENDOR_CATEGORY for -->" + tempdata);
//Adding new vendor categories for a particular vendor
try
for(int i=0;i<catname.length;i++)
status=false;
String strcat=catname;
status=checkcat(this.Vendor_ID,strcat.trim());
if(!status)
insertvencat(this.Vendor_ID,strcat.trim());
catch(SQLException e)
System.out.println("Could not insert or select from POPS_VENDOR_CATEGORY table");
this.Vendor_Name =vendorname;
this.Vendor_Address1 =vendadd1;
this.Vendor_Address2 =vendadd2;
this.Contact_Name =vendcontact;
this.Work_Phone =venoff;
this.Home_Phone =venres;
this.email =mailid;
this.faxno =venfax;
dirtyFlag = true;
System.out.println("Leaving set data method");
public Vector getData() {
Vector vctRec=new Vector();
ArrayList arrdatas = new ArrayList();
arrdatas.add(""+this.Vendor_ID);
arrdatas.add(this.Vendor_Name);
arrdatas.add(this.Vendor_Address1);
arrdatas.add(this.Vendor_Address2);
arrdatas.add(this.Contact_Name);
arrdatas.add(this.Work_Phone);
arrdatas.add(this.Home_Phone);
arrdatas.add(this.email);
arrdatas.add(this.faxno);
vctRec.addElement(arrdatas);
ArrayList cat=new ArrayList();
try
System.out.println("Calling getcategorylist from getdata with vendorid-->" + this.Vendor_ID);
cat = getcategorylist(this.Vendor_ID);
catch(SQLException e)
System.out.println("Could not get datas for category list");
vctRec.addElement(cat);
ArrayList allcats=new ArrayList();
try
allcats = getallcategorylist();
catch(SQLException e)
System.out.println("Could not get datas for category list");
vctRec.addElement(allcats);
dirtyFlag = false;
System.out.println("Before return statement in getdata with vector size -->" + vctRec.size());
return vctRec;
// End of Business Methods
//**************************Entity Bean Methods*******************************
* ejbActivate
public void ejbActivate() {
Vendor_ID = Integer.parseInt((String)context.getPrimaryKey());
System.out.println("Inside ejbActivate Vendor_ID-->"+ Vendor_ID);
* ejbLoad
public void ejbLoad() {
System.out.println("Inside ejbLoad ********" );
try {
loadRow();
}catch (Exception ex) {
System.out.println("Failed in loadRow()");
throw new EJBException("ejbLoad: " +
ex.getMessage());
* ejbPassivate
public void ejbPassivate() {
System.out.println("Inside ejbPassivate " );
Vendor_ID = 0;
* ejbRemove
public void ejbRemove() throws javax.ejb.RemoveException {
//Empty Method
* ejbStore
public void ejbStore() {
System.out.println("Inside ejbStore " );
try {
storeRow();
}catch (Exception ex) {
System.out.println("Exception thrown in storeRow" + ex.getMessage());
throw new EJBException("ejbLoad: " +
ex.getMessage());
* getEntityContext
public javax.ejb.EntityContext getEntityContext() {
return context;
* setEntityContext
public void setEntityContext(javax.ejb.EntityContext ctx) {
System.out.println("Inside setEntityContext " );
try{
con = getConnection(DS_NAME);
System.out.println("DB Connection Created!!");
catch(Exception e){
this.context = ctx;
* unsetEntityContext
public void unsetEntityContext() {
System.out.println("Inside unsetEntityContext " );
closeDbConnection(con, res, st);
this.context = null;
* ejbCreate
//code.beans.EditVendor.EditVendorEntityKey
public code.beans.EditVendor.EditVendorEntityKey ejbCreate(String vendorid)
throws javax.ejb.CreateException {
return new EditVendorEntityKey(vendorid);
//return null;
* ejbPostCreate
public void ejbPostCreate(String vendorid) throws javax.ejb.CreateException {
//Empty
* ejbFindByPrimaryKey
//code.beans.EditVendor.EditVendorEntityKey
public code.beans.EditVendor.EditVendorEntityKey ejbFindByPrimaryKey(
code.beans.EditVendor.EditVendorEntityKey primaryKey)
throws javax.ejb.FinderException {
try {
if(selectByPrimaryKey(Integer.parseInt(primaryKey.getVendorId()))) {
System.out.println("Leaving the findbyprimarykey method from the entity bean");
return primaryKey;
//return null;
}else {
throw new ObjectNotFoundException
("Row for id " + primaryKey + " not found.");
}catch (Exception ex) {
throw new EJBException("EXCEPTION IN ejbFindByPrimaryKey :- " + ex.getMessage());
/*********************** Database Utility Routines *************************/
private boolean selectByPrimaryKey(int priKey)
throws SQLException {
System.out.println("inside selectByPrimaryKey for primary key " + priKey);
String queryStr ="SELECT VENDOR_ID FROM POPS_VENDOR WHERE VENDOR_ID = " + priKey;
System.out.println("in selectByPrimaryKey where queryString is: "+ queryStr);
stmt = con.createStatement();
ResultSet result = stmt.executeQuery(queryStr);
if(!result.next()) {
stmt.close();
System.out.println("Did not find "+priKey);
return false;
else { //Found the primaryKey
Vendor_ID = result.getInt("VENDOR_ID");
stmt.close();
return true;
private void loadRow() throws SQLException {
System.out.println("inside loadRow ...");
stmt = con.createStatement();
String queryStr = "SELECT VENDOR_NAME,VENDOR_ADDRESS1,VENDOR_ADDRESS2,CONTACT_NAME,HOME_PHONE,WORK_PHONE,EMAIL_ID,FAX_NO " +
"FROM POPS_VENDOR WHERE VENDOR_ID=" + Vendor_ID;
System.out.println("Inside loadRow()***********"+queryStr);
ResultSet result = stmt.executeQuery(queryStr);
ArrayList catadatas=new ArrayList();
if(!result.next())
throw new SQLException("No record for primary key" + Vendor_ID);
this.Vendor_ID =Vendor_ID;
this.Vendor_Name =result.getString("VENDOR_NAME");
this.Vendor_Address1 =result.getString("VENDOR_ADDRESS1");
this.Vendor_Address2 =result.getString("VENDOR_ADDRESS2");
this.Contact_Name =result.getString("CONTACT_NAME");
this.Home_Phone =result.getString("HOME_PHONE");
this.Work_Phone =result.getString("WORK_PHONE");
this.email =result.getString("EMAIL_ID");
this.faxno =result.getString("FAX_NO");
System.out.println("Leaving loadrow method with loaded datas for vendor -->" + Vendor_ID);
stmt.close();
private ArrayList getcategorylist(int vendor) throws SQLException{
String queryStr ="SELECT DISTINCT(VENDOR_CAT) FROM POPS_VENDOR_CATEGORY WHERE VENDOR_ID=" + vendor;
System.out.println("Query for the cat list --> " + queryStr);
stmt = con.createStatement();
ResultSet result = stmt.executeQuery(queryStr);
ArrayList catdatas=new ArrayList();
try{
while(result.next())
catdatas.add(result.getString("VENDOR_CAT"));
catch (SQLException e){
stmt.close();
System.out.println("Could not retrieve datas for Category list");
stmt.close();
System.out.println("size off array for cat -->" + catdatas.size() + " and datas ->" + catdatas);
return catdatas;
private ArrayList getallcategorylist() throws SQLException{
//String queryStr ="SELECT DISTINCT(VENDOR_CAT) FROM POPS_VENDOR_CATEGORY";
StringBuffer strquery=new StringBuffer(20);
strquery.append("SELECT DISTINCT(CATEGORY_NAME) FROM POPS_CATEGORY");
stmt = con.createStatement();
//ResultSet result = stmt.executeQuery(queryStr);
ResultSet result = stmt.executeQuery(strquery.toString());
ArrayList catdatas=new ArrayList();
try{
while(result.next())
//catdatas.add(result.getString("VENDOR_CAT"));
catdatas.add(result.getString("CATEGORY_NAME"));
catch (SQLException e){
stmt.close();
System.out.println("Could not retrieve datas for All Category list");
stmt.close();
return catdatas;
private void delvencat(int vendor,String vencat) throws SQLException {
int update=-1;
stmt = con.createStatement();
String queryStr ="DELETE FROM POPS_VENDOR_CATEGORY WHERE VENDOR_ID = " + vendor + " AND VENDOR_CAT = '" + vencat.toUpperCase() + "'";
System.out.println("Delete query --> " + queryStr);
update= stmt.executeUpdate(queryStr);
if(update!=1)
System.out.println("Did not find data to delete");
stmt.close();
private void insertvencat(int vendor,String vencat) throws SQLException {
int update=-1;
String queryStr ="INSERT INTO POPS_VENDOR_CATEGORY(VENDOR_ID,VENDOR_CAT)" +
" VALUES(" + vendor +",'" + vencat + "')";
System.out.println("Insert query --> " + queryStr);
stmt = con.createStatement();
update=stmt.executeUpdate(queryStr);
if(update!=1)
System.out.println("Could not insert records in the database");
stmt.close();
private boolean checkcat(int vendor,String catven) throws SQLException {
boolean datastatus=false;
String queryStr ="SELECT VENDOR_ID FROM POPS_VENDOR_CATEGORY WHERE VENDOR_ID = " + vendor + " AND VENDOR_CAT = '" + catven.toUpperCase() + "'";
stmt = con.createStatement();
ResultSet result = stmt.executeQuery(queryStr);
datastatus=result.next();
stmt.close();
return datastatus;
private void storeRow() throws SQLException {
System.out.println("Inside ejb store");
if (!dirtyFlag) {
System.out.println("Skipping the UPDATE because object is not dirty");
return;
CallableStatement cs=null;
try{
cs = con.prepareCall("EXEC POPS_VENDOR_UPDATE " + this.Vendor_ID + ",'" + this.Vendor_Name + "','" + this.Vendor_Address1 + "','" + this.Vendor_Address2 + "','" + this.Contact_Name + "','" + this.Work_Phone + "','" + this.Home_Phone + "','" + this.email + "','" + this.faxno +"'");
System.out.println("\n\n SQL Statement : \n " + "EXEC POPS_VENDOR_UPDATE " + this.Vendor_ID + ",'" + this.Vendor_Name + "','" + this.Vendor_Address1 + "','" + this.Vendor_Address2 + "','" + this.Contact_Name + "','" + this.Work_Phone + "','" + this.Home_Phone + "','" + this.email + "','" + this.faxno +"'");
cs.executeUpdate();
catch (SQLException e){
cs.close();
System.out. println("\n\n Error in calling stored procedure POPS_INSERT_NEW_REQUEST \n\n"+ e.getMessage() + "\n\n");
cs.close();
dirtyFlag = false;
private Connection getConnection(String dbName) throws SQLException
String configuredDataSourceName = null;
if (dbName == null) {
System.out.println("Attemp to get connection failed. The requested database name is null");
DataSource dbSource = getDataSource(dbName);
return dbSource.getConnection();
private DataSource getDataSource(String dbName)
// looking from cache;
DataSource dbSource = (DataSource) dataSources.get(dbName);
if (dbSource == null) { //we need to find it from JNDI
try {
Context ic = new InitialContext();
dbSource = (DataSource) ic.lookup(dbName);
dataSources.put(dbName, dbSource);
}catch (NamingException e){
return dbSource;
* User calls this function to safely close an connection
* @param connt The connection a datasource
* @param rs The resulSet inside this connection
* @param statement The statement associate with this connection
private void closeDbConnection(Connection cont,ResultSet rs,Statement statement)
if (rs != null)
try {
rs.close();
} catch (SQLException ignored) {
ignored.printStackTrace();
if (statement != null)
try {
statement.close();
} catch (SQLException ignored) {
ignored.printStackTrace();
if (cont != null)
try {
cont.close();
} catch (SQLException ignored) {
ignored.printStackTrace();
} //closeDbConnection
EditVendorEntity (Remote Interface)
package code.beans.EditVendor;
import javax.ejb.EJBObject;
import java.rmi.RemoteException;
import java.util.*;
* Remote interface for Enterprise Bean: EditVendorEntity
public interface EditVendorEntity extends javax.ejb.EJBObject {
public void setData (String[] catname, String vendorname,String vendadd1,String vendadd2,String vendcontact,String venoff,String venres,String mailid,String venfax)
throws RemoteException;
public Vector getData() throws RemoteException;
EditVendorEntityHome (Home Interface)
package code.beans.EditVendor;
import java.rmi.RemoteException;
import javax.ejb.CreateException;
import javax.ejb.FinderException;
import javax.ejb.DuplicateKeyException;
import javax.ejb.EJBHome;
import java.util.*;
* Home interface for Enterprise Bean: EditVendorEntity
public interface EditVendorEntityHome extends javax.ejb.EJBHome {
* Creates an instance from a key for Entity Bean: EditVendorEntity
public code.beans.EditVendor.EditVendorEntity create(String vendorid)
throws javax.ejb.CreateException, java.rmi.RemoteException;
* Finds an instance using a key for Entity Bean: EditVendorEntity
public code.beans.EditVendor.EditVendorEntity findByPrimaryKey(
code.beans.EditVendor.EditVendorEntityKey Vendor_ID)
throws javax.ejb.FinderException, java.rmi.RemoteException;
EditVendorEntityKey (Primary Key Class)
package code.beans.EditVendor;
* Key class for Entity Bean: EditVendorEntity
public class EditVendorEntityKey implements java.io.Serializable {
static final long serialVersionUID = 3206093459760846163L;
public String primkey;
* Creates an empty key for Entity Bean: EditVendorEntity
public EditVendorEntityKey() { }
public EditVendorEntityKey(String primarykey) {
this.primkey=primarykey;
public String getVendorId() {
return primkey;
* Returns true if both keys are equal.
public boolean equals(java.lang.Object otherKey) {
if (otherKey instanceof code.beans.EditVendor.EditVendorEntityKey) {
code.beans.EditVendor.EditVendorEntityKey o =
(code.beans.EditVendor.EditVendorEntityKey) otherKey;
return (primkey.equals(otherKey));
return false;
* Returns the hash code for the key.
public int hashCode() {
return (primkey.hashCode());
Please go through and give me your comments and solution...
Thanks in advance
Rahul -
Why do we need a primary key class?
i found a sample ejb, which contains a class only used to store the primary key. is it necessary? why? i guess it's for security issue, anybody can help me to clarify? thanks in advance!
A primary key class is used next to an entity bean. It's used to represent the primary key of the table on which the entity bean is mapped.
When the primary key of the table is only one column, you don't need to implement a primary key class. You can then define java.lang.Integer or java.lang.String or another build in Java object in you deployment descriptor. -
Hi there,
In an entity bean, why do we need a primary key class? I read from some book that an entity bean can work all right without it. Is it true?
RegardsHi,
In cases of Primary Keys defined as Strings, the creation of Primary Key class can be ignored by the bean provider/developer. However the primary key must be generated in the program either in the setprimarykey() defined in class implementing the EntityBean interface.
The ejb-jar.xml can have the entry as <prim-key-class>java.lang.String</prim-key-class> in such cases of both CMP and BMP EB.
As long as you generate the Primary Key and pass it in the various callback methods like ejbFindByPrimaryKey, ejbCreate etc, you can avoid creating the primary key class.
Remember in CMP the ejbCreate in the Home interface returns NULL while in BMP it is the primary key returned.
HTH,
Seetesh -
Hi!
I have deal with EJB 2.0 CMP bean.
I have a composite PK so use the java class to store it. And there is a corresponding field in the Entity Bean with its primary key class type.
The problem is: when deployment tool creates sql query for the findByPrimaryKey(PKClass ck)
where ck is an object with 3 fielde : a_id, b_id, c_id.
it says:
<sql>SELECT "ck" FROM "MyTable" WHERE "ck" = ? </sql>
And it means by the "ck" simple a column in DB but NOT the composite key which has to be splited into 3 different fields. So the container can't do the proper mapping.
Does anyone know solutions?I was wrong about primary key class fields, take a look at Ejb2.0 Specification (10.8.2):
The primary key class must be public, and must have a public constructor with no parameters.
All fields in the primary key class must be declared as public.
The names of the fields in the primary key class must be a subset of the names of the container-managed
fields. (This allows the container to extract the primary key fields from an instance�s container-managed
fields, and vice versa.)
Right now I'm using BMP and I don't have this problems. Primary keys, calculated fields and types not supported by the DB can be easily achieved. But I understand your interest on CMP, is clearly evolving! -
CMP Entity Beans with custom finders an primary key class
Hi everybody.
I've got a Entity with a primary key class and a custom finder. I've defined
the finder into the xml file like iPlanet's documentation say, but, when I
try to run the aplication I get the following error:
Exception: SERVLET-run_failed: Failed in running template:
/PruebaGI/PruebaGI/pruebagi.jsp, java.lang.ClassCastException:
com.netscape.server.deployment.SessionBeanDescriptor
Exception Stack Trace:
java.lang.ClassCastException:
com.netscape.server.deployment.SessionBeanDescriptor
at
com.netscape.server.servlet.servletrunner.AppInfo.popWebAppDescriptor(Unknow
n Source)
at com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
Source)
at com.netscape.server.servlet.servletrunner.ServletRunner.callJSP(Unknown
Source)
at
com.netscape.server.servlet.platformhttp.PlatformHttpServletResponse.callJsp
Compiler(Unknown Source)
at
com.netscape.server.servlet.platformhttp.PlatformHttpServletResponse.callUri
(Unknown Source)
at
com.netscape.server.servlet.platformhttp.PlatformHttpServletResponse.callUri
RestrictOutput(Unknown Source)
at
com.netscape.server.servlet.platformhttp.PlatformRequestDispatcher.forward(U
nknown Source)
at com.netscape.server.servlet.jsp.JSPRunner.service(Unknown Source)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
at com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
Source)
at com.netscape.server.servlet.servletrunner.ServletRunner.execute(Unknown
Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.thread.ThreadBasic.run(Native Method)
at java.lang.Thread.run(Thread.java:479).
Could anybody help my? I need to resolve this question quickly.
Thx
..Hi Juan,
Sounds like you've defined either a java.lang.String where it should have
said Java.util.Vector (or the other way around) in the part of the
deployment descriptor that defines your custom finder method parameter.
Regards,
Raymond
"Juan Jos� Ayuso" <[email protected]> wrote in message
news:[email protected]...
Hi everybody.
I've got a Entity with a primary key class and a custom finder. I'vedefined
the finder into the xml file like iPlanet's documentation say, but, when I
try to run the aplication I get the following error:
Exception: SERVLET-run_failed: Failed in running template:
/PruebaGI/PruebaGI/pruebagi.jsp, java.lang.ClassCastException:
com.netscape.server.deployment.SessionBeanDescriptor
Exception Stack Trace:
java.lang.ClassCastException:
com.netscape.server.deployment.SessionBeanDescriptor
at
com.netscape.server.servlet.servletrunner.AppInfo.popWebAppDescriptor(Unknow
n Source)
at com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
Source)
atcom.netscape.server.servlet.servletrunner.ServletRunner.callJSP(Unknown
Source)
at
com.netscape.server.servlet.platformhttp.PlatformHttpServletResponse.callJsp
Compiler(Unknown Source)
at
com.netscape.server.servlet.platformhttp.PlatformHttpServletResponse.callUri
(Unknown Source)
at
com.netscape.server.servlet.platformhttp.PlatformHttpServletResponse.callUri
RestrictOutput(Unknown Source)
at
com.netscape.server.servlet.platformhttp.PlatformRequestDispatcher.forward(U
nknown Source)
at com.netscape.server.servlet.jsp.JSPRunner.service(Unknown Source)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
at com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
Source)
atcom.netscape.server.servlet.servletrunner.ServletRunner.execute(Unknown
Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.thread.ThreadBasic.run(Native Method)
at java.lang.Thread.run(Thread.java:479).
Could anybody help my? I need to resolve this question quickly.
Thx -
Entity bean with another class as primary key generator class
Hi All,
I have a CMP entity bean in which I generate the primary key using my own class know as unique id generator.
I use it in ejbCreate method in the following manner
public Long ejbCreate(HospitalData hospitalData) throws CreateException{
Long myid = new Long(UniqueIdGenerator.getId());
System.out.println("My id generated ====== "+myid);
this.hospitalid = myid;
System.out.println("My id generated ====== "+this.hospitalid);
System.out.println("Came in ejbCreate method of HospitalEJB");
this.hospitalname = hospitalData.getHospitalname();
return null;
Can you tell me how I map this primary key in my ejb-jar.xml and jbosscmp-jdbc.xml.
Anyhelp would be appreciated.
Thanks
Sameer"Bhamu" <[email protected]> wrote in message
news:9keuo4$[email protected]..
I am trying to develop an entity bean attached to a key which have a
composite key using Primary Key Class. When I use the findByPrimaryKey
method of the bean it throws an exception as follows,I notice that you are using the reference CMP plugin.
at com.netscape.server.ejb.SQLPersistenceManager.find(Unknown Source)I'm also willing to bet that you may have created your own primary key class
with a single field, rather than using the fields type as a primitive
primary key class. If you do this, then SQLPersistenceManager will break.
It is badly written, and has some stupid assumptions. The one I remember
the most is that if you only have one primary key field, then
SQLPersistenceManager assumes you have used a primitive type such as
java.lang.String or java.lang.Integer, to represent it, rather than creating
your own <Enity>Pk.java file.
SQLPersistenceManager works for toy examples, but in general I would say it
is broken and unusable. Either use BMP, or splash out the money for Coco
Base from Thought Inc. Currently the only CMP plugin for iPlanet App server,
other than the reference implementation, that I know of. -
Entity Bean with Primary Key Class
Hi
I am trying to develop an entity bean attached to a key which have a
composite key using Primary Key Class. When I use the findByPrimaryKey
method of the bean it throws an exception as follows,
java.sql.SQLException: Parameter typecheck failed: invalid parameter type:
ORA-00000: normal, successful completion
at com.netscape.server.jdbc.PreparedStatement.verifyError(Unknown Source)
at com.netscape.server.jdbc.PreparedStatement.afterVerify(Unknown Source)
at com.netscape.server.jdbc.PreparedStatement.executeQuery(Unknown Source)
at com.netscape.server.ejb.SQLPersistenceManager.find(Unknown Source)
at
com.netscape.server.ejb.EntityDelegateManagerImpl.doPersistentFind(Unknown
Source)
at com.netscape.server.ejb.EntityDelegateManagerImpl.find(Unknown Source)
at com.kivasoft.eb.EBHomeBase.findSingleByParms(Unknown Source)
at
TestBean2.ejb_home_TestBean2_EntityBean2Bean.findByPrimaryKey(ejb_home_TestB
ean2_EntityBean2Bean.java:120)
at
TestBean2.ejb_kcp_skel_EntityBean2Home.findByPrimaryKey__TestBean2_EntityBea
n2__TestBean2_TestBKey(ejb_kcp_skel_EntityBean2Home.java:258)
at com.kivasoft.ebfp.FPRequest.invokenative(Native Method)
at com.kivasoft.ebfp.FPRequest.invoke(Unknown Source)
at
TestBean2.ejb_kcp_stub_EntityBean2Home.findByPrimaryKey(ejb_kcp_stub_EntityB
ean2Home.java:341)
at
TestBean2.ejb_stub_EntityBean2Home.findByPrimaryKey(ejb_stub_EntityBean2Home
..java:88)
at TestBean2.Simple1.defaultAction(Simple1.java:115)
at TestBean2.Simple1.doGet(Simple1.java:26)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
at com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
Source)
at com.netscape.server.servlet.servletrunner.ServletRunner.execute(Unknown
Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.thread.ThreadBasic.run(Native Method)
at java.lang.Thread.run(Thread.java:479)
javax.ejb.FinderException
at com.netscape.server.ejb.SQLPersistenceManager.find(Unknown Source)
at
com.netscape.server.ejb.EntityDelegateManagerImpl.doPersistentFind(Unknown
Source)
at com.netscape.server.ejb.EntityDelegateManagerImpl.find(Unknown Source)
at com.kivasoft.eb.EBHomeBase.findSingleByParms(Unknown Source)
at
TestBean2.ejb_home_TestBean2_EntityBean2Bean.findByPrimaryKey(ejb_home_TestB
ean2_EntityBean2Bean.java:120)
at
TestBean2.ejb_kcp_skel_EntityBean2Home.findByPrimaryKey__TestBean2_EntityBea
n2__TestBean2_TestBKey(ejb_kcp_skel_EntityBean2Home.java:258)
at com.kivasoft.ebfp.FPRequest.invokenative(Native Method)
at com.kivasoft.ebfp.FPRequest.invoke(Unknown Source)
at
TestBean2.ejb_kcp_stub_EntityBean2Home.findByPrimaryKey(ejb_kcp_stub_EntityB
ean2Home.java:341)
at
TestBean2.ejb_stub_EntityBean2Home.findByPrimaryKey(ejb_stub_EntityBean2Home
..java:88)
at TestBean2.Simple1.defaultAction(Simple1.java:115)
at TestBean2.Simple1.doGet(Simple1.java:26)
[03/Aug/2001 15:26:41:7] error: Exception: SERVLET-execution_failed: Error
in executing servlet Simat
javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServletple1: java.lang.ClassCastException:
com.netscape.server.deployment.EntityBeanDescriptor
Exception .service(HttpServlet.java:865)
at com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
Source)
at com.netscape.server.servlet.servletrunner.ServletRunner.execute(Unknown
Source)Stack Trace:
java.lang.ClassCastException:
com.netscape.server.deployment.EntityBeanDescriptor
a
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.applogic.AppLogic.ext
com.netscape.server.servlet.servletrunner.AppInfo.popWebAppDescriptor(Unknow
n Source)
at com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
Source)
at com.netscape.server.seecute(Unknown Source)
at com.kivasoft.thread.ThreadBasic.run(Native Method)
at java.lang.Threadrvlet.servletrunner.ServletRunner.execute(Unknown
Source)
at com.kivasoft.applogic.AppLogic.execu.run(Thread.java:479)
te(Unknown Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.thread.ThreadBasic.run(Native Method)
at java.lang.Thread.run(Thread.java:479)
Any kind of help is appreciated. I am using iPlanet App Builder 6.0 with iAS
6.0 SP1.
Thanks
Bhaskara Murthy
Eclipse Networks Inc"Bhamu" <[email protected]> wrote in message
news:9keuo4$[email protected]..
I am trying to develop an entity bean attached to a key which have a
composite key using Primary Key Class. When I use the findByPrimaryKey
method of the bean it throws an exception as follows,I notice that you are using the reference CMP plugin.
at com.netscape.server.ejb.SQLPersistenceManager.find(Unknown Source)I'm also willing to bet that you may have created your own primary key class
with a single field, rather than using the fields type as a primitive
primary key class. If you do this, then SQLPersistenceManager will break.
It is badly written, and has some stupid assumptions. The one I remember
the most is that if you only have one primary key field, then
SQLPersistenceManager assumes you have used a primitive type such as
java.lang.String or java.lang.Integer, to represent it, rather than creating
your own <Enity>Pk.java file.
SQLPersistenceManager works for toy examples, but in general I would say it
is broken and unusable. Either use BMP, or splash out the money for Coco
Base from Thought Inc. Currently the only CMP plugin for iPlanet App server,
other than the reference implementation, that I know of. -
What is the best practice for creating primary key on fact table?
what is the best practice for primary key on fact table?
1. Using composite key
2. Create a surrogate key
3. No primary key
In document, i can only find "From a modeling standpoint, the primary key of the fact table is usually a composite key that is made up of all of its foreign keys."
http://download.oracle.com/docs/cd/E11882_01/server.112/e16579/logical.htm#i1006423
I also found a relevant thread states that primary key on fact table is necessary.
Primary Key on Fact Table.
But, if no business requires the uniqueness of the records and there is no materilized view, do we still need primary key? is there any other bad affect if there is no primary key on fact table? and any benifits from not creating primary key?Well, natural combination of dimensions connected to the fact would be a natural primary key and it would be composite.
Having an artificial PK might simplify things a bit.
Having no PK leads to a major mess. Fact should represent a business transaction, or some general event. If you're loading data you want to be able to identify the records that are processed. Also without PK if you forget to make an unique key the access to this fact table will be slow. Plus, having no PK will mean that if you want to used different tools, like Data Modeller in Jbuilder or OWB insert / update functionality it won't function, since there's no PK. Defining a PK for every table is a good practice. Not defining PK is asking for a load of problems, from performance to functionality and data quality.
Edited by: Cortanamo on 16.12.2010 07:12 -
Foreign Keys in Primary Key Class
I am a newbie on toplink. I am getting an error when i run ejbc against the jar file with EJB2.0. One of the primary key classes two primary keys and both are foreign Keys to other tables. Primary Key class looks like this:
public class LcaCyberzoneAssocPK implements java.io.Serializable
public ValueHolderInterface lcaHolder;
public ValueHolderInterface cyberzoneDefHolder;
public LcaCyberzoneAssocPK(ValueHolderInterface lcaHolder,
ValueHolderInterface cyberzoneDefHolder)
super();
this.lcaHolder = lcaHolder;
this.cyberzoneDefHolder = cyberzoneDefHolder;
Bean Class has following four methods:
public abstract Lca getLcaHolder()
throws RemoteException;
public abstract CyberzoneDef getCyberzoneDefHolder()
throws RemoteException;
public abstract void setLcaHolder(Lca arg1)
throws RemoteException;
public abstract void setCyberzoneDefHolder(CyberzoneDef arg1)
throws RemoteException;
The error it is throwing is:
ERROR: Error from ejbc: In EJB LcaCyberzoneAssoc, lcaHolder is declared as oracle.toplink.indirection.ValueHolderInterface in the
pk class, but the corresponding getLcaHolder() method in the bean class returns com.qwest.danconfig.server.ejb.entity.Lca. These t
ypes must match.
Can you please help how to fix this or what is the correct way of doing it.
Second question is, is there any document which explains migrating toplink from EJB1.1 to EJB2.0?
ThanksThe EJB 2.0 spec does not really allow relationships in the primary key class. You may be able to get it to work by using the EJB classes, not ValueHolderInterface in primary key class.
Otherwise you will need to double map the foreign key fields as direct fields to be compliant with the spec. You can still have the one-to-one mappings but your model will need to keep both in synch and mark the one-to-one mappings as read-only. -
Deployment Tool Problem (J2EE -Composite primary Key Class)
Hi !!
e.g. I have an entiybean which has composite primary key class. So while deploying in J2EE tool u need to specify the Primary key class and the primary key field. well in case of a composite primary key class(if u have more than one field)...how do u declare all the fields for primary key class....
if u r not getting me please tell me... See in J2EE deployment tool there is on section called Entity..in that see the Primary Key class (there u specify the Primary key class) and the Primary Key Field Name (the field name) Here u can just give only one Field name..if you have mulitple fields, then where you will specify... Please let me know..
if anybody wants the code I will give the code...Please try to help..(how to deploy this kind of entity bean in J2EE deployment tool)
-BhumikaHi Bhumika,
in case you have more than one field you need to write a Primary key class where the fields you want to be the key are member variables.
your p.key class could look like this (it has to implement hash() and equals() ):
public class PersonPK implements java.io.Serializable
public int person_ID;
public PersonPK()
public PersonPK(int aPersonId)
person_ID = aPersonId;
public int hashCode()
return person_ID;
public boolean equals(Object ob)
if (ob == this) return true;
if (!(ob instanceof PersonPK)) return false;
PersonPK other = (PersonPK) ob;
if (person_ID != other.person_ID) return false;
return true;
-Hope this helps a bit,
Anke -
Creating entity beans with auto numbered primary key
I have two entity bean with a CMR between them. I am successfully creating the first one but when I try and create the child entity bean I get a NullPointerException.
Now I think this is because the gernerated code tries to get the primary key of the created entity bean and this is not set as it is set using a auto number in the database (An oracle sequence and trigger).
Is there anyway i can get round this problem?
Thanks in advance,
AdrianThis is the auto generated code:
public dmd.sync.ejbs.entity.AppliancePackInfoLocal create_Local(dmd.sync.dataobjects.dto.AppliancePackInfoDTO appliancePackInfoDTO, dmd.sync.ejbs.entity.AmppLocal amppLocal) throws javax.ejb.CreateException, java.rmi.RemoteException {
BeanO beanO = null;
dmd.sync.ejbs.entity.AppliancePackInfoLocal result = null;
boolean createFailed = false;
boolean preCreateFlag = false;
try {
beanO = super.createBeanO();
dmd.sync.ejbs.entity.AppliancePackInfoBean bean = (dmd.sync.ejbs.entity.AppliancePackInfoBean) beanO.getEnterpriseBean();
preCreateFlag = super.preEjbCreate(beanO);
bean.ejbCreate(appliancePackInfoDTO, amppLocal);
Object ejsKey = keyFromBean(bean);
result = (dmd.sync.ejbs.entity.AppliancePackInfoLocal) super.postCreate_Local(beanO, ejsKey, true);
bean.ejbPostCreate(appliancePackInfoDTO, amppLocal);
super.afterPostCreate(beanO, ejsKey);
It must be falling over on the last line as it calls the ejbPostCreate fine. -
Why in primary key class overrided in EJB?
in EJB ... why in primary key class Object's Equals() and HashCode() method's were overridden ??
please see the other question.. sorry for inconvinance..
Maybe you are looking for
-
How can I install photoshop cc on demo mode that was accicedentally uninstalled?
How can I install photoshop cc on demo mode that was accicedentally uninstalled?. When I try do do it, on adobe creative cloud appears as installed and there is no way to eliminate. Thank you.
-
Not able to do goods receipt in MIGO
Hi, While doing goods receipt for process order through MIGO, system gives me an error "The document xxxxxxxxxxx does not contain any selectable item".Suppose if it is MB31 we can solve the problem by tick the "suggest zero lines"but for MIGO what we
-
Changing password problem (i have to reset every 10 min)
Hello, im having a issue... I've changed my password following new apple rules: 1) Capital letter 2) at least 1 number 3) normal letter So i have changed and i can login on my apple devices but after 10 minutes i can´t login anymore, is showing passw
-
Problem with importing a Motion project into FCP if it uses a Boris filter
Had an odd and highly frustrating experience. Was using a Boris Continuum filter (the posterizing one) on the background of a Motion project (was using it to age a background of a brick wall to age it and give it a more 'nighttime' look). When I impo
-
How come the firewire I had(and worked) for my old iMac does not fit into the back of my new iMac? See the attached diagram which matches my firewire exactly. But the input on my iMac is perfectly rectangular (without the curved bump on one end). D