Be sure your post includes:
I am using version v10.0p_2015-01-23/PowerEdition Deployment (built 2015-01-23) and testing on FF 26. I am trying to get some data from the mssql 2008 database. For some reason I get this error.can somebody please help me to get it right.
This is my fetch method. I am using hibernate's ResultTransformer to get the required data from the query and passing it to the DSResponse to show on the client side. I am using the rowNum to limit fetch on the client side.
I am using version v10.0p_2015-01-23/PowerEdition Deployment (built 2015-01-23) and testing on FF 26. I am trying to get some data from the mssql 2008 database. For some reason I get this error.can somebody please help me to get it right.
Code:
[ERROR] [kaierpweb] - 11:46:38.630:XRP3:WARN:RPCManager:IllegalArgumentException occurred while calling setter of com.kaizen.erp.shared.entities.custom.CusNeighbourGroupInfo.rowNumundefined - response: {operationId: "CusNeiGroupDS_fetch", clientContext: Obj, internalClientContext: Obj, context: Obj, transactionNum: 1, httpResponseCode: 200, httpResponseText: "//isc_RPCResponseStart-->[{affectedRows:..."[260], xmlHttpRequest: [object XMLHttpRequest], transport: "xmlHttpRequest", status: -1, clientOnly: undef, httpHeaders: Obj, isStructured: true, callbackArgs: null, results: Obj, affectedRows: 0, data: "IllegalArgumentException occurred while ..."[124], invalidateCache: false, isDSResponse: true, queueStatus: -1, startRow: 0, endRow: 0, totalRows: 0}
Code:
@SuppressWarnings("unchecked") public DSResponse fetch(DSRequest dsRequest) throws Exception { logger.info("> fetch"); Session hibernateSession = HibernateUtills.getInstance().getHibernateSession(); DebugTools.printj("----------------------- FETCH -----------------------"); Map<String, Object> filtercriteria = dsRequest.getCriteria(); DebugTools.printj("----------------------- filtercriteria -----------------------"+filtercriteria); String selectQuery = "dbo.province.provincename AS province, dbo.province.capital, dbo.province.code, " + "dbo.province.telcode, dbo.county.countyname AS county, dbo.district.districtname AS district, " + "dbo.zone.alternateName AS zone, dbo.neighbourhood.alternateName AS neighbour, dbo.city.cityname AS city, " + "dbo.city.taxcode as taxcodecity, dbo.city.fdocode, COUNT(dbo.customer.customeraltname) AS countCustomer " + "FROM dbo.county " + "LEFT OUTER JOIN dbo.province ON (dbo.county.provinceID = dbo.province.id) " + "LEFT OUTER JOIN dbo.district ON (dbo.county.id = dbo.district.countyID) LEFT OUTER JOIN dbo.city ON (dbo.district.id = dbo.city.districtID) " + "LEFT OUTER JOIN dbo.zone ON (dbo.city.id = dbo.zone.cityId) LEFT OUTER JOIN dbo.neighbourhood ON (dbo.zone.id = dbo.neighbourhood.zoneId) " + "LEFT OUTER JOIN dbo.customer ON (dbo.neighbourhood.id = dbo.customer.neighbourhoodId) "; String countQuery = "SELECT count(dbo.county.id) " + "FROM dbo.county " + "LEFT OUTER JOIN dbo.province ON (dbo.county.provinceID = dbo.province.id) " + "LEFT OUTER JOIN dbo.district ON (dbo.county.id = dbo.district.countyID) LEFT OUTER JOIN dbo.city ON (dbo.district.id = dbo.city.districtID) " + "LEFT OUTER JOIN dbo.zone ON (dbo.city.id = dbo.zone.cityId) LEFT OUTER JOIN dbo.neighbourhood ON (dbo.zone.id = dbo.neighbourhood.zoneId) " + "LEFT OUTER JOIN dbo.customer ON (dbo.neighbourhood.id = dbo.customer.neighbourhoodId) "; if (filtercriteria != null) { for (String key : filtercriteria.keySet()) { if(!selectQuery.trim().contains("where")){ selectQuery+=" where "; countQuery+=" where "; } else{ selectQuery+=" and "; countQuery+=" and "; } if (key.equalsIgnoreCase("province")) { selectQuery += "dbo.province.provincename like '%"+filtercriteria.get(key).toString()+"%'"; countQuery += "dbo.province.provincename like '%"+filtercriteria.get(key).toString()+"%'"; } else if (key.equalsIgnoreCase("capital")) { selectQuery += "dbo.province.capital like '%"+filtercriteria.get(key).toString()+"%'"; countQuery += "dbo.province.capital like '%"+filtercriteria.get(key).toString()+"%'"; } else if (key.equalsIgnoreCase("code")) { selectQuery += "dbo.province.code like '%"+filtercriteria.get(key).toString()+"%'"; countQuery += "dbo.province.code like '%"+filtercriteria.get(key).toString()+"%'"; } else if (key.equalsIgnoreCase("county")) { selectQuery += "dbo.county.countyname like '%"+filtercriteria.get(key).toString()+"%'"; countQuery += "dbo.county.countyname like '%"+filtercriteria.get(key).toString()+"%'"; } else if (key.equalsIgnoreCase("district")) { selectQuery += "dbo.district.districtname like '%"+filtercriteria.get(key).toString()+"%'"; countQuery += "dbo.district.districtname like '%"+filtercriteria.get(key).toString()+"%'"; } else if (key.equalsIgnoreCase("city")) { selectQuery += "dbo.city.cityname like '%"+filtercriteria.get(key).toString()+"%'"; countQuery += "dbo.city.cityname like '%"+filtercriteria.get(key).toString()+"%'"; } else if (key.equalsIgnoreCase("zone")) { selectQuery += "dbo.zone.alternateName like '%"+filtercriteria.get(key).toString()+"%'"; countQuery += "dbo.zone.alternateName like '%"+filtercriteria.get(key).toString()+"%'"; } else if (key.equalsIgnoreCase("neighbour")) { selectQuery += "dbo.neighbourhood.alternateName like '%"+filtercriteria.get(key).toString()+"%'"; countQuery += "dbo.neighbourhood.alternateName like '%"+filtercriteria.get(key).toString()+"%'"; } else if (key.equalsIgnoreCase("telcode")) { selectQuery += "dbo.province.telcode like '%"+filtercriteria.get(key).toString()+"%'"; countQuery += "dbo.province.telcode like '%"+filtercriteria.get(key).toString()+"%'"; } else if (key.equalsIgnoreCase("fdocode")) { selectQuery += "dbo.city.fdocode like '%"+filtercriteria.get(key).toString()+"%'"; countQuery += "dbo.city.fdocode like '%"+filtercriteria.get(key).toString()+"%'"; } else if (key.equalsIgnoreCase("taxcodecity")) { selectQuery += "dbo.city.taxcode like '%"+filtercriteria.get(key).toString()+"%'"; countQuery += "dbo.city.taxcode like '%"+filtercriteria.get(key).toString()+"%'"; } } } selectQuery += "GROUP BY dbo.province.provincename, dbo.province.capital, dbo.province.code, " + "dbo.province.telcode, dbo.county.countyname, dbo.district.districtname, dbo.zone.alternateName, " + "dbo.neighbourhood.alternateName, dbo.city.cityname, dbo.city.taxcode, dbo.city.fdocode, dbo.county.id"; System.out.println("selectQuery = "+selectQuery); Query countquery = hibernateSession.createSQLQuery(countQuery); // this implementation shows data paging (returning only ranges of requested records) Long startRow = dsRequest.getStartRow(); Long endRow = dsRequest.getEndRow(); Integer totalRows = (Integer) countquery.uniqueResult(); DebugTools.printj(" TOTAL ROWS "+totalRows); if (startRow != null && endRow != null) { selectQuery = "SELECT * FROM (SELECT ROW_NUMBER() OVER ( ORDER BY dbo.county.id) AS rowNum," + selectQuery + ") as result WHERE rowNum >= " + startRow + " AND rowNum <= " + endRow + " ORDER BY rowNum"; } else selectQuery = "SELECT "+selectQuery; DebugTools.printj(" TOTAL ROWS selectQuery "+selectQuery); Query query = hibernateSession.createSQLQuery(selectQuery); query.setResultTransformer(Transformers.aliasToBean(CusNeighbourGroupInfo.class)); List<CusNeighbourGroupInfo> list = query.list(); DSResponse dsResponse = new DSResponse(); dsResponse.setTotalRows(totalRows); dsResponse.setStartRow(startRow); endRow = Math.min(endRow, totalRows); dsResponse.setEndRow(endRow); // just return the List of matching beans dsResponse.setData(list); //dsResponse.setData(order); HibernateUtills.getInstance().closeSession(); logger.info("< fetch"); return dsResponse; }