details: https://code.openbravo.com/erp/devel/pi/rev/cb41da47b353 changeset: 23991:cb41da47b353 user: Shankar Balachandran <shankar.balachandran <at> openbravo.com> date: Fri Jul 11 09:40:38 2014 +0530 summary: Fixes Issue 26986: Some characters are not printed in email Options window
Some characters are not printed after switching the template to use in the Email options window. set character encoding to UTF-8 in the response types. details: https://code.openbravo.com/erp/devel/pi/rev/d81b1159aded changeset: 23992:d81b1159aded user: Shankar Balachandran <shankar.balachandran <at> openbravo.com> date: Fri Jul 11 12:14:31 2014 +0530 summary: Fixes Issue 27046: Product simple selector is executing a query in database without limit When data is fetched in custom query selector the data was iterated to get the number of rows. This operation is avoided and the total rows is set based on the resultSet iterated later. diffstat: modules/org.openbravo.userinterface.selector/src/org/openbravo/userinterface/selector/CustomQuerySelectorDatasource.java | 35 +++------ src/org/openbravo/erpCommon/utility/reporting/printing/PrintController.java | 4 +- 2 files changed, 13 insertions(+), 26 deletions(-) diffs (94 lines): diff -r 8b0eab71cd09 -r d81b1159aded modules/org.openbravo.userinterface.selector/src/org/openbravo/userinterface/selector/CustomQuerySelectorDatasource.java --- a/modules/org.openbravo.userinterface.selector/src/org/openbravo/userinterface/selector/CustomQuerySelectorDatasource.java Thu Jul 10 17:38:04 2014 +0200 +++ b/modules/org.openbravo.userinterface.selector/src/org/openbravo/userinterface/selector/CustomQuerySelectorDatasource.java Fri Jul 11 12:14:31 2014 +0530 @@ -36,8 +36,6 @@ import org.codehaus.jettison.json.JSONObject; import org.hibernate.Hibernate; import org.hibernate.Query; -import org.hibernate.ScrollMode; -import org.hibernate.ScrollableResults; import org.hibernate.criterion.Restrictions; import org.openbravo.base.model.ModelProvider; import org.openbravo.base.model.domaintype.BigDecimalDomainType; @@ -80,6 +78,8 @@ final SimpleDateFormat xmlDateFormat = JsonUtils.createDateFormat(); final SimpleDateFormat xmlDateTimeFormat = JsonUtils.createDateTimeFormat(); final List<Map<String, Object>> result = new ArrayList<Map<String, Object>>(); + // Defaulted to endRow + 2 to check for more records while scrolling. + int totalRows = endRow + 2, rowCount = 0; String selectorId = parameters.get(SelectorConstants.DS_REQUEST_SELECTOR_ID_PARAMETER); @@ -106,28 +106,6 @@ Query selQuery = OBDal.getInstance().getSession().createQuery(HQL); String[] queryAliases = selQuery.getReturnAliases(); - if ("true".equals(parameters.get(JsonConstants.NOCOUNT_PARAMETER))) { - int totalRows = 0, queryListSize = 0, clearEachLoop = 100; - // Defaulted to endRow + 2 to check for more records while scrolling. - totalRows = endRow + 2; - ScrollableResults queryResults = selQuery.scroll(ScrollMode.FORWARD_ONLY); - try { - while (queryResults.next()) { - queryListSize++; - if (queryListSize % clearEachLoop == 0) { - OBDal.getInstance().getSession().clear(); - } - } - } finally { - queryResults.close(); - } - if (startRow < endRow) { - if (queryListSize < endRow) { - totalRows = queryListSize; - } - parameters.put(JsonConstants.RESPONSE_TOTALROWS, String.valueOf(totalRows)); - } - } if (startRow > 0) { selQuery.setFirstResult(startRow); @@ -137,6 +115,7 @@ } for (Object objResult : selQuery.list()) { + rowCount++; final Map<String, Object> data = new LinkedHashMap<String, Object>(); Object[] resultList = new Object[1]; if (objResult instanceof Object[]) { @@ -163,6 +142,14 @@ } result.add(data); } + if ("true".equals(parameters.get(JsonConstants.NOCOUNT_PARAMETER))) { + if (startRow < endRow) { + if (rowCount < endRow) { + totalRows = rowCount; + } + parameters.put(JsonConstants.RESPONSE_TOTALROWS, String.valueOf(totalRows)); + } + } } finally { OBContext.restorePreviousMode(); } diff -r 8b0eab71cd09 -r d81b1159aded src/org/openbravo/erpCommon/utility/reporting/printing/PrintController.java --- a/src/org/openbravo/erpCommon/utility/reporting/printing/PrintController.java Thu Jul 10 17:38:04 2014 +0200 +++ b/src/org/openbravo/erpCommon/utility/reporting/printing/PrintController.java Fri Jul 11 12:14:31 2014 +0530 @@ -429,7 +429,7 @@ } } - response.setContentType("application/json"); + response.setContentType("application/json; charset=UTF-8"); final PrintWriter out = response.getWriter(); out.println(o.toString()); out.close(); @@ -452,7 +452,7 @@ } } - response.setContentType("application/json"); + response.setContentType("application/json; charset=UTF-8"); final PrintWriter out = response.getWriter(); out.println(o.toString()); out.close(); ------------------------------------------------------------------------------ Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft _______________________________________________ Openbravo-commits mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/openbravo-commits
