Подтвердить что ты не робот

Не удалось выполнить операцию из-за ошибки c00ce56e

Я обновил от богатых лиц 3.3 до богатых лиц 4.2, потому что ajax не работал для IE9. Теперь он все еще не работает.

После получения ответа IE получает ошибку JS "SCRIPT58734: Der Vorgang konnte aufgrund des folgenden Fehlers nicht fortgesetzt werden: c00ce56e." при попытке

data.responseText=request.responseText

на jsf.js.html? ln = javax.faces & разговорContext = 2, строка 1 строка 21747

Я думаю, это из-за HTTP-заголовка increcct

Content-Type: text/xml;charset=UTF8

должен быть

Content-Type: text/xml;charset=UTF-8

Здесь Необработанный ответ сервера

HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
X-Powered-By: JSF/2.0
Cache-Control: no-cache
Content-Type: text/xml;charset=UTF8
Content-Length: 293
Date: Tue, 17 Apr 2012 15:25:22 GMT

<?xml version='1.0' encoding='UTF8'?>
<partial-response><changes><update id="outtest"><![CDATA[<span id="outtest"><span     class="outhello">Hello !</span></span>]]></update><update id="javax.faces.ViewState"><![CDATA[2809980525147413088:295565165947012503]]></update></changes></partial-response>

Я использую

javaee-web-api 6
myfaces-orchestra-core 1.4
Hibernate  4.1
Spring 3.1.1
Richfaces 4.2.0
Primefaces 3.2
jsf-api+impl 2.1.7

jstl 1.2

и работает на tomcat 7

EDIT: теперь я уверен, что это заголовок. Я установил точку останова в charles-proxy и отредактировал заголовок ответа вручную, а отредактированный HTTP-заголовок IE9 показал правильный результат без ошибок

4b9b3361

Ответ 1

Ваш анализ верен. Атрибут charset в заголовке Content-Type неверен, и IE9 зажимает это с ошибкой c00ce56e.

JSF использует по умолчанию тот, который получен из ServletRequest#getCharacterEncoding(). Обычно этот параметр по умолчанию соответствует указанному клиентом или null, если он отсутствует (что часто бывает). Обычно это переопределяется с помощью некоторого настраиваемого фильтра, который вызывает request.setCharacterEncoding().

Учитывая неправильную кодировку, это может означать, что ваше веб-приложение где-то вызывает request.setCharacterEncoding() с "UTF8" вместо "UTF-8".

Я бы начал проверять все фильтры и их конфигурацию.