2013-07-01 3 views
1

Я использую op-код XML-INTO для анализа запроса веб-службы. Каждый сейчас и потом я получаю ошибки в журналахАнализатор XML обнаружил код ошибки 302

(RNX0351 - "The XML parser detected error code 302"). 

помощь для 302

302 The parser does not support the requested CCSID value or 
the first character of the XML document was not '<' 

Насколько мне известно, первый символ «<» и запрос генерируется предыдущий вызов веб-службы, поэтому я был бы очень удивлен, если бы CCSID изменился.

Ошибка повторяется, для конкретного запроса, поэтому почти наверняка связаны данные, я просто не знаю, как я буду определять идентификационный элемент.

Любые мысли о том, как определить проблему, или еще лучше, как ее преодолеть?

веселит

+0

Я предлагаю сбрасывать XML-строку, которую вы обрабатываете, - таким образом вы можете подтвердить, что первый символ - это '<', а не NULL, BOM или что-то еще. –

+0

Запрос записывается в IFS в начале обработки и является «<» с самого начала конверта мыла, без пробелов, нулей или двоичных файлов, насколько я могу судить. Запрос - это обновление, а источник - это «получить», который произошел непосредственно перед тем же сервером, выполнить аналогичное обновление в другой записи, и он работает с удовольствием, следовательно, я полагаю, что это данные. – NZM

+0

Что такое CCSID файла в IFS? –

ответ

2

CCSID является атрибутом AS400/ISeries/Power System, и это относится ко всему МФС.
Это как объявление того, что внутри файла, или, другими словами, его внутренняя кодировка «должна быть».

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

Похоже, что вы получаете данные под одной кодировкой, но файл CCSID не соответствует.

Попробуйте изменить CCSID в своем файле (только конверт). E.G .: 37 (американский), 500 (латинский-1), 819 (utf-8), 850 (dos), 1252 (выигрыш) и файл отображения после.

Вы можете проверить сначала, используя ls -Sla yourfile в QSH или QP2TERM, или EDTF. CHGATTR позволяет вам изменять CCSID, а также setccsid в QSH (снова).

Этот способ помог мне найти связанные проблемы. Помните, что хотя данные могут быть видны в четырехстах, они могут не отображаться через папку общего доступа в Win. Это означает, что файл CCSID, кодировка содержимого не соответствует.

Надеюсь, это поможет.

Смежные вопросы