Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > как избежать амперсанд в Castor?


Автор: slolennnn 9.8.2006, 14:35
Господа!
Вот код который парсит xml файл используя Castor

  
Код

  Mapping mapping = new Mapping();
            URL url = getResource(mappingFileName);
            mapping.loadMapping(url);
            Unmarshaller unmarshaller = new Unmarshaller(Users.class);
            unmarshaller.setMapping(mapping);
            MyObject myObj = (MyObject) unmarshaller.unmarshal(inputSource);
        

          

Все прекрасно пока не появляется в XML файле знак амперсанда
<businessUnit>R&D</businessUnit>
Падает эксепшион
Код

Cannot parse the file
Parsing Error : The reference to entity "D" must end with the ';' delimiter.

Как получить этот поток chars и перехватить этот амперсанд?

Автор: LSD 9.8.2006, 14:43
Это некорректный XML, тело тега не может содежать символ &. Если надо его вставить в текст, то надо его вставлять как &amp;.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)