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

Reply via email to