下载pdf报告不适用于alfresco社区

下载pdf报告不适用于alfresco社区,alfresco,alfresco-share,alfresco-webscripts,Alfresco,Alfresco Share,Alfresco Webscripts,我使用的是alfresco community 5.0.d,当我尝试下载pdf报告时,我得到“无法加载pdf文档” 同样在控制台中,也没有错误 下面是下载报告选项的屏幕截图 如何解决pdf加载的问题? 也暂时我想删除这个pdf下载选项?如何做到这一点呢 更新: catalina.out日志显示如下错误 2017-02-08 17:29:20,375 ERROR [report.client.AbstractBeCPGReportClient] [http-bio-8080-exec-8]

我使用的是alfresco community 5.0.d,当我尝试下载pdf报告时,我得到“无法加载pdf文档”

同样在控制台中,也没有错误

下面是下载报告选项的屏幕截图

如何解决pdf加载的问题? 也暂时我想删除这个pdf下载选项?如何做到这一点呢

更新:

catalina.out日志显示如下错误

2017-02-08 17:29:20,375  ERROR [report.client.AbstractBeCPGReportClient] [http-bio-8080-exec-8] Error accessing report server timeStamp is null
 2017-02-08 17:30:12,048  ERROR [report.client.AbstractBeCPGReportClient] [http-bio-8080-exec-1] Unable to parse response
 java.lang.NumberFormatException: For input string: ""
    at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
    at java.lang.Long.parseLong(Long.java:601)
    at java.lang.Long.parseLong(Long.java:631)
    at fr.becpg.report.client.AbstractBeCPGReportClient.getTemplateTimeStamp(AbstractBeCPGReportClient.java:85)
    at fr.becpg.repo.report.engine.impl.BeCPGReportServerClient.sendTplFile(BeCPGReportServerClient.java:136)
    at fr.becpg.repo.report.engine.impl.BeCPGReportServerClient.access$000(BeCPGReportServerClient.java:49)
    at fr.becpg.repo.report.engine.impl.BeCPGReportServerClient$1.doInReportSession(BeCPGReportServerClient.java:88)
    at fr.becpg.report.client.AbstractBeCPGReportClient.executeInSession(AbstractBeCPGReportClient.java:181)
    at fr.becpg.repo.report.engine.impl.BeCPGReportServerClient.createReport(BeCPGReportServerClient.java:79)
    at fr.becpg.repo.report.search.impl.ReportServerSearchRenderer.renderReport(ReportServerSearchRenderer.java:128)
    at fr.becpg.repo.report.search.impl.ExportSearchServiceImpl.createReport(ExportSearchServiceImpl.java:42)
    at fr.becpg.repo.web.scripts.report.ExportSearchWebScript.execute(ExportSearchWebScript.java:97)
    at org.alfresco.repo.web.scripts.RepositoryContainer$3.execute(RepositoryContainer.java:482)
    at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:457)
    at org.alfresco.repo.web.scripts.RepositoryContainer.transactionedExecute(RepositoryContainer.java:551)
    at org.alfresco.repo.web.scripts.RepositoryContainer.transactionedExecuteAs(RepositoryContainer.java:619)
    at org.alfresco.repo.web.scripts.RepositoryContainer.executeScriptInternal(RepositoryContainer.java:399)
    at org.alfresco.repo.web.scripts.RepositoryContainer.executeScript(RepositoryContainer.java:280)
    at org.springframework.extensions.webscripts.AbstractRuntime.executeScript(AbstractRuntime.java:378)
    at org.springframework.extensions.webscripts.AbstractRuntime.executeScript(AbstractRuntime.java:209)
    at org.springframework.extensions.webscripts.servlet.WebScriptServlet.service(WebScriptServlet.java:132)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.alfresco.web.app.servlet.GlobalLocalizationFilter.doFilter(GlobalLocalizationFilter.java:61)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:745)
2017-02-08 17:30:12,048  ERROR [report.client.AbstractBeCPGReportClient] [http-bio-8080-exec-1] Error accessing report server timeStamp is null
更新:

控制台错误


谢谢。

@nikhil84,我建议使用此代码生成pdf格式副本,这样您就可以摆脱导致错误的库

  • 使用创建一个露天
  • 将PDFRenditionService添加到repoAmp/src/main/java/com/yourCompany/alfresco/service

    公共静态最终字符串PDFRENDITIONNAME=“pdfRendition”; public static final QName pdfRenditionQName=QName.createQName(NamespaceService.CONTENT\u MODEL\u 1\u 0\u URI,PDFRENDITIONNAME); 格式副本定义pdfRenditionDefinition=renditionService.createRenditionDefinition(pdfRenditionQName,ReformatRenderingEngine.NAME); pdfRenditionDefinition.setParameterValue(AbstractRenderingEngine.PARAM_MIME_TYPE,MimetypeMap.MIMETYPE_PDF); 格式副本服务。保存格式副本定义(pdfRenditionDefinition)

    //在自己的事务中执行此行 render(sourceNodeRef、pdfRenditionDefinition)

    ChildAssociationRef renditionAssoc=renditionService.getRenditionByName(sourceNodeRef,pdfRenditionName); if(renditionAssoc==null)返回null 返回renditionAssoc.getChildRef()

  • 将alfresco webscript添加到将调用PDF服务的repo amp中

  • 确定要如何触发webscript
  • 有关详细信息,请查看

  • 您的服务器端日志中有任何内容吗?@Lista我已使用catalina.out错误日志更新了帖子。您似乎下载了一个已损坏/配置不正确的Alfresco第三方加载项(请注意stacktrace中的非Alfresco包名)。你为什么这么做,你需要它吗?如果notBeCPGReportServerClient用于创建报告(pdf格式),请尝试将其删除,以便用户可以下载。我正在使用库进行渲染,并允许我下载pdf。这是这个库和其他特性一起提供的一种特性。此外,我也不知道在哪里确切地把这个代码的格式副本,让用户下载的pdf文件。如果你能让我知道修改的步骤和文件。谢谢您可以将此代码放在PDFRenditionService中,该服务可以由自定义webscript调用。此外,格式副本服务的类型为org.alfresco.service.cmr.rendition.RenditionServiceOk,听起来不错,但我对alfresco dev是新手,对创建自定义webscript不太了解。如果你能一起下台阶或写博客,那就太好了。此pdf格式副本是否允许下载pdf?