here you are.
i've removed som company spesific things so i cant guarantiee it will work. SQL DAO at
bottom.
It reference some beans i do not attach. I also didn't care to remove all of the
numerous methods in this bean.
No, inheritance here - although its smart to do so :)
/Jon
/**
* This is a personalia bean.
*
* @ejb:bean type="BMP" name="Personalia" jndi-name="Personalia" view-type="both"
use-soft-locking="false"
* @ejb:security-role-ref role-name="administrator" role-link="administrator"
* @ejb:permission role-name="administrator"
* @ejb:transaction type="Required"
* @ejb:ejb-ref ejb-name="TagContractor" view-type="remote"
* @ejb:ejb-ref ejb-name="TagContractor" view-type="local"
*
* @ejb:pk class="PersonaliaPK"
* @ejb:interface remote-class="Personalia"
* @ejb:home remote-class="PersonaliaHome"
* @ejb:data-object class="PersonaliaData"
* @ejb:dao class="dao.PersonaliaDAO" impl-jndi="dao"
*
* @ejb:env-entry name="dao" value="dao.mysql.PersonaliaMySQLDAO"
type="java.lang.String"
*/
public abstract class PersonaliaBean implements EntityBean {
public static final short INVALID = 0;
public static final short VALID = 1;
public static final short DELETED = 3;
/**
* Pk
* @ejb:persistent-field
* @ejb:pk-field
*/
public abstract int getPersonaliaId();
/**
*/
public abstract void setPersonaliaId(int id);
/**
* @ejb:interface-method
*/
public int getInvalid() {return INVALID;}
/**
* @ejb:interface-method
*/
public int getValid() {return VALID;}
/**
* @ejb:interface-method
*/
public int getDeleted() {return DELETED;}
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setPersonaliaType(int type);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract int getPersonaliaType();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setGeneralName(String name);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getGeneralName();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setFirstName(String firstname);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getFirstName();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setLastName(String surname);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getLastName();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setAddress1(String adr1);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getAddress1();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setAddress2(String adr2);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getAddress2();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setAddress3(String adr3);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getAddress3();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setAddress4(String adr4);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getAddress4();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setAddress5(String adr5);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getAddress5();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setAddress6(String adr6);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getAddress6();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setAddress7(String adr7);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getAddress7();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setAddress8(String adr8);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getAddress8();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setCity(String city);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getCity();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setRegion(String region);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getRegion();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setPostalCode(String pcode);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getPostalCode();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setContactSupplemental(String sup);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getContactSupplemental();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setFax1(String fax1);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getFax1();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setFax2(String fax2);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getFax2();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setTel1(String tel1);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getTel1();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setTel2(String tel2);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getTel2();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setTel3(String tel3);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getTel3();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setEmail1(String email1);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getEmail1();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setEmail2(String email2);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getEmail2();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setRegistrationDate(Timestamp ts);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract Timestamp getRegistrationDate();
/**
* Personalia deleted or not
*/
public abstract void setPersonaliaStatus(short status);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract short getPersonaliaStatus();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setPersonaliaComments(String comments);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getPersonaliaComments();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setBirthDate(Timestamp ts);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract Timestamp getBirthDate();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setGender(String gender);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getGender();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setCountry(String country);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getCountry();
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract void setContactPerson(String contact);
/**
* @ejb:interface-method
* @ejb:persistent-field
*/
public abstract String getContactPerson();
/**
* @ejb.create-method
* @dao:call name="create"
* @ejb:permission role-name="administrator"
*/
public abstract PersonaliaPK ejbCreate() throws CreateException;
/**
* @ejb.create-method
* @dao:call name="create"
* @ejb:permission role-name="administrator"
*/
public abstract PersonaliaPK ejbCreate(PersonaliaData data) throws CreateException;
public void ejbPostCreate() {System.out.println("postCreate()");}
public void ejbPostCreate(PersonaliaData data)
{System.out.println("postcreate(PersonaliaData)");}
public void ejbActivate() {System.out.println("activate");}
public void ejbPassivate() {System.out.println("passivate");}
/**
* @return Collection A collection of PersonaliaPK's
* @dao:call name="findAll"
*/
public abstract Collection ejbFindAll()
throws FinderException;
/**
* @dao:call name="findByPrimaryKey"
*/
public abstract PersonaliaPK ejbFindByPrimaryKey(PersonaliaPK pk)
throws FinderException;
// EntityBean implementation -------------------------------------
/**
* Remove
*
* @ejb:transaction type="Mandatory"
*/
public void ejbRemove() throws RemoveException {};
}
***********************************
package dao.mysql;
import ejb.*;
import dao.*;
import java.util.*;
import javax.ejb.*;
import javax.ejb.FinderException;
import javax.naming.InitialContext;
import javax.sql.DataSource;
import java.sql.*;
public class PersonaliaMySQLDAO
implements PersonaliaDAO
{
public void init(){
}
public void load(PersonaliaPK pk, PersonaliaBean bean)
{
System.out.println("loading");
Connection conn = null;
PreparedStatement prep=null;
try {
conn = getConnection();
prep = null;
prep = conn.prepareStatement("SELECT * FROM personalia WHERE personaliaid = ?");
prep.setInt(1,pk.getPersonaliaId());
ResultSet rs = prep.executeQuery();
rs.next();
bean.setPersonaliaType(rs.getInt("personaliatype"));
bean.setPersonaliaId(pk.getPersonaliaId());
bean.setGeneralName(rs.getString("generalname"));
bean.setFirstName(rs.getString("firstname"));
bean.setLastName(rs.getString("lastname"));
bean.setAddress1(rs.getString("adress1"));
bean.setAddress2(rs.getString("adress2"));
bean.setAddress3(rs.getString("adr1"));
bean.setAddress4(rs.getString("adr2"));
bean.setAddress5(rs.getString("adr3"));
bean.setAddress6(rs.getString("adr4"));
bean.setAddress7(rs.getString("adr5"));
bean.setAddress8(rs.getString("adr6"));
bean.setCity(rs.getString("city"));
bean.setRegion(rs.getString("region"));
bean.setPostalCode(rs.getString("postalcode"));
bean.setContactSupplemental(rs.getString("contactsupplemental"));
bean.setFax1(rs.getString("fax1"));
bean.setFax2(rs.getString("fax2"));
bean.setTel1(rs.getString("tel1"));
bean.setTel2(rs.getString("tel2"));
bean.setTel3(rs.getString("tel3"));
bean.setEmail1(rs.getString("email1"));
bean.setEmail2(rs.getString("email2"));
bean.setRegistrationDate(rs.getTimestamp("registrationdate"));
bean.setPersonaliaStatus(rs.getShort("personaliastatus"));
bean.setPersonaliaComments(rs.getString("personaliacomments"));
bean.setBirthDate(rs.getTimestamp("datebirth"));
bean.setGender(rs.getString("sex"));
bean.setCountry(rs.getString("country"));
bean.setContactPerson(rs.getString("contactperson"));
} catch(SQLException e) {
e.printStackTrace();
throw new EJBException(e.toString());
} finally {
try {
prep.close();
conn.close();
} catch (Exception e) {}
}
}
public void store(PersonaliaBean bean)
{
System.out.println("Storing Personalia");
Connection conn = null;
PreparedStatement prep=null;
try {
conn = getConnection();
prep = null;
prep = conn.prepareStatement("UPDATE personalia SET "+
"personaliatype = ?, "+
"generalname = ?, "+
"firstname = ?, "+
"lastname = ?, "+
"adress1 = ?, "+
"adress2 = ?, "+
"adr1 = ?, "+
"adr2 = ?, "+
"adr3 = ?, "+
"adr4 = ?, "+
"adr5 = ?, "+
"adr6 = ?, "+
"city = ?, "+
"region = ?, "+
"postalcode = ?, "+
"contactsupplemental = ?, "+
"fax1 = ?, "+
"fax2 = ?, "+
"tel1 = ?, "+
"tel2 = ?, "+
"tel3 = ?, "+
"email1 = ?, "+
"email2 = ?, "+
"registrationdate = ?, "+
"personaliastatus = ?, "+
"personaliacomments = ?, "+
"datebirth = ?, "+
"sex = ?, "+
"country = ?, "+
"contactperson = ? "+
"WHERE personaliaid = ?");
prep.setInt(1,bean.getPersonaliaType());
prep.setString(2,bean.getGeneralName());
prep.setString(3,bean.getFirstName());
prep.setString(4,bean.getLastName());
prep.setString(5,bean.getAddress1());
prep.setString(6,bean.getAddress2());
prep.setString(7,bean.getAddress3());
prep.setString(8,bean.getAddress4());
prep.setString(9,bean.getAddress5());
prep.setString(10,bean.getAddress6());
prep.setString(11,bean.getAddress7());
prep.setString(12,bean.getAddress8());
prep.setString(13,bean.getCity());
prep.setString(14,bean.getRegion());
prep.setString(15,bean.getPostalCode());
prep.setString(16,bean.getContactSupplemental());
prep.setString(17,bean.getFax1());
prep.setString(18,bean.getFax2());
prep.setString(19,bean.getTel1());
prep.setString(20,bean.getTel2());
prep.setString(21,bean.getTel3());
prep.setString(22,bean.getEmail1());
prep.setString(23,bean.getEmail2());
prep.setTimestamp(24,bean.getRegistrationDate());
prep.setShort(25,bean.getPersonaliaStatus());
prep.setString(26,bean.getPersonaliaComments());
prep.setTimestamp(27,bean.getBirthDate());
prep.setString(28,bean.getGender());
prep.setString(29,bean.getCountry());
prep.setString(30,bean.getContactPerson());
prep.setInt(31,bean.getPersonaliaId());
System.out.println("ID: "+bean.getPersonaliaId());
ResultSet rs = prep.executeQuery();
} catch(Exception e) {
e.printStackTrace();
} finally {
try {
prep.close();
conn.close();
} catch (Exception e) {}
}
}
public PersonaliaPK create() throws javax.ejb.CreateException {
System.out.println("creating ()");
PersonaliaData empty = null;
return create(empty);
}
public PersonaliaPK create(PersonaliaData data) throws CreateException {
System.out.println("creating (PersonaliaData)");
Connection conn = null;
PreparedStatement prep=null;
PersonaliaPK pk = null;
if(data==null)
data = new PersonaliaData(); // use default
try {
conn = getConnection();
prep = null;
prep = conn.prepareStatement("INSERT INTO personalia ("+
"personaliatype,"+
"generalname,"+
"firstname,"+
"lastname,"+
"adress1,"+
"adress2,"+
"adr1,"+
"adr2,"+
"adr3,"+
"adr4,"+
"adr5,"+
"adr6,"+
"city,"+
"region,"+
"postalcode,"+
"contactsupplemental,"+
"fax1,"+
"fax2,"+
"tel1,"+
"tel2,"+
"tel3,"+
"email1,"+
"email2,"+
"registrationdate,"+
"personaliastatus,"+
"personaliacomments,"+
"datebirth,"+
"sex,"+
"country,"+
"contactperson)"+
"VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)");
prep.setInt(1,data.getPersonaliaType());
prep.setString(2,data.getGeneralName());
prep.setString(3,data.getFirstName());
prep.setString(4,data.getLastName());
prep.setString(5,data.getAddress1());
prep.setString(6,data.getAddress2());
prep.setString(7,data.getAddress3());
prep.setString(8,data.getAddress4());
prep.setString(9,data.getAddress5());
prep.setString(10,data.getAddress6());
prep.setString(11,data.getAddress7());
prep.setString(12,data.getAddress8());
prep.setString(13,data.getCity());
prep.setString(14,data.getRegion());
prep.setString(15,data.getPostalCode());
prep.setString(16,data.getContactSupplemental());
prep.setString(17,data.getFax1());
prep.setString(18,data.getFax2());
prep.setString(19,data.getTel1());
prep.setString(20,data.getTel2());
prep.setString(21,data.getTel3());
prep.setString(22,data.getEmail1());
prep.setString(23,data.getEmail2());
prep.setTimestamp(24,data.getRegistrationDate());
prep.setShort(25,data.getPersonaliaStatus());
prep.setString(26,data.getPersonaliaComments());
prep.setTimestamp(27,data.getBirthDate());
prep.setString(28,data.getGender());
prep.setString(29,data.getCountry());
prep.setString(30,data.getContactPerson());
ResultSet rs = prep.executeQuery();
// return newly auto-generated id
prep = conn.prepareStatement("SELECT LAST_INSERT_ID() AS pk");
rs = null;
rs = prep.executeQuery();
rs.next();
int id = rs.getInt("pk");
pk = new PersonaliaPK(id);
} catch(Exception e) {
e.printStackTrace();
throw new CreateException(e.toString());
} finally {
try {
prep.close();
conn.close();
} catch (Exception e) {}
}
System.out.println("created");
return pk;
}
/**
* removes the personalia by setting personaliastatus to
* Personalia.DELETED
* Normally one need, whithin a transaction, to check the eventually tagcontracts
* this person owns to ensure they are terminated before this is done.
*/
public void remove(PersonaliaPK pk)
{
System.out.println("removing "+pk);
Connection conn = null;
PreparedStatement prep = null;
try {
conn = getConnection();
prep = null;
prep = conn.prepareStatement("UPDATE personalia SET personaliastatus = ?");
prep.setShort(1,PersonaliaBean.DELETED);
// Remove tagcontractors
ResultSet rs = prep.executeQuery();
Collection rel = TagContractorUtil.getLocalHome().findByPersonalia(pk);
Iterator it = rel.iterator();
while(it.hasNext()) {
TagContractorLocal t = ((TagContractorLocal)it.next());
t.remove();
}
} catch(Exception e) {
e.printStackTrace();
} finally {
try {
prep.close();
conn.close();
} catch (Exception e) {}
}
}
public PersonaliaPK findByPrimaryKey(PersonaliaPK pk) throws FinderException
{
System.out.println("findByPrimaryKey");
Connection conn = null;
PreparedStatement prep=null;
try {
conn = getConnection();
prep = null;
prep = conn.prepareStatement("SELECT personaliaid FROM personalia WHERE
personaliaid= ?");
prep.setInt(1,pk.getPersonaliaId());
ResultSet rs = prep.executeQuery();
rs.next();
} catch(Exception e) {
e.printStackTrace();
throw new FinderException(e.toString());
} finally {
try {
prep.close();
conn.close();
} catch (Exception e) {}
}
System.out.println("findByPrimaryKey");
return pk;
}
public Collection findAll() throws FinderException
{
System.out.println("findAll");
Vector ret = new Vector();
PersonaliaPK pk;
Connection conn = null;
PreparedStatement prep=null;
try {
conn = getConnection();
prep = null;
prep = conn.prepareStatement("SELECT personaliaid FROM personalia");
ResultSet rs = prep.executeQuery();
while(rs.next()) {
ret.add(new PersonaliaPK(rs.getInt("personaliaid")));
}
} catch(Exception e) {
e.printStackTrace();
throw new FinderException(e.toString());
} finally {
try {
prep.close();
conn.close();
} catch (Exception e) {}
}
return ret;
}
private static Connection getConnection() throws SQLException {
DataSource ds = null;
System.out.println("Getting connection!");
try {
ds = (javax.sql.DataSource) new InitialContext().lookup("java:****DS");
System.out.println("Got connection!");
} catch (Exception e) {
e.printStackTrace();
throw new EJBException(e);
}
return ds.getConnection();
}
}
-------------------------------------------------------
Sponsored by:
ThinkGeek at http://www.ThinkGeek.com/
_______________________________________________
Xdoclet-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/xdoclet-user