PRB: C00CE56E HRESULT chybová zpráva "Systém nepodporuje zadané kódování" s MSXML

Příznaky

Při načítání vzdálených dokumentů XML z webového serveru pomocí XMLHTTP nebo IXMLDocument::Load, může se zobrazit následující chybová zpráva:

HRESULT C00CE56E
Systém nepodporuje zadané kódování.


Tato chyba je nejrozšířenější při použití rámce založené na jazyce Java aplikace střední vrstvy.

Příčina

Od verze 2.6 analyzátoru MSXML předává všechny dokumenty XML pomocí nezaregistrovaným ověřit jejich kódování. Pokud nezaregistrovaným narazí nestandardní kódování řetězec, vrátí funkce chybu.


"ISO8859_1" je kanonický reprezentace řetězec v knihovnách jazyka a třídy Java kódování znaků Latin-1. Standard, který je definován Internet Assigned Numbers Authority, je však "ISO-8859-1", který není přijaté alias.

Řešení

Chcete-li vyřešit tento problém, proveďte některou z následujících akcí:

  • Změňte řetězec v příslušných Java prostředí serveru z "ISO8859_1" "ISO-8859-1" kódování znaků. - nebo -

  • IXMLDOMDocument::get_responseBody použijte k načtení dat jako raw vyrovnávací paměť bajty. Pokud vyvíjíte aplikace v Microsoft Visual C++, můžete definovat popisovač HGLOBAL dat a zpracování dat snadnější pomocí CreateStreamOnHGlobal .

Stav

Toto chování je záměrné.

Odkazy

Další informace naleznete na následujícím webu:
Vlastnosti

ID článku: 304625 - Poslední kontrola: 10. 1. 2017 - Revize: 1

Váš názor