2015-06-17 2 views
0

Я получаю PathNotFoundException в cq5 при доступе к узлу. Я пытаюсь извлечь данные из pdf-файла с узла jcr: content. но я получаю path not found exception, потому что имя моего файла содержит пробелы, потому что sling не может сопоставить запрос с соответствующим файлом. Мое имя файла - «Sbi FB Deals Done.pdf», которое преобразуется моим кодом в /content/dam/sbi/personal/docs/Sbi%20FB%20Deals%20Done.pdfPathNotFoundException {} при доступе к узлу в cq5

из-за% 20its не получается карта с файлом. вот мой код, где я получаю это исключение

Node fileNode = session.getNode(filePath+"/jcr:content/renditions/original/jcr:content");   
      inputStream = fileNode.getProperty("jcr:data").getBinary().getStream(); 

, где путь к файлу/содержание/дамба/SBI/личные/документы/Sbi FB предложения Done.pdf

любая идея для этого? любым способом доступа к файлу, который содержит пробелы в cq5

+0

Вы пытаетесь сохранить пробелы при загрузке узел? И я бы начал с файлового поля и использовал API для доступа к представлениям, уже есть методы класса Asset для получения потока. – Thomas

+0

не могли бы вы объяснить, что метод я просто хочу поток этого файла, указав мой путь – user2142786

ответ

0

Чтобы иметь возможность форматировать код, я отправляю это как ответ. Это, как я это сделал в подобном случае, хотя я получаю узел от поиска и я использую ResourceResolver и Adaptable интерфейс от Resource:

String filePath = "/content/dam/sbi/personal/docs/Sbi FB Deals Done.pdf"; 
InputStream fileStream = null; 
try { 
    Asset asset = resolver.resolve(filePath).adaptTo(Asset.class); 
    fileStream = asset.getOriginal().getStream(); 
    //do whatever you need to do with the stream 
} catch (IOException e) { 
} finally { 
    IOUtils.closeQuietly(fileStream); 
} 
+0

его все еще бросая одно и то же исключение в Node fileNode = session.getNode (filePath); , потому что в моем имени файла есть место и всякий раз, когда сессия пытается получить от него, он не получает этот путь – user2142786

+0

Ошибка при отправке почты в sbiMailWithAttachment PathNotFoundException {}/content/dam/sbi/personal/docs/sbi% 20CB% 20Deals% 20Done. pdf – user2142786

+0

Я удалил часть JCR в примере кода, возможно, ResourceResolver более терпим относительно пробелов в пути. – Thomas

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