Search in sources :

Example 11 with Account

use of org.apache.openejb.test.object.Account in project tomee by apache.

the class BeanTxStatelessBean method retreiveAccount.

public Account retreiveAccount(final String ssn) throws RemoteException {
    final Account acct = new Account();
    try {
        final DataSource ds = (DataSource) jndiContext.lookup("java:comp/env/database");
        final Connection con = ds.getConnection();
        try {
            final PreparedStatement stmt = con.prepareStatement("select * from Account where SSN = ?");
            try {
                stmt.setString(1, ssn);
                final ResultSet rs = stmt.executeQuery();
                if (!rs.next())
                    return null;
                acct.setSsn(rs.getString(1));
                acct.setFirstName(rs.getString(2));
                acct.setLastName(rs.getString(3));
                acct.setBalance(rs.getInt(4));
            } finally {
                stmt.close();
            }
        } finally {
            con.close();
        }
    } catch (final Exception e) {
        e.printStackTrace();
        throw new RemoteException("[Bean] " + e.getClass().getName() + " : " + e.getMessage());
    }
    return acct;
}
Also used : Account(org.apache.openejb.test.object.Account) Connection(java.sql.Connection) ResultSet(java.sql.ResultSet) PreparedStatement(java.sql.PreparedStatement) RemoteException(java.rmi.RemoteException) RemoteException(java.rmi.RemoteException) EJBException(javax.ejb.EJBException) RollbackException(javax.transaction.RollbackException) CreateException(javax.ejb.CreateException) DataSource(javax.sql.DataSource)

Aggregations

RollbackException (javax.transaction.RollbackException)11 Account (org.apache.openejb.test.object.Account)11 RemoteException (java.rmi.RemoteException)5 Connection (java.sql.Connection)5 PreparedStatement (java.sql.PreparedStatement)5 ResultSet (java.sql.ResultSet)5 CreateException (javax.ejb.CreateException)5 EJBException (javax.ejb.EJBException)5 DataSource (javax.sql.DataSource)5