Как разрешить объявления сущностей и получить путь к файлу в XML?

<?xml version='1.0' encoding='UTF-8'?>
 <!DOCTYPE dmodule 
 [<!NOTATION JPEG SYSTEM 'Joint Photographic Experts Group'>
  <!ENTITY abcd SYSTEM  'sunset.jpg' NDATA JPEG>
 ]>

  ....
  <graphic id = "abcd"/>

Со ссылкой на приведенный выше пример кода мне нужно получить изображение заката в моем html, для которого мне нужно получить filepath sunset.jpg, который определен в объявлении сущности.

Как бы я сделал это на Java? Я старался

 document.getDoctype().getEntities().item(i).getNodeName(),  

но это дает мне abcd, но мне нужен путь к файлу 'sunset.jpg'.

И я тоже пытался,

builder.setEntityResolver(new EntityResolver() {

            @Override
            public InputSource resolveEntity(String publicId, String systemId)
                    throws SAXException, IOException {
                // TODO Auto-generated method stub

                System.out.println("Public and System IDs"+publicId+"  "+systemId);
                return new InputSource(new StringReader(referDM));
            }
        });

но я думаю, что у меня есть некоторая проблема с типом возвращаемого значения, поскольку я ожидаю, что файл изображения будет считан как байтовый массив? Какой должен быть тип возврата?

1 ответ

Решение

Ну вот:

Entity entity = (Entity) document.getDoctype().getEntities().item(i);
String path = entity.getSystemId();
Другие вопросы по тегам