Example usage for java.sql ResultSet beforeFirst

List of usage examples for java.sql ResultSet beforeFirst

Introduction

In this page you can find the example usage for java.sql ResultSet beforeFirst.

Prototype

void beforeFirst() throws SQLException;

Source Link

Document

Moves the cursor to the front of this ResultSet object, just before the first row.

Usage

From source file:com.github.woonsan.jdbc.jcr.impl.JcrJdbcResultSetTest.java

@SuppressWarnings("deprecation")
@Test/*from  w  w w.ja v  a  2s . c  om*/
public void testResultSetWhenClosed() throws Exception {
    Statement statement = getConnection().createStatement();
    ResultSet rs = statement.executeQuery(SQL_EMPS);

    rs.close();

    try {
        rs.isBeforeFirst();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.isAfterLast();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.isFirst();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.isLast();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.beforeFirst();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.afterLast();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.first();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.last();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.next();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getRow();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getType();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getConcurrency();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.rowUpdated();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.rowDeleted();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.rowInserted();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getStatement();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.wasNull();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getString(1);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getString("col1");
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getBoolean(1);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getBoolean("col1");
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getByte(1);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getByte("col1");
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getShort(1);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getShort("col1");
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getInt(1);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getInt("col1");
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getLong(1);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getLong("col1");
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getFloat(1);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getFloat("col1");
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getDouble(1);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getDouble("col1");
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getBigDecimal(1);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getBigDecimal("col1");
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getBytes(1);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getBytes("col1");
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getDate(1);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getDate(1, null);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getDate("col1");
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getDate("col1", null);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getTime(1);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getTime(1, null);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getTime("col1");
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getTime("col1", null);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getTimestamp(1);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getTimestamp(1, null);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getTimestamp("col1");
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getTimestamp("col1", null);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getAsciiStream(1);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getAsciiStream("col1");
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getUnicodeStream(1);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getUnicodeStream("col1");
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getBinaryStream(1);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getBinaryStream("col1");
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getCharacterStream(1);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getCharacterStream("col1");
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getMetaData();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.setFetchDirection(1);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getFetchDirection();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.setFetchSize(100);
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getFetchSize();
        fail();
    } catch (SQLException ignore) {
    }

    try {
        rs.getHoldability();
        fail();
    } catch (SQLException ignore) {
    }

    statement.close();
}

From source file:org.openbizview.util.Bvt002.java

/**
 * Leer Datos de Usuarios/*from  ww  w . j a  va  2 s  .com*/
 *<p> Parametros del Metodo: String coduser, String desuser.
 * String pool
* @throws IOException 
 **/
public void selectLogin(String user, String pool) throws NamingException {

    //Pool de conecciones JNDI. Cambio de metodologia de conexion a Bd. Julio 2010
    Context initContext = new InitialContext();
    DataSource ds = (DataSource) initContext.lookup(JNDI);
    try {
        Statement stmt;
        ResultSet rs;
        Connection con = ds.getConnection();
        //Reconoce la base de datos de coneccin para ejecutar el query correspondiente a cada uno
        DatabaseMetaData databaseMetaData = con.getMetaData();
        productName = databaseMetaData.getDatabaseProductName();//Identifica la base de datos de coneccin
        //Class.forName(getDriver());
        //con = DriverManager.getConnection(
        //        getUrl(), getUsuario(), getClave());
        stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
        String query = "";

        //System.out.println( productName );

        switch (productName) {
        case "Oracle":
            query = "SELECT trim(coduser), trim(cluser), trim(B_CODROL), trim(desuser), trim(mail), instancia";
            query += " FROM BVT002";
            query += " where coduser = '" + user.toUpperCase() + "'";
            break;
        case "PostgreSQL":
            query = "SELECT trim(coduser), trim(cluser), trim(B_CODROL), trim(desuser), trim(mail), instancia";
            query += " FROM BVT002";
            query += " where coduser = '" + user.toUpperCase() + "'";
            break;
        case "Microsoft SQL Server":
            query = "SELECT coduser, cluser, B_CODROL, desuser, mail, instancia";
            query += " FROM BVT002";
            query += " where coduser = '" + user.toUpperCase() + "'";
            break;
        }

        // System.out.println(query);
        try {
            rs = stmt.executeQuery(query);
            rows = 1;
            rs.last();
            rows = rs.getRow();
            //System.out.println(rows);

            ResultSetMetaData rsmd = rs.getMetaData();
            columns = rsmd.getColumnCount();
            //System.out.println(columns);
            arr = new String[rows][columns];

            int i = 0;
            rs.beforeFirst();
            while (rs.next()) {
                for (int j = 0; j < columns; j++) {
                    arr[i][j] = rs.getString(j + 1);
                }
                i++;
            }
        } catch (SQLException e) {
        }
        stmt.close();
        con.close();

    } catch (Exception e) {
        e.printStackTrace();
    }
}

From source file:it.cnr.icar.eric.server.persistence.rdb.SQLPersistenceManagerImpl.java

/**
 * Executes an SQL Query./*from   www  .  j  a v a2s.c  o m*/
 */
@SuppressWarnings({ "static-access", "unchecked" })
public List<IdentifiableType> executeSQLQuery(ServerRequestContext context, String sqlQuery,
        List<String> queryParams, ResponseOptionType ebResponseOptionType, String tableName, List<?> objectRefs,
        IterativeQueryParams paramHolder) throws RegistryException {
    @SuppressWarnings("rawtypes")
    List ebIdentifiableTypeResultList = null;
    Connection connection = null;
    int startIndex = paramHolder.startIndex;
    int maxResults = paramHolder.maxResults;
    int totalResultCount = -1;
    Statement stmt = null;

    try {
        connection = context.getConnection();

        java.sql.ResultSet rs = null;

        tableName = Utility.getInstance().mapTableName(tableName);

        ReturnType returnType = ebResponseOptionType.getReturnType();
        @SuppressWarnings("unused")
        boolean returnComposedObjects = ebResponseOptionType.isReturnComposedObjects();

        if (maxResults < 0) {
            if (queryParams == null) {
                stmt = connection.createStatement();
            } else {
                stmt = connection.prepareStatement(sqlQuery);
            }
        } else {
            if (queryParams == null) {
                stmt = connection.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,
                        java.sql.ResultSet.CONCUR_READ_ONLY);
            } else {
                stmt = connection.prepareStatement(sqlQuery, java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,
                        java.sql.ResultSet.CONCUR_READ_ONLY);
            }
        }

        if (log.isDebugEnabled()) {
            log.debug("Executing query: '" + sqlQuery + "'");
            if (dumpStackOnQuery) {
                Thread.currentThread().dumpStack();
            }
        }

        if (queryParams == null) {
            rs = stmt.executeQuery(sqlQuery);
        } else {
            Iterator<String> iter = queryParams.iterator();
            int paramCount = 0;
            while (iter.hasNext()) {
                Object param = iter.next();
                ((PreparedStatement) stmt).setObject(++paramCount, param);
            }
            rs = ((PreparedStatement) stmt).executeQuery();
        }
        if (maxResults >= 0) {
            rs.last();
            totalResultCount = rs.getRow();
            // Reset back to before first row so that DAO can correctly
            // scroll
            // through the result set
            rs.beforeFirst();
        }
        @SuppressWarnings("unused")
        Iterator<?> iter = null;

        log.debug("::3:: SQL result ReturnType" + returnType.toString());

        if (returnType == ReturnType.OBJECT_REF) {

            ebIdentifiableTypeResultList = new ArrayList<Object>();

            if (startIndex > 0) {
                rs.last();
                totalResultCount = rs.getRow();
                rs.beforeFirst();
                // calling rs.next() is a workaround for some drivers, such
                // as Derby's, that do not set the cursor during call to
                // rs.relative(...)
                rs.next();
                @SuppressWarnings("unused")
                boolean onRow = rs.relative(startIndex - 1);
            }

            int cnt = 0;
            while (rs.next()) {

                ObjectRefType ebObjectRefType = bu.rimFac.createObjectRefType();
                // TODO: JAXBElement

                String id = rs.getString(1);
                ebObjectRefType.setId(id);
                ebIdentifiableTypeResultList.add(ebObjectRefType);

                if (++cnt == maxResults) {
                    break;
                }
            }
        } else if (returnType == ReturnType.REGISTRY_OBJECT) {
            context.setResponseOption(ebResponseOptionType);
            RegistryObjectDAO roDAO = new RegistryObjectDAO(context);
            ebIdentifiableTypeResultList = roDAO.getObjects(rs, startIndex, maxResults);

        } else if ((returnType == ReturnType.LEAF_CLASS)
                || (returnType == ReturnType.LEAF_CLASS_WITH_REPOSITORY_ITEM)) {
            ebIdentifiableTypeResultList = getObjects(context, connection, rs, tableName, ebResponseOptionType,
                    objectRefs, startIndex, maxResults);

        } else {
            throw new RegistryException(ServerResourceBundle.getInstance()
                    .getString("message.invalidReturnType", new Object[] { returnType }));
        }

    } catch (SQLException e) {
        throw new RegistryException(e);
    } finally {
        try {
            if (stmt != null) {
                stmt.close();
            }
        } catch (SQLException sqle) {
            log.error(ServerResourceBundle.getInstance().getString("message.CaughtException1"), sqle);
        }
    }

    paramHolder.totalResultCount = totalResultCount;

    return ebIdentifiableTypeResultList;
}

From source file:recite18th.controller.Controller.java

public void print(String action) {
    /** thanks to http://www.java2s.com/Code/Java/PDF-RTF/DemonstratesthecreatingPDFinportraitlandscape.htm
     * QUICK FIX : do landscape/*w w  w  .  ja  va2 s  .c o m*/
     */
    response.setContentType("application/pdf"); // Code 1
    if (action.equals("download")) {
        response.setHeader("Content-Transfer-Encoding", "binary");
        response.setHeader("Content-Disposition",
                "attachment; filename=\"" + "Report " + controllerName + ".pdf\"");
    }
    Document document = new Document(PageSize.A1.rotate());
    try {
        PdfWriter writer = PdfWriter.getInstance(document, response.getOutputStream()); // Code 2
        document.open();

        // various fonts
        BaseFont bf_helv = BaseFont.createFont(BaseFont.HELVETICA, "Cp1252", false);
        BaseFont bf_times = BaseFont.createFont(BaseFont.TIMES_ROMAN, "Cp1252", false);
        BaseFont bf_courier = BaseFont.createFont(BaseFont.COURIER, "Cp1252", false);
        BaseFont bf_symbol = BaseFont.createFont(BaseFont.SYMBOL, "Cp1252", false);

        String headerImage = Config.base_path + "images/report-logo.gif";

        Image imghead = Image.getInstance(headerImage);
        imghead.setAbsolutePosition(0, 0);
        PdfContentByte cbhead = writer.getDirectContent();
        PdfTemplate tpLogo = cbhead.createTemplate(600, 300);
        tpLogo.addImage(imghead);

        PdfTemplate tpTitle = cbhead.createTemplate(1100, 300);
        String txtHeader = "BADAN KEPEGAWAIAN DAERAH PEMERINTAH DAERAH";//Config.application_title;
        tpTitle.beginText();
        tpTitle.setFontAndSize(bf_times, 36);
        tpTitle.showText(txtHeader);
        tpTitle.endText();

        PdfTemplate tpTitle2 = cbhead.createTemplate(900, 300);
        String txtHeader2 = "         KABUPATEN BANTUL YOGYAKARTA";
        tpTitle2.beginText();
        tpTitle2.setFontAndSize(bf_times, 36);
        tpTitle2.showText(txtHeader2);
        tpTitle2.endText();

        PdfTemplate tpAlamat = cbhead.createTemplate(1000, 400);
        tpAlamat.beginText();
        tpAlamat.setFontAndSize(bf_times, 24);
        tpAlamat.showText(
                "Alamat : Jln. R. W. Monginsidi No. 01 Kompleks Parasamya Bantul, Telp. (0274) 367509");
        tpAlamat.endText();

        DateFormat df = new SimpleDateFormat("dd MMM yyyy");
        java.util.Date dt = new java.util.Date();
        PdfTemplate tp3 = cbhead.createTemplate(600, 300);
        tp3.beginText();
        tp3.setFontAndSize(bf_times, 16);

        tp3.showText("Tanggal : " + df.format(dt));
        tp3.endText();

        cbhead.addTemplate(tpLogo, 800, 1500);//logo
        cbhead.addTemplate(tpTitle, 1000, 1580);
        cbhead.addTemplate(tpTitle2, 1000, 1540);
        cbhead.addTemplate(tpAlamat, 1000, 1500);//alamat
        cbhead.addTemplate(tp3, 270, 1500);//tanggal

        HeaderFooter header = new HeaderFooter(new Phrase(cbhead + "", new Font(bf_helv)), false);
        header.setAlignment(Element.ALIGN_CENTER);

        document.setHeader(header);

        //PdfContentByte cb = writer.getDirectContent();
        Paragraph par = new Paragraph(
                "\n\n\n\n\n\n\nLAPORAN DATA SELURUH " + controllerName.toUpperCase() + "\n");
        par.getFont().setStyle(Font.BOLD);
        par.getFont().setSize(18);
        par.setAlignment("center");
        document.add(par);
        document.add(new Paragraph("\n\n"));

        // get data
        initSqlViewDataPerPage();
        if (sqlViewDataPerPageForReport == null) {
            sqlViewDataPerPageForReport = sqlViewDataPerPage;
        }
        PreparedStatement pstmt = Db.getCon().prepareStatement(sqlViewDataPerPageForReport,
                ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
        ResultSet resultSet = pstmt.executeQuery();
        ResultSetMetaData metaColumn = resultSet.getMetaData();
        int nColoumn = metaColumn.getColumnCount();
        // thanks to set cell width http://www.jexp.ru/index.php/Java/PDF_RTF/Table_Cell_Size#Setting_Cell_Widths
        if (nColoumn > 0) {
            Model model = initModel();
            String tableName = model.getTableName();
            // create table header
            //     float[] widths = {1, 4};
            PdfPTable table;// = new PdfPTable(nColoumn);
            PdfPCell cell = new PdfPCell(new Paragraph("Daftar " + controllerName));

            Hashtable hashModel = TableCustomization.getTable(model.getTableName());

            int ncolumnHeader = nColoumn + 1; // +1 because of row. number
            if (hashModel != null) {
                ncolumnHeader = Integer.parseInt("" + hashModel.get("columnCount")) + 1;
            }
            table = new PdfPTable(ncolumnHeader);
            cell.setColspan(ncolumnHeader);
            cell.setHorizontalAlignment(Element.ALIGN_CENTER);

            Paragraph p2 = new Paragraph("No.");
            p2.getFont().setSize(20);
            PdfPCell cellColNo = new PdfPCell(p2);
            cellColNo.setNoWrap(true);
            cellColNo.setMinimumHeight(50);
            cellColNo.setHorizontalAlignment(Element.ALIGN_CENTER);
            table.addCell(cellColNo);

            if (hashModel != null) {
                Enumeration k = hashModel.keys();
                while (k.hasMoreElements()) {
                    String key = (String) k.nextElement();
                    if (key.equals("columnCount")) {
                        continue;
                    }
                    PdfPCell cellCol = new PdfPCell(new Paragraph(hashModel.get(key) + ""));
                    cellCol.setNoWrap(true);
                    cellCol.setMinimumHeight(50);
                    cellCol.setHorizontalAlignment(Element.ALIGN_CENTER);

                    table.addCell(cellCol);
                }
            } else {
                for (int i = 1; i < ncolumnHeader; i++) {
                    System.out.println("DATA = " + metaColumn.getColumnName(i));
                    Paragraph p1 = new Paragraph(metaColumn.getColumnName(i) + "");
                    p1.getFont().setSize(20);
                    PdfPCell cellCol = new PdfPCell(p1);
                    cellCol.setHorizontalAlignment(Element.ALIGN_CENTER);
                    table.addCell(cellCol);
                }
            }

            //iterate all columns : table data
            resultSet.beforeFirst();
            int row = 1;
            while (resultSet.next()) {
                System.out.println(row);
                Paragraph p3 = new Paragraph(row + "");
                p3.getFont().setSize(20);
                cell = new PdfPCell(p3);
                cell.setHorizontalAlignment(Element.ALIGN_CENTER);
                table.addCell(cell);
                if (hashModel != null) {//skip dulu u/ kasus ga pny class kustomasi table
                    Enumeration k = hashModel.keys();
                    while (k.hasMoreElements()) {
                        String key = (String) k.nextElement();
                        if (key.equals("columnCount")) {
                            continue;
                        }
                        table.addCell(resultSet.getObject(key) + "");
                    }
                } else {
                    for (int i = 1; i < ncolumnHeader; i++) {
                        System.out.println("DATA = " + metaColumn.getColumnName(i));
                        Paragraph p1 = new Paragraph(resultSet.getObject(metaColumn.getColumnName(i)) + "");
                        p1.getFont().setSize(18);
                        PdfPCell cellCol = new PdfPCell(p1);
                        cellCol.setHorizontalAlignment(Element.ALIGN_CENTER);
                        table.addCell(cellCol);
                    }
                }

                row++;
            }

            document.add(table);
            document.add(new Paragraph("\n\n"));
            par = new Paragraph("Mengetahui");
            par.setAlignment("center");
            document.add(par);
            par = new Paragraph("Kepada Badan Kepegawaian");
            par.setAlignment("center");
            document.add(par);
            par = new Paragraph("\n\n\n");

            document.add(par);
            par = new Paragraph("Drs. Maman Permana");
            par.setAlignment("center");
            document.add(par);
            par = new Paragraph("Nip: 197802042006041013");
            par.setAlignment("center");

            document.add(par);

        }
        document.close();
    } catch (Exception e) {
        e.printStackTrace();
    }
}

From source file:org.freebxml.omar.server.persistence.rdb.SQLPersistenceManagerImpl.java

/**
 * Executes an SQL Query./* w w w .j  a  v a  2  s .  co m*/
 */
public List executeSQLQuery(ServerRequestContext context, String sqlQuery, List queryParams,
        ResponseOptionType responseOption, String tableName, List objectRefs, IterativeQueryParams paramHolder)
        throws RegistryException {
    List res = null;
    Connection connection = null;
    int startIndex = paramHolder.startIndex;
    int maxResults = paramHolder.maxResults;
    int totalResultCount = -1;
    Statement stmt = null;

    try {
        connection = context.getConnection();

        java.sql.ResultSet rs = null;

        tableName = org.freebxml.omar.common.Utility.getInstance().mapTableName(tableName);

        ReturnType returnType = responseOption.getReturnType();
        boolean returnComposedObjects = responseOption.isReturnComposedObjects();

        if (maxResults < 0) {
            if (queryParams == null) {
                stmt = connection.createStatement();
            } else {
                stmt = connection.prepareStatement(sqlQuery);
            }
        } else {
            if (queryParams == null) {
                stmt = connection.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,
                        java.sql.ResultSet.CONCUR_READ_ONLY);
            } else {
                stmt = connection.prepareStatement(sqlQuery, java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,
                        java.sql.ResultSet.CONCUR_READ_ONLY);
            }
        }

        if (log.isDebugEnabled()) {
            log.debug("Executing query: '" + sqlQuery + "'");
            if (dumpStackOnQuery) {
                Thread.currentThread().dumpStack();
            }
        }
        log.trace("SQL = " + sqlQuery); // HIEOS/BHT: (DEBUG)

        if (queryParams == null) {

            rs = stmt.executeQuery(sqlQuery);
        } else {
            Iterator iter = queryParams.iterator();
            int paramCount = 0;
            while (iter.hasNext()) {
                Object param = iter.next();
                ((PreparedStatement) stmt).setObject(++paramCount, param);
                // HIEOS/BHT (DEBUG):
                log.trace("  -> param(" + new Integer(paramCount).toString() + "): " + (String) param);
            }
            rs = ((PreparedStatement) stmt).executeQuery();
        }
        if (maxResults >= 0) {
            rs.last();
            totalResultCount = rs.getRow();
            // Reset back to before first row so that DAO can correctly scroll
            // through the result set
            rs.beforeFirst();
        }
        java.util.Iterator iter = null;

        if (returnType == ReturnType.OBJECT_REF) {
            res = new java.util.ArrayList();

            if (startIndex > 0) {
                rs.last();
                totalResultCount = rs.getRow();
                rs.beforeFirst();
                // calling rs.next() is a workaround for some drivers, such
                // as Derby's, that do not set the cursor during call to 
                // rs.relative(...)
                rs.next();
                boolean onRow = rs.relative(startIndex - 1);
                // HIEOS/BHT (DEBUG):
                log.trace(" -> Total Result Count: " + totalResultCount);
            }

            int cnt = 0;
            while (rs.next()) {
                org.oasis.ebxml.registry.bindings.rim.ObjectRef or = bu.rimFac.createObjectRef();
                String id = rs.getString(1);
                or.setId(id);
                res.add(or);

                if (++cnt == maxResults) {
                    break;
                }
            }
            // HIEOS/BHT (DEBUG):
            log.trace(" -> cnt: " + totalResultCount);
        } else if (returnType == ReturnType.REGISTRY_OBJECT) {
            context.setResponseOption(responseOption);
            RegistryObjectDAO roDAO = new RegistryObjectDAO(context);
            res = roDAO.getObjects(rs, startIndex, maxResults);
            // HIEOS/BHT (DEBUG):
            log.trace(" -> Object Size: " + res.size());
        } else if ((returnType == ReturnType.LEAF_CLASS)
                || (returnType == ReturnType.LEAF_CLASS_WITH_REPOSITORY_ITEM)) {
            res = getObjects(context, connection, rs, tableName, responseOption, objectRefs, startIndex,
                    maxResults);
            // HIEOS/BHT (DEBUG):
            log.trace(" -> Object Size: " + res.size());
        } else {
            throw new RegistryException(ServerResourceBundle.getInstance()
                    .getString("message.invalidReturnType", new Object[] { returnType }));
        }

    } catch (SQLException e) {
        throw new RegistryException(e);
    } catch (javax.xml.bind.JAXBException e) {
        throw new RegistryException(e);
    } finally {
        try {
            if (stmt != null) {
                stmt.close();
            }
        } catch (SQLException sqle) {
            log.error(ServerResourceBundle.getInstance().getString("message.CaughtException1"), sqle);
        }
    }

    paramHolder.totalResultCount = totalResultCount;

    return res;
}

From source file:com.github.woonsan.jdbc.jcr.impl.JcrJdbcResultSetTest.java

@Test
public void testUnsupportedOperations() throws Exception {
    Statement statement = getConnection().createStatement();
    ResultSet rs = statement.executeQuery(SQL_EMPS);

    try {//from  ww  w.j  a  v a2 s  . co m
        rs.getWarnings();
        fail();
    } catch (UnsupportedOperationException ignore) {
    }

    try {
        rs.clearWarnings();
        fail();
    } catch (UnsupportedOperationException ignore) {
    }

    try {
        rs.getCursorName();
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getObject(1);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getObject("ename");
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.isLast();
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.beforeFirst();
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.afterLast();
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.first();
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.last();
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.absolute(1);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.relative(1);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.previous();
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.moveToCurrentRow();
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateNull(1);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateNull("col1");
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBoolean(1, true);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBoolean("col1", true);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateByte(1, (byte) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateByte("col1", (byte) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateShort(1, (short) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateShort("col1", (short) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateInt(1, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateInt("col1", 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateLong(1, (long) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateLong("col1", (long) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateFloat(1, (float) 0.1);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateFloat("col1", (float) 0.1);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateDouble(1, 0.1);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateDouble("col1", 0.1);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBigDecimal(1, new BigDecimal("100000000"));
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBigDecimal("col1", new BigDecimal("100000000"));
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateString(1, "Unknown");
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateString("col1", "Unknown");
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBytes(1, null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBytes("col1", null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateDate(1, null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateDate("col1", null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateTime(1, null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateTime("col1", null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateTimestamp(1, null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateTimestamp("col1", null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateAsciiStream(1, null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateAsciiStream(1, null, (long) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateAsciiStream("col1", null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateAsciiStream("col1", null, (long) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateAsciiStream(1, null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateAsciiStream("col1", null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBinaryStream(1, null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBinaryStream(1, null, (long) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBinaryStream("col1", null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBinaryStream("col1", null, (long) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBinaryStream(1, null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBinaryStream("col1", null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateCharacterStream(1, null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateCharacterStream(1, null, (long) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateCharacterStream("col1", null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateCharacterStream("col1", null, (long) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateCharacterStream(1, null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateCharacterStream("col1", null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateObject(1, null, 1);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateObject("col1", null, 1);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateObject(1, null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateObject("col1", null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.insertRow();
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateRow();
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.deleteRow();
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.refreshRow();
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.cancelRowUpdates();
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.moveToInsertRow();
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getObject(1, (Map<String, Class<?>>) null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getObject("col1", (Map<String, Class<?>>) null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getRef(1);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getRef("col1");
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getBlob(1);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getBlob("col1");
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getClob(1);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getClob("col1");
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getURL(1);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getURL("col1");
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateRef(1, null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateRef("col1", null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBlob(1, (Blob) null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBlob("col1", (Blob) null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateClob(1, (Clob) null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateClob("col1", (Clob) null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateArray(1, (Array) null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateArray("col1", (Array) null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getRowId(1);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getRowId("col1");
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateRowId(1, null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateRowId("col1", null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateNString(1, null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateNString("col1", null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateNClob(1, (NClob) null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateNClob("col1", (NClob) null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getNClob(1);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getNClob("col1");
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getSQLXML(1);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getSQLXML("col1");
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateSQLXML(1, null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateSQLXML("col1", null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getNString(1);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getNString("col1");
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getNCharacterStream(1);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getNCharacterStream("col1");
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateNCharacterStream(1, null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateNCharacterStream(1, null, (long) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateNCharacterStream("col1", null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateNCharacterStream("col1", null, (long) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateAsciiStream(1, null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateAsciiStream(1, null, (long) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateAsciiStream("col1", null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateAsciiStream("col1", null, (long) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBinaryStream(1, null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBinaryStream(1, null, (long) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBinaryStream("col1", null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBinaryStream("col1", null, (long) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateCharacterStream(1, null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateCharacterStream(1, null, (long) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateCharacterStream("col1", null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateCharacterStream("col1", null, (long) 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBlob(1, null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBlob("col1", null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateClob(1, null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateClob("col1", null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateNClob(1, null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateNClob("col1", null, 0);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateNCharacterStream(1, null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateNCharacterStream("col1", null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateAsciiStream(1, null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateAsciiStream("col1", null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBinaryStream(1, null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBinaryStream("col1", null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateCharacterStream(1, null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateCharacterStream("col1", null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBlob(1, (InputStream) null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateBlob("col1", (InputStream) null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateClob(1, (Reader) null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateClob("col1", (Reader) null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateNClob(1, (Reader) null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.updateNClob("col1", (Reader) null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getObject(1, (Class<?>) null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    try {
        rs.getObject("col1", (Class<?>) null);
        fail();
    } catch (SQLFeatureNotSupportedException ignore) {
    }

    rs.close();
    assertTrue(rs.isClosed());

    statement.close();
    assertTrue(statement.isClosed());
}

From source file:org.ensembl.healthcheck.util.DBUtils.java

public static boolean compareResultSets(ResultSet rs1, ResultSet rs2, EnsTestCase testCase, String text,
        boolean reportErrors, boolean warnNull, String singleTableName, int[] columns,
        boolean comparingSchema) {

    // quick tests first
    // Check for object equality
    if (rs1.equals(rs2)) {
        return true;
    }//  w w  w .  ja v a  2s  . c  o m

    try {

        // get some information about the ResultSets
        String name1 = getShortDatabaseName(rs1.getStatement().getConnection());
        String name2 = getShortDatabaseName(rs2.getStatement().getConnection());

        // Check for same column count, names and types
        ResultSetMetaData rsmd1 = rs1.getMetaData();
        ResultSetMetaData rsmd2 = rs2.getMetaData();
        if (rsmd1.getColumnCount() != rsmd2.getColumnCount() && columns == null) {

            if (reportErrors) {

                ReportManager.problem(testCase, name1, "Column counts differ " + singleTableName + " " + name1
                        + ": " + rsmd1.getColumnCount() + " " + name2 + ": " + rsmd2.getColumnCount());
            }

            return false; // Deliberate early return for performance
            // reasons
        }

        if (columns == null) {
            columns = new int[rsmd1.getColumnCount()];
            for (int i = 0; i < columns.length; i++) {
                columns[i] = i + 1;
            }
        }

        for (int j = 0; j < columns.length; j++) {
            int i = columns[j];

            // note columns indexed from l
            if (!((rsmd1.getColumnName(i)).equals(rsmd2.getColumnName(i)))) {

                if (reportErrors) {

                    ReportManager.problem(testCase, name1,
                            "Column names differ for " + singleTableName + " column " + i + " - " + name1 + ": "
                                    + rsmd1.getColumnName(i) + " " + name2 + ": " + rsmd2.getColumnName(i));
                }

                // Deliberate early return for performance reasons
                return false;

            }
            if (rsmd1.getColumnType(i) != rsmd2.getColumnType(i)) {

                if (reportErrors) {

                    ReportManager.problem(testCase, name1,
                            "Column types differ for " + singleTableName + " column " + i + " - " + name1 + ": "
                                    + rsmd1.getColumnType(i) + " " + name2 + ": " + rsmd2.getColumnType(i));
                }
                return false; // Deliberate early return for performance
                // reasons
            }
        } // for column

        // make sure both cursors are at the start of the ResultSet
        // (default is before the start)
        rs1.beforeFirst();
        rs2.beforeFirst();
        // if quick checks didn't cause return, try comparing row-wise

        int row = 1;
        while (rs1.next()) {

            if (rs2.next()) {
                String str = name1 + " and " + name2 + text + " " + singleTableName + " with columns ";
                for (int j = 0; j < columns.length; j++) {
                    int i = columns[j];
                    str += rsmd1.getColumnName(i) + " " + Utils.truncate(rs1.getString(i), 250, true) + ", ";
                    // note columns indexed from 1
                    if (!compareColumns(rs1, rs2, i, warnNull)) {
                        str += " differ for values " + Utils.truncate(rs1.getString(i), 250, true) + ", "
                                + Utils.truncate(rs2.getString(i), 250, true);
                        if (reportErrors) {
                            ReportManager.problem(testCase, name1, str);
                        }
                        return false;
                    }
                }
                row++;

            } else {
                // rs1 has more rows than rs2
                if (reportErrors) {
                    ReportManager.problem(testCase, name1,
                            singleTableName + " has more rows in " + name1 + " than in " + name2);
                }
                return false;
            }

        } // while rs1

        // if both ResultSets are the same, then we should be at the end of
        // both, i.e. .next() should return false
        String extra = comparingSchema ? ". This means that there are missing columns in the table, rectify!"
                : "";
        if (rs1.next()) {

            if (reportErrors) {
                ReportManager.problem(testCase, name1, name1 + " " + singleTableName
                        + " has additional rows that are not in " + name2 + extra);
            }
            return false;
        } else if (rs2.next()) {

            if (reportErrors) {
                ReportManager.problem(testCase, name1, name2 + " " + singleTableName
                        + " has additional rows that are not in " + name1 + extra);

            }
            return false;
        }

    } catch (SQLException se) {
        throw new SqlUncheckedException("Could not compare two result sets", se);
    }

    return true;

}

From source file:rems.Global.java

public static void exprtDtStToCSV(ResultSet dtst, String csvfileNm, boolean isfirst, boolean islast,
        boolean shdAppnd, String rptdlmtr) {
    try {//from   w  w w  .ja  va  2s  .  co  m
        if (isfirst) {

        }
        dtst.last();
        int totl = dtst.getRow();
        dtst.beforeFirst();
        ResultSetMetaData dtstmd = dtst.getMetaData();
        String hdrNms = "";
        String lineVals = "";
        String dlmtr = "";
        if (isfirst) {

        }
        /*None
         Comma (,)
         Semi-Colon(;)
         Pipe(|)
         Tab
         Tilde(~)*/
        if (rptdlmtr.equals("None") || rptdlmtr.equals("Pipe(|)")) {
            dlmtr = "|";
        } else if (rptdlmtr.equals("Comma (,)")) {
            dlmtr = ",";
        } else if (rptdlmtr.equals("Semi-Colon(;)")) {
            dlmtr = ";";
        } else if (rptdlmtr.equals("Tab")) {
            dlmtr = "\t";
        } else if (rptdlmtr.equals("Tilde(~)")) {
            dlmtr = "~";
        } else {
            dlmtr = "|";
        }

        int collen = 0;
        int colcnt = dtstmd.getColumnCount();
        for (int a = 0; a < colcnt; a++) {
            collen = dtstmd.getColumnName(a + 1).length();
            if (collen >= 3) {
                hdrNms += dtstmd.getColumnName(a + 1) + dlmtr;
            }
        }

        if (hdrNms.length() > 0) {
            Global.strSB.append(hdrNms.substring(0, hdrNms.length() - 1))
                    .append(System.getProperty("line.separator"));
        }
        //Global.strSB.append(hdrNms);
        for (int i = 0; i < totl; i++) {
            dtst.next();
            lineVals = "";
            for (int a = 0; a < colcnt; a++) {
                collen = dtstmd.getColumnName(a + 1).length();
                if (collen >= 3) {
                    lineVals += dtst.getString(a + 1) + dlmtr;
                }
            }
            if (lineVals.length() > 0) {
                Global.strSB.append(lineVals.substring(0, lineVals.length() - 1))
                        .append(System.getProperty("line.separator"));
            }
        }
        if (islast) {
            File file = new File(csvfileNm);
            // if file doesnt exists, then create it
            if (!file.exists()) {
                file.createNewFile();
            }
            FileWriter fw = new FileWriter(file.getAbsoluteFile(), true);
            BufferedWriter bw = new BufferedWriter(fw);
            bw.write(Global.strSB.toString());
            bw.close();
            if (Global.callngAppType.equals("DESKTOP")) {
                Global.upldImgsFTP(9, Global.getRptDrctry(), "/" + String.valueOf(Global.runID) + ".csv");
            }
        }
    } catch (SQLException ex) {
    } catch (IOException ex) {
    }
}

From source file:rems.Global.java

public static void exprtToHTMLSCC(ResultSet dtst, String fileNm, String rptTitle, String[] colsToGrp,
        String[] colsToUse, boolean isfirst, boolean islast, boolean shdAppnd) {
    try {/* w ww.ja v  a 2  s . c om*/
        //Simple Column Chart
        dtst.last();
        int totlRows = dtst.getRow();
        dtst.beforeFirst();
        ResultSetMetaData dtstmd = dtst.getMetaData();
        int colCnt = dtstmd.getColumnCount();

        String cption = "";
        if (isfirst) {
            cption = "<caption align=\"top\">" + rptTitle + "</caption>";
            Global.strSB.append("<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" "
                    + "\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"[]><html xmlns=\"http://www.w3.org/1999/xhtml\" dir=\"ltr\" lang=\"en-US\" xml:lang=\"en\"><head><meta http-equiv=\"Content-Type\" "
                    + "content=\"text/html; charset=utf-8\">" + System.getProperty("line.separator") + "<title>"
                    + rptTitle + "</title>" + System.getProperty("line.separator"));
            Global.strSB.append("<link rel=\"stylesheet\" href=\"../amcharts/rpt.css\" type=\"text/css\">"
                    + System.getProperty("line.separator"));
            Global.strSB.append("<link rel=\"stylesheet\" href=\"style.css\" type=\"text/css\">"
                    + System.getProperty("line.separator"));
            Global.strSB.append("<script src=\"../amcharts/amcharts.js\" type=\"text/javascript\"></script>"
                    + System.getProperty("line.separator"));
            Global.strSB.append("</head><body>");

            Files.copy(
                    new File(Global.getOrgImgsDrctry() + "/" + String.valueOf(Global.UsrsOrg_ID) + ".png")
                            .toPath(),
                    new File(Global.getRptDrctry() + "/amcharts_2100/images/"
                            + String.valueOf(Global.UsrsOrg_ID) + ".png").toPath(),
                    StandardCopyOption.REPLACE_EXISTING);

            if (Global.callngAppType.equals("DESKTOP")) {
                Global.upldImgsFTP(9, Global.getRptDrctry(),
                        "/amcharts_2100/images/" + String.valueOf(Global.UsrsOrg_ID) + ".png");
            }

            //Org Name
            String orgNm = Global.getOrgName(Global.UsrsOrg_ID);
            String pstl = Global.getOrgPstlAddrs(Global.UsrsOrg_ID);
            //Contacts Nos
            String cntcts = Global.getOrgContactNos(Global.UsrsOrg_ID);
            //Email Address
            String email = Global.getOrgEmailAddrs(Global.UsrsOrg_ID);

            Global.strSB.append("<p><img src=\"../images/" + String.valueOf(Global.UsrsOrg_ID) + ".png\">"
                    + orgNm + "<br/>" + pstl + "<br/>" + cntcts + "<br/>" + email + "<br/>" + "</p>");
        }

        Global.strSB.append("<script type = \"text / javascript\"> " + System.getProperty("line.separator")
                + "var chart;" + System.getProperty("line.separator") + "var chartData = [");

        for (int a = 0; a < totlRows; a++) {
            dtst.next();
            if (a < totlRows - 1) {
                Global.strSB.append(
                        "{" + "ctgry:\"" + dtst.getString(Integer.parseInt(colsToUse[0]) + 1) + "\"," + "vals:"
                                + dtst.getString(Integer.parseInt(colsToUse[1]) + 1) + ", color: \"#0D52D1\"},")
                        .append(System.getProperty("line.separator"));
            } else {
                Global.strSB.append(
                        "{" + "ctgry:\"" + dtst.getString(Integer.parseInt(colsToUse[0]) + 1) + "\"," + "vals:"
                                + dtst.getString(Integer.parseInt(colsToUse[1]) + 1) + ", color:\"#0D52D1\"}];")
                        .append(System.getProperty("line.separator"));
            }
        }
        Global.strSB.append("AmCharts.ready(function () {" + System.getProperty("line.separator")
                + "// SERIAL CHART " + System.getProperty("line.separator")
                + "chart = new AmCharts.AmSerialChart(); " + System.getProperty("line.separator")
                + "chart.dataProvider = chartData; " + System.getProperty("line.separator")
                + "chart.categoryField = \"ctgry\"; " + System.getProperty("line.separator")
                + "chart.depth3D = 0; " + System.getProperty("line.separator") + "chart.angle = 0; "
                + System.getProperty("line.separator") + "//chart.startDuration = 1;"
                + System.getProperty("line.separator") + "// AXES " + System.getProperty("line.separator")
                + "// category " + System.getProperty("line.separator")
                + "var categoryAxis = chart.categoryAxis; " + System.getProperty("line.separator")
                + "categoryAxis.labelRotation = 90; " + System.getProperty("line.separator")
                + "categoryAxis.title = \"" + dtstmd.getColumnName(Integer.parseInt(colsToUse[0]) + 1) + "\"; "
                + System.getProperty("line.separator") + "categoryAxis.gridPosition = \"start\";"
                + System.getProperty("line.separator") + "// value" + System.getProperty("line.separator")
                + "// in case you don't want to change default settings of value axis,"
                + System.getProperty("line.separator")
                + "// you don't need to create it, as one value axis is created automatically. "
                + System.getProperty("line.separator") + "var valueAxis = new AmCharts.ValueAxis(); "
                + System.getProperty("line.separator") + "valueAxis.title = \""
                + dtstmd.getColumnName(Integer.parseInt(colsToUse[1]) + 1) + "\"; "
                + System.getProperty("line.separator") + "valueAxis.dashLength = 5; "
                + System.getProperty("line.separator") + "chart.addValueAxis(valueAxis);"
                + System.getProperty("line.separator") + " // GRAPH " + System.getProperty("line.separator")
                + "var graph = new AmCharts.AmGraph(); " + System.getProperty("line.separator")
                + "graph.valueField = \"vals\"; " + System.getProperty("line.separator")
                + "graph.colorField = \"color\"; " + System.getProperty("line.separator")
                + "graph.balloonText = \"[[category]]: [[value]]\"; " + System.getProperty("line.separator")
                + "graph.type = \"column\"; " + System.getProperty("line.separator") + "graph.lineAlpha = 0; "
                + System.getProperty("line.separator") + "graph.fillAlphas = 1; "
                + System.getProperty("line.separator") + "chart.addGraph(graph);"
                + System.getProperty("line.separator") + "chart.write(\"chartdiv\");"
                + System.getProperty("line.separator") + "});" + System.getProperty("line.separator")
                + " </script>" + System.getProperty("line.separator"));

        Global.strSB.append("<h2>" + rptTitle + "</h2>").append(System.getProperty("line.separator"));
        Global.strSB.append("<div id=\"chartdiv\" style=\"width: " + colsToGrp[0] + "px; height: "
                + colsToGrp[1] + "px;\"></div>");
        if (islast) {
            Global.strSB.append("</body></html>");

            File file = new File(fileNm);
            // if file doesnt exists, then create it
            if (!file.exists()) {
                file.createNewFile();
            }
            FileWriter fw = new FileWriter(file.getAbsoluteFile(), true);
            BufferedWriter bw = new BufferedWriter(fw);
            bw.write(Global.strSB.length());
            bw.close();

            if (Global.callngAppType.equals("DESKTOP")) {
                Global.upldImgsFTP(9, Global.getRptDrctry(),
                        "/amcharts_2100/samples/" + String.valueOf(Global.runID) + ".html");
            }
        }
    } catch (SQLException ex) {
    } catch (IOException ex) {
    } catch (NumberFormatException ex) {
    }
}

From source file:rems.Global.java

public static void exprtToHTMLLC(ResultSet dtst, String fileNm, String rptTitle, String[] colsToGrp,
        String[] colsToUse, boolean isfirst, boolean islast, boolean shdAppnd) {
    try {/*  w w  w. j  ava2  s .c o m*/
        //Line Chart
        dtst.last();
        int totlRows = dtst.getRow();
        dtst.beforeFirst();
        ResultSetMetaData dtstmd = dtst.getMetaData();
        //int colCnt = dtstmd.getColumnCount();
        int colCnt = colsToUse.length;

        String cption = "";
        if (isfirst) {
            cption = "<caption align=\"top\">" + rptTitle + "</caption>";
            Global.strSB.append("<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" "
                    + "\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"[]><html xmlns=\"http://www.w3.org/1999/xhtml\" dir=\"ltr\" lang=\"en-US\" xml:lang=\"en\"><head><meta http-equiv=\"Content-Type\" "
                    + "content=\"text/html; charset=utf-8\"><title>" + rptTitle + "</title>")
                    .append(System.getProperty("line.separator"))
                    .append("<link rel=\"stylesheet\" href=\"../amcharts/rpt.css\" type=\"text/css\">")
                    .append(System.getProperty("line.separator"));
            Global.strSB.append("<link rel=\"stylesheet\" href=\"style.css\" type=\"text/css\">")
                    .append(System.getProperty("line.separator"))
                    .append("<script src = \"../amcharts / amcharts.js\" type = \"text / javascript\">")
                    .append(System.getProperty("line.separator")).append("</script>")
                    .append(System.getProperty("line.separator"));
            Global.strSB.append("</head><body>").append(System.getProperty("line.separator"));

            Files.copy(
                    new File(Global.getOrgImgsDrctry() + "/" + String.valueOf(Global.UsrsOrg_ID) + ".png")
                            .toPath(),
                    new File(Global.getRptDrctry() + "/amcharts_2100/images/"
                            + String.valueOf(Global.UsrsOrg_ID) + ".png").toPath(),
                    StandardCopyOption.REPLACE_EXISTING);

            if (Global.callngAppType.equals("DESKTOP")) {
                Global.upldImgsFTP(9, Global.getRptDrctry(),
                        "/amcharts_2100/images/" + String.valueOf(Global.UsrsOrg_ID) + ".png");
            }
            //Org Name
            String orgNm = Global.getOrgName(Global.UsrsOrg_ID);
            String pstl = Global.getOrgPstlAddrs(Global.UsrsOrg_ID);
            //Contacts Nos
            String cntcts = Global.getOrgContactNos(Global.UsrsOrg_ID);
            //Email Address
            String email = Global.getOrgEmailAddrs(Global.UsrsOrg_ID);

            Global.strSB
                    .append("<p><img src=\"../images/" + String.valueOf(Global.UsrsOrg_ID) + ".png\">" + orgNm
                            + "<br/>" + pstl + "<br/>" + cntcts + "<br/>" + email + "<br/>" + "</p>")
                    .append(System.getProperty("line.separator"));
        }
        Global.strSB.append("<script type=\"text/javascript\">").append(System.getProperty("line.separator"))
                .append("var chart;").append(System.getProperty("line.separator")).append("var chartData = [")
                .append(System.getProperty("line.separator"));

        for (int a = 0; a < totlRows; a++) {
            dtst.next();
            if (a < totlRows - 1) {
                Global.strSB
                        .append("{" + "ctgry:\"" + dtst.getString(Integer.parseInt(colsToUse[0]) + 1) + "\", "
                                + "value: " + dtst.getString(Integer.parseInt(colsToUse[1]) + 1) + "},")
                        .append(System.getProperty("line.separator"));
            } else {
                Global.strSB
                        .append("{" + "ctgry:\"" + dtst.getString(Integer.parseInt(colsToUse[0]) + 1) + "\", "
                                + "value:" + dtst.getString(Integer.parseInt(colsToUse[1]) + 1) + "}];")
                        .append(System.getProperty("line.separator"));
            }
        }

        Global.strSB.append("AmCharts.ready(function () {").append(System.getProperty("line.separator"))
                .append("// SERIAL CHART").append(System.getProperty("line.separator"))
                .append("chart = new AmCharts.AmSerialChart();").append(System.getProperty("line.separator"))
                .append("chart.pathToImages = \"../amcharts/images/\";")
                .append(System.getProperty("line.separator")).append("chart.dataProvider = chartData;")
                .append(System.getProperty("line.separator")).append("chart.marginLeft = 10;")
                .append(System.getProperty("line.separator")).append("chart.categoryField = \"ctgry\";")
                .append(System.getProperty("line.separator")).append("chart.zoomOutButton = {")
                .append(System.getProperty("line.separator")).append("backgroundColor: '#000000',")
                .append("backgroundAlpha: 0.15};").append(System.getProperty("line.separator"))
                .append("// listen for dataUpdated event (fired when chart is inited) and call zoomChart method when it happens")
                .append(System.getProperty("line.separator"))
                .append("chart.addListener(\"dataUpdated\", zoomChart);")
                .append(System.getProperty("line.separator")).append("// AXES")
                .append(System.getProperty("line.separator")).append("// category")
                .append(System.getProperty("line.separator")).append("var categoryAxis = chart.categoryAxis;")
                .append(System.getProperty("line.separator"))
                .append("//categoryAxis.parseDates = true; // as our data is date-based, we set parseDates to true")
                .append(System.getProperty("line.separator"))
                .append("//categoryAxis.minPeriod = DD; // our data is ctgryly, so we set minPeriod to YYYY")
                .append(System.getProperty("line.separator"))
                .append("categoryAxis.title = \"" + dtstmd.getColumnName(Integer.parseInt(colsToUse[0]) + 1)
                        + "\";")
                .append(System.getProperty("line.separator")).append("categoryAxis.gridAlpha = 0.5;")
                .append(System.getProperty("line.separator")).append("categoryAxis.labelRotation = 90;")
                .append(System.getProperty("line.separator")).append("// value")
                .append(System.getProperty("line.separator"))
                .append("var valueAxis = new AmCharts.ValueAxis();")
                .append(System.getProperty("line.separator")).append("valueAxis.axisAlpha = 0.5;")
                .append(System.getProperty("line.separator"))
                .append("valueAxis.title = \"" + dtstmd.getColumnName(Integer.parseInt(colsToUse[1]) + 1)
                        + "\";")
                .append(System.getProperty("line.separator")).append("valueAxis.inside = true;")
                .append(System.getProperty("line.separator")).append("chart.addValueAxis(valueAxis);")
                .append(System.getProperty("line.separator")).append("// GRAPH ")
                .append(System.getProperty("line.separator")).append("graph = new AmCharts.AmGraph();")
                .append(System.getProperty("line.separator"))
                .append("graph.type = \"line\"; // this line makes the graph smoothed line.")
                .append(System.getProperty("line.separator")).append("graph.lineColor = \"#0000FF\";")
                .append(System.getProperty("line.separator"))
                .append("graph.negativeLineColor = \"#637bb6\"; // this line makes the graph to change color when it drops below 0")
                .append(System.getProperty("line.separator")).append("graph.bullet = \"round\";")
                .append(System.getProperty("line.separator")).append("graph.bulletSize = 5;")
                .append("graph.lineThickness = 1;").append(System.getProperty("line.separator"))
                .append("graph.valueField = \"value\";").append(System.getProperty("line.separator"))
                .append("chart.addGraph(graph);").append(System.getProperty("line.separator"))
                .append("// CURSOR ").append(System.getProperty("line.separator"))
                .append("var chartCursor = new AmCharts.ChartCursor();")
                .append(System.getProperty("line.separator")).append("chartCursor.cursorAlpha = 0;")
                .append(System.getProperty("line.separator")).append("chartCursor.cursorPosition = \"mouse\";")
                .append(System.getProperty("line.separator"))
                .append("//chartCursor.categoryBalloonDateFormat = \"YYYY\";")
                .append(System.getProperty("line.separator")).append("chart.addChartCursor(chartCursor);")
                .append(System.getProperty("line.separator")).append("// SCROLLBAR ")
                .append(System.getProperty("line.separator"))
                .append("var chartScrollbar = new AmCharts.ChartScrollbar();")
                .append(System.getProperty("line.separator")).append("chartScrollbar.graph = graph;")
                .append(System.getProperty("line.separator"))
                .append("chartScrollbar.backgroundColor = \"#DDDDDD\";")
                .append(System.getProperty("line.separator")).append("chartScrollbar.scrollbarHeight = 15;")
                .append(System.getProperty("line.separator"))
                .append("chartScrollbar.selectedBackgroundColor = \"#FFFFFF\";")
                .append(System.getProperty("line.separator")).append("chart.addChartScrollbar(chartScrollbar);")
                .append(System.getProperty("line.separator")).append("// WRITE")
                .append(System.getProperty("line.separator")).append("chart.write(\"chartdiv\");")
                .append(System.getProperty("line.separator")).append("});")
                .append(System.getProperty("line.separator"))
                .append("// this method is called when chart is first inited as we listen for \"dataUpdated\" event")
                .append(System.getProperty("line.separator")).append("function zoomChart() {")
                .append(System.getProperty("line.separator"))
                .append("// different zoom methods can be used - zoomToIndexes, zoomToDates, zoomToCategoryValues")
                .append(System.getProperty("line.separator"))
                .append("//chart.zoomToDates(new Date(1972, 0), new Date(1984, 0));")
                .append(System.getProperty("line.separator")).append("chart.zoomToIndexes(0,100);")
                .append(System.getProperty("line.separator")).append("}")
                .append(System.getProperty("line.separator")).append("</script>")
                .append(System.getProperty("line.separator"));
        Global.strSB.append("<h2>" + rptTitle + "</h2>").append(System.getProperty("line.separator"));
        Global.strSB.append("<div id=\"chartdiv\" style=\"width: " + colsToGrp[0] + "px; height: "
                + colsToGrp[1] + "px;\"></div>").append(System.getProperty("line.separator"));
        if (islast) {
            Global.strSB.append("</body></html>");

            File file = new File(fileNm);
            // if file doesnt exists, then create it
            if (!file.exists()) {
                file.createNewFile();
            }
            FileWriter fw = new FileWriter(file.getAbsoluteFile(), true);
            BufferedWriter bw = new BufferedWriter(fw);
            bw.write(Global.strSB.toString());
            bw.close();

            if (Global.callngAppType.equals("DESKTOP")) {
                Global.upldImgsFTP(9, Global.getRptDrctry(),
                        "/amcharts_2100/samples/" + String.valueOf(Global.runID) + ".html");
            }
        }
    } catch (SQLException ex) {
    } catch (IOException ex) {
    } catch (NumberFormatException ex) {
    }
}