Как Weblogic может отправить страницу с кодировкой Unicode - PullRequest
1 голос
/ 18 января 2010

99,9% страниц в моем приложении используют кодировку UTF-8.

Однако для некоторых специальных вариантов использования на стороне клиента мне нужен один из них, чтобы использовать Unicode (2 байта для каждого символа)

В этом отношении заголовок этой страницы:

<%@ page language="java" contentType="text/html; charset=unicode"%>
...<my content>...

Эта реализация отлично работает и выполняет свою работу, когда приложение запускается на Tomcat и Webspher. Однако, когда он развернут на Weblogic, я получаю ошибку сервера: неподдерживаемая кодировка: 'unicode': java.io.UnsupportedEncodingException: unicode

Кто-нибудь знает, как я могу заставить Weblogic отправлять страницы в кодировке Unicode?

Ответы [ 2 ]

3 голосов
/ 18 января 2010

UTF-8 - это Unicode. «Юникод» - это не кодировка символов сама по себе, это стандарт отображения символов (кодировка). Ваша проблема лежит где-то еще. Возможно, у вас были проблемы с кодировкой GET-запроса. Это часто упускается из виду. Затем эта статья может оказаться полезной для получения дополнительной справочной информации и полных решений о том, как заставить феномен Unicode работать в веб-приложении Java EE: Unicode - как правильно настроить символы?

Удачи.

Кстати, «2 байта на символ» характерны для большинства кодировок UTF-16 (от 0x0000 до 0xFFFF представлены в 2 байтах, в то время как UTF-8 использует 1, 2 и 3 байта для каждого из поддиапазоны). Может быть, вы просто хотели использовать его вместо этого?

1 голос
/ 18 января 2010

Unicode не является набором символов, но существуют наборы символов, позволяющие представлять символы для представления в системе Unicode. Вы уже знаете кодировку UTF-8 , которая кодирует каждый символ с 1, 2, 3 или 4 байтами, в зависимости от положения символа в системе. Похоже, вы хотите использовать кодировку UTF-16 , которая кодирует каждый символ с 2 или 4 байтами.

Примечание, касающееся ответа, предоставленного BalusC: здесь я использую слово "charset" в качестве "знаменателя для части кодирования набора символов в заголовке MIME Content-Type". Строго говоря, универсальный набор символов, предоставляемый Юникодом, является набором символов, но мы не строго указываем набор символов с помощью названия кодировки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...