From 5e8100bd94c58bb9ed34629fefe9142702fa8982 Mon Sep 17 00:00:00 2001 From: jensp Date: Thu, 11 Jan 2018 11:51:03 +0000 Subject: [PATCH] Reverted changes in Globalization from revision r5182. Parameter encoding is in Native SQL Lists is now handled by the classes itself, without using Globalization. git-svn-id: https://svn.libreccm.org/ccm/trunk@5189 8810af33-2d31-482b-a856-94f89814c4df --- .../globalization/Globalization.java | 4 +-- .../scimember/navigation/SciMemberList.java | 16 ++++++++-- .../sciproject/navigation/SciProjectList.java | 21 +++++++++---- .../navigation/PublicationList.java | 30 +++++++++++++++++-- 4 files changed, 59 insertions(+), 12 deletions(-) diff --git a/ccm-core/src/com/arsdigita/globalization/Globalization.java b/ccm-core/src/com/arsdigita/globalization/Globalization.java index 66cb7aa3f..685088874 100755 --- a/ccm-core/src/com/arsdigita/globalization/Globalization.java +++ b/ccm-core/src/com/arsdigita/globalization/Globalization.java @@ -55,13 +55,13 @@ public class Globalization { * The default encoding for parameterts, as specified by the * servlet spec */ - public static final String DEFAULT_PARAM_ENCODING = "UTF-8"; + public static final String DEFAULT_PARAM_ENCODING = "ISO-8859-1"; /** * The default encoding for request/response body data, as specified by the * servlet spec */ - public static final String DEFAULT_ENCODING = "UTF-8"; + public static final String DEFAULT_ENCODING = "ISO-8859-1"; private static Map s_localeToCharsetMap; diff --git a/ccm-sci-member-navigation/src/com/arsdigita/cms/scimember/navigation/SciMemberList.java b/ccm-sci-member-navigation/src/com/arsdigita/cms/scimember/navigation/SciMemberList.java index fcac776cb..07e49bfcc 100644 --- a/ccm-sci-member-navigation/src/com/arsdigita/cms/scimember/navigation/SciMemberList.java +++ b/ccm-sci-member-navigation/src/com/arsdigita/cms/scimember/navigation/SciMemberList.java @@ -7,6 +7,7 @@ import com.arsdigita.persistence.SessionManager; import com.arsdigita.util.UncheckedWrapperException; import com.arsdigita.xml.Element; +import java.io.UnsupportedEncodingException; import java.math.BigDecimal; import java.sql.Connection; import java.sql.PreparedStatement; @@ -113,8 +114,19 @@ public class SciMemberList extends AbstractComponent { // final String surnameFilter = request.getParameter("surname"); // final String - surnameFilter = Globalization.decodeParameter(request, - "surname"); +// surnameFilter = Globalization.decodeParameter(request, +// "surname"); + if (request.getParameter("surname") == null) { + surnameFilter = null; + } else { + try { + surnameFilter = new String(request + .getParameter("surname") + .getBytes("UTF-8")); + } catch (UnsupportedEncodingException ex) { + throw new UncheckedWrapperException(ex); + } + } if (surnameFilter != null && !surnameFilter.trim().isEmpty()) { whereBuffer diff --git a/ccm-sci-project-navigation/src/com/arsdigita/cms/sciproject/navigation/SciProjectList.java b/ccm-sci-project-navigation/src/com/arsdigita/cms/sciproject/navigation/SciProjectList.java index ac930ed58..f8d453b3b 100644 --- a/ccm-sci-project-navigation/src/com/arsdigita/cms/sciproject/navigation/SciProjectList.java +++ b/ccm-sci-project-navigation/src/com/arsdigita/cms/sciproject/navigation/SciProjectList.java @@ -1,6 +1,5 @@ package com.arsdigita.cms.sciproject.navigation; -import com.arsdigita.globalization.Globalization; import com.arsdigita.globalization.GlobalizationHelper; import com.arsdigita.navigation.Navigation; import com.arsdigita.navigation.ui.AbstractComponent; @@ -8,6 +7,7 @@ import com.arsdigita.persistence.SessionManager; import com.arsdigita.util.UncheckedWrapperException; import com.arsdigita.xml.Element; +import java.io.UnsupportedEncodingException; import java.math.BigDecimal; import java.sql.Connection; import java.sql.PreparedStatement; @@ -103,11 +103,22 @@ public class SciProjectList extends AbstractComponent { final BigDecimal researchFieldFilter; try { // final String titleFilter = request.getParameter("title"); - titleFilter = Globalization.decodeParameter(request, - "title"); +// titleFilter = Globalization.decodeParameter(request, +// "title"); + if (request.getParameter("title") == null) { + titleFilter = null; + } else { + try { + titleFilter = new String(request + .getParameter("title") + .getBytes("UTF-8")); + } catch (UnsupportedEncodingException ex) { + throw new UncheckedWrapperException(ex); + } + } // final BigDecimal categoryFilter; - if (request.getParameter("researchfield") == null - || request.getParameter("researchfield").isEmpty()) { + if (request.getParameter("researchfield") == null + || request.getParameter("researchfield").isEmpty()) { researchFieldFilter = null; } else if (request.getParameter("researchfield").matches("\\d*")) { researchFieldFilter diff --git a/ccm-sci-publications-navigation/src/com/arsdigita/cms/scipublications/navigation/PublicationList.java b/ccm-sci-publications-navigation/src/com/arsdigita/cms/scipublications/navigation/PublicationList.java index 3ef662c9b..97e7f617a 100644 --- a/ccm-sci-publications-navigation/src/com/arsdigita/cms/scipublications/navigation/PublicationList.java +++ b/ccm-sci-publications-navigation/src/com/arsdigita/cms/scipublications/navigation/PublicationList.java @@ -18,6 +18,7 @@ import com.arsdigita.persistence.SessionManager; import com.arsdigita.util.UncheckedWrapperException; import com.arsdigita.xml.Element; +import java.io.UnsupportedEncodingException; import java.math.BigDecimal; import java.sql.Connection; import java.sql.PreparedStatement; @@ -305,8 +306,19 @@ public class PublicationList extends AbstractComponent { final String orderByParam; try { // final String - titleFilter = Globalization.decodeParameter(request, - "title"); +// titleFilter = Globalization.decodeParameter(request, +// "title"); + if (request.getParameter("title") == null) { + titleFilter = null; + } else { + try { + titleFilter = new String(request + .getParameter("title") + .getBytes("UTF-8")); + } catch (UnsupportedEncodingException ex) { + throw new UncheckedWrapperException(ex); + } + } // final String titleFilter = request.getParameter("title"); // final Integer yearFilter; if (request.getParameter("yearOfPublication") == null) { @@ -319,7 +331,19 @@ public class PublicationList extends AbstractComponent { } // final String // authorsFilter = request.getParameter("authorsStr"); - authorsFilter = Globalization.decodeParameter(request, "authorsStr"); +// authorsFilter = Globalization.decodeParameter(request, "authorsStr"); + if (request.getParameter("authorsStr") == null) { + authorsFilter = null; + } else { + try { + authorsFilter = new String(request + .getParameter("authorsStr") + .getBytes("UTF-8")); + } catch (UnsupportedEncodingException ex) { + throw new UncheckedWrapperException(ex); + } + } + if ((titleFilter != null && !titleFilter.trim().isEmpty()) || yearFilter != null || (authorsFilter != null && !authorsFilter.trim().isEmpty())) {