Основная проблема в том, что я получаю нулевой результат от моего zipEntry.Что я делаю, так это получаю BLOB.zip из базы данных, направляя его во входной поток, оттуда в zipArchiveInputStream и в ZipEntry, который каждый раз возвращает null.Я решил использовать ZipArchiveInputStream после использования ZipInputStream с такими же нулевыми результатами.
public byte[] getXMLStream() {
try {
return this.jdbcTemplate.queryForObject("SELECT SAVEDATA FROM JDBEVPP1.TEVP005 WHERE GFNR = 357420", byte[].class); }
catch(DataAccessException ex) {
ex.printStackTrace();
return null;}}
@Override
public void getXMLdata() {
byte[] str = getXMLStream();
InputStream myInputStream = new ByteArrayInputStream(str);
ZipArchiveInputStream fis = new ZipArchiveInputStream(myInputStream);
ZipEntry entry = null;
try {
while ( (entry = fis.getNextZipEntry()) != null ) {
System.out.println(entry.getName());
}
} catch (IOException e) {
e.printStackTrace();
}
}
Мне просто нужно получить этот xml и распечатать его в консоли для тестирования.Любая идея, что здесь не так или как заставить это работать?
РЕДАКТИРОВАТЬ: Внутри BLOB находится формат XML, который мне нужно представить на консоли.