Reporting. Ошибка при работе с Libre Office

Здравствуйте!
Я создал отчет с шаблоном doc
изображение
Настроил доступ к libre office
изображение
Содержимое папки /usr/lib/libreoffice/program
изображение
Операционная система:

Distributor ID: AstraLinuxCE
Description: Astra Linux CE 2.12.29 (Orel)
Release: 2.12.29
Codename: orel

При запуске отчета выходит ошибка:

изображение

Стек вызова:
java.lang.NoSuchMethodError: ‘void com.sun.star.comp.servicemanager.ServiceManager.setDefaultContext(com.sun.star.uno.XComponentContext)’
at com.sun.star.comp.helper.Bootstrap.createInitialComponentContext(Bootstrap.java:163)
at com.sun.star.comp.helper.Bootstrap.createInitialComponentContext(Bootstrap.java:132)
at com.haulmont.yarg.formatters.impl.doc.connector.BootstrapConnector.getLocalContext(BootstrapConnector.java:180)
at com.haulmont.yarg.formatters.impl.doc.connector.BootstrapConnector.disconnect(BootstrapConnector.java:152)
at com.haulmont.yarg.formatters.impl.doc.connector.OfficeConnection.close(OfficeConnection.java:84)
at com.haulmont.reports.libintegration.CubaOfficeIntegration.runTaskWithTimeout(CubaOfficeIntegration.java:55)
at com.haulmont.yarg.formatters.impl.DocFormatter.doCreateDocument(DocFormatter.java:129)
at com.haulmont.yarg.formatters.impl.DocFormatter.renderDocument(DocFormatter.java:88)
at com.haulmont.yarg.reporting.Reporting.generateReport(Reporting.java:134)
at com.haulmont.yarg.reporting.Reporting.runReport(Reporting.java:93)
at com.haulmont.yarg.reporting.Reporting.runReport(Reporting.java:116)
at com.haulmont.reports.ReportingBean.createReportDocumentInternal(ReportingBean.java:381)
at com.haulmont.reports.ReportingBean.createReportDocument(ReportingBean.java:330)
at com.haulmont.reports.ReportingBean.createReport(ReportingBean.java:235)
at com.haulmont.reports.ReportServiceBean.createReport(ReportServiceBean.java:61)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:344)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:198)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:88)
at com.haulmont.cuba.core.sys.ServiceInterceptor.aroundInvoke(ServiceInterceptor.java:90)
at jdk.internal.reflect.GeneratedMethodAccessor148.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:644)
at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:633)
at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:70)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:95)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:212)
at com.sun.proxy.$Proxy267.createReport(Unknown Source)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at com.haulmont.cuba.core.sys.remoting.LocalServiceInvokerImpl.invoke(LocalServiceInvokerImpl.java:94)
at com.haulmont.cuba.web.sys.remoting.LocalServiceProxy$LocalServiceInvocationHandler.invoke(LocalServiceProxy.java:155)
at com.sun.proxy.$Proxy67.createReport(Unknown Source)
at com.haulmont.reports.gui.ReportGuiManager.getReportResult(ReportGuiManager.java:289)
at com.haulmont.reports.gui.ReportGuiManager$1.run(ReportGuiManager.java:418)
at com.haulmont.reports.gui.ReportGuiManager$1.run(ReportGuiManager.java:413)
at com.haulmont.cuba.gui.backgroundwork.LocalizedTaskWrapper.run(LocalizedTaskWrapper.java:57)
at com.haulmont.cuba.web.gui.executors.impl.WebBackgroundWorker$WebTaskExecutor.call(WebBackgroundWorker.java:205)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at com.haulmont.cuba.web.gui.executors.impl.WebBackgroundWorker$WebTaskExecutor.lambda$startExecution$1(WebBackgroundWorker.java:376)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:834)

Подскажите, пожалуйста в чем может быть проблема?

1 симпатия

Здравствуйте,
А в папку tomcat не подкладывались ли библиотеки для соединения с LibreOffice - похоже что сейчас лежат разные версии библиотек. От этого такая ошибка.
Не могли бы вы скинуть имена файлов из папки tomcat/shared/lib?

Здравствуйте, прикладываю содержимое папки tomcat/shared/lib
содержимое tomcat_shared_lib.txt (7.3 КБ)
Я пытался подключать libre office разными путями, в том числе через gradle(Закомментировано)
изображение
Причем, да пробовал подключить разные версии.
Непосредственно в эту папку я ничего не копировал.
Может мне следует тогда каталоги некоторые почистить, например, этот?

Почему то у вас новые зависимости приходят: например библиотека juh лежит трех версий.
Для начала необходимо удалить папку shared и повторно выполнить deploy приложения, чтобы библиотеки в данной папке обновились при деплое.
Потом посмотреть будут ли работать отчеты или нет.
Если будет тоже самое, то пришлите пожалуйста повторно содержимое данной папки, будет разбираться откуда приходит более новая зависимость.

1 симпатия

Спасибо, Андрей! Удалил папку deploy/tomcat/shared пересобрал приложение, все заработало!