Closing a ResultSet and rethrowing an Exception Is this an acceptable way to make sure a java.sql.ResultSet is always closed, and also make sure that an Exception caught is propagated to the caller?  

Please don't hesitate to review other aspects of this sample as well.

public void updateReplicationStatus(BeanReplicationTask taskBean, String strStatus) throws Exception {
    String strSelect = this.createReplicationSelectStatement(taskBean);
    ResultSet resultSet = null;
    try {
        resultSet = DerbyDog.getResultSet(strSelect);
        if (resultSet.next()) {
            resultSet.updateString(COLUMN_STATUS, strStatus);
            resultSet.updateRow();
        }
    } catch (Exception e) {
        throw e;
    } finally {
        if (resultSet != null) {
            resultSet.close();
        }
    }
}
Close a ResultSet/Resource

If you are using java 7 then I would recommend to use try with resources

it will take care of closing ResultSet for you and make your code a little cleaner.

public void updateReplicationStatus(BeanReplicationTask taskBean, String strStatus) throws Exception {
    String strSelect = this.createReplicationSelectStatement(taskBean);       
    try (ResultSet resultSet = DerbyDog.getResultSet(strSelect) {            
        if (resultSet.next()) {
            resultSet.updateString(COLUMN_STATUS, strStatus);
            resultSet.updateRow();
        }
    } catch (Exception e) {
        throw e;
    } 
}


Exception Handling

personal I prefer to wrap my own exceptions around generic exceptions. 

That way I can throw a more precise exception with a comment to help myself when debugging

public void updateReplicationStatus(BeanReplicationTask taskBean, String strStatus)   throws ReplicationStatusException {
    String strSelect = this.createReplicationSelectStatement(taskBean);       
    try (ResultSet resultSet = DerbyDog.getResultSet(strSelect) {            
        if (resultSet.next()) {
            resultSet.updateString(COLUMN_STATUS, strStatus);
            resultSet.updateRow();
        }
    } catch (SqlException e) {
        throw new ReplicationStatusException("update ReplicationStatus failed because of a SQLException", e);
    } catch (Exception e) {
        throw new ReplicationStatusException("update ReplicationStatus failed because of an unexpected exception", e)
    }   
}


that's about my 2 cents