Я работаю над унаследованным Java-приложением, в котором есть много скомпилированных отчетов .jasper.Недавно что-то изменилось с тем, как офисная ИТ-компания, с которой я работаю, развертывает приложение, и отчеты перестают работать, поскольку приложение больше не может найти отчеты в файловой системе.Я обновил сборку так, чтобы отчеты включались в classpath
, а FileNotFoundException
исчезал.
Теперь, однако, отчеты отображаются только частично.Некоторые параметры, заголовки, в основном, любой контент, который не связан с Scriptlet, прекрасно воспроизводится, но все, что связано с Scriptlet, отображает только нули.
Я нашел только один способ решить эту проблему.Если я помещу файлы .jasper в строку с файлами .java и динамически запускаю приложение через eclipse, то сценарии также правильно отображаются.Если я загружаю их из другого места и запускаю приложение через eclipse, тогда возвращаются нулевые значения.
Мой дистрибутив использует One-Jar для объединения моих зависимостей.
Может ли путь следования повлиять на рендеринг сценариев?Я подтвердил, что md5 файлов .jasper совпадают при загрузке внутри и снаружи затмения, поэтому я уверен, что в каждом случае загружается один и тот же файл.