/** * Copyright (c) 2000-present Liferay, Inc. All rights reserved. * * This library is free software; you can redistribute it and/or modify it under * the terms of the GNU Lesser General Public License as published by the Free * Software Foundation; either version 2.1 of the License, or (at your option) * any later version. * * This library is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more * details. */ package com.liferay.portal.character.encoding.test.servlet.filter; import com.liferay.portal.kernel.log.Log; import com.liferay.portal.kernel.log.LogFactoryUtil; import com.liferay.portal.kernel.servlet.BaseFilter; import java.io.IOException; import java.io.OutputStream; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.osgi.service.component.annotations.Component; /** * @author Matthew Tambara */ @Component( enabled = true, immediate = true, property = { "after-filter=Absolute Redirects Filter", "dispatcher=FORWARD", "dispatcher=REQUEST", "servlet-context-name=", "servlet-filter-name=Character Encoding Filter", "url-pattern=/*" }, service = Filter.class ) public class CharacterEncodingFilter extends BaseFilter { public static final String REQUEST_PARAMETER_NAME = "request.parameter.name"; @Override protected Log getLog() { return _log; } @Override protected void processFilter( HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws IOException { String parameter = request.getParameter(REQUEST_PARAMETER_NAME); try (OutputStream outputStream = response.getOutputStream()) { outputStream.write( parameter.getBytes(request.getCharacterEncoding())); } } private static final Log _log = LogFactoryUtil.getLog( CharacterEncodingFilter.class); }