Кодирование 'UTF-8' не поддерживается Средой выполнения Java

Для этого нет возможности в базовом S3 API . Объекты должны выбираться индивидуально. Единственное, что приходит в голову, это действие, которое работает с несколькими объектами в контексте одного действия API, это удаление нескольких объектов .

Любой данный сегмент S3 может, конечно, обрабатывать очень большое количество одновременных GET запросов, поэтому вы можете получить все объекты за короткий промежуток времени, если воспользуетесь какой-либо асинхронной и / или многопоточностью Возможности вашего языка выбора.

Если тела объектов очень малы, вы также можете инкапсулировать это в функцию Lambda, которая выполнит всю работу и упакует все, поддерживая ваш код вызова более аккуратным. Но у лямбда-функций есть предел полезной нагрузки , равный 6 МБ для запроса и ответа ... поэтому объекты должны быть небольшими, чтобы этот подход работал.

11
задан Mark Derricutt 7 October 2008 в 05:00
поделиться

4 ответа

Согласно документации "Каждая реализация платформы Java требуется, чтобы поддерживать следующие стандартные наборы символов... US-ASCII, ISO-8859-1, UTF-8, UTF-16BE, UTF-16LE, UTF-16". Таким образом, я сомневаюсь, что Sun выпустил сборку без поддержки UTF-8.

Фактическое сообщение об ошибке, кажется, отсюда, который является частью синтаксического анализатора Xerces XML. Я предполагаю, что это - синтаксический анализатор XML, где проблема происходит.

12
ответ дан 3 December 2019 в 05:36
поделиться

Попробуйте следующую программу:

import java.nio.charset.Charset;

public class TestCharset {
    public static void main(String[] args) {
        System.out.println(Charset.forName("UTF-8"));
    }
}

Если это выдает исключение, то существует что-то не так с Вашим JDK. Если это печатает "UTF-8" затем, Ваш JDK в порядке, и Ваше приложение делает что-то нечетное.

Если это так, запустите свое приложение под отладчиком и поместите точку останова в http://www.java2s.com/Open-Source/Java-Document/XML/xalan/org/apache/xml/serializer/ToStream.java.htm - это - место, которое это предупреждение производится, и шаг для наблюдения, почему Xalan не может найти кодирование.

7
ответ дан 3 December 2019 в 05:36
поделиться

По всей вероятности кто-то поместил выгоду () ожидание только не поддерживать исключения кодирования, таким образом, он использовал соответствующее сообщение. Но он использовал слишком широкую спецификацию исключения (например, выгода (Исключение исключая)), поэтому когда во времени выполнения у него есть что-то еще (недопустимый XML, NPE...), сообщение стало вводящим в заблуждение.

2
ответ дан 3 December 2019 в 05:36
поделиться

Попробуйте другую (стабильную версию) JVM. Однажды у меня была эта проблема, и оказалось, что на машине была запущена бета-версия JVM, которая действительно не поддерживала UTF-8, вопреки требованию в документации API.

0
ответ дан 3 December 2019 в 05:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: