Uploaded image for project: 'XWiki Platform'
  1. XWiki Platform
  2. XWIKI-14239

Office Server state isn't updated in real time

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 9.3.1
    • Fix Version/s: 11.3-rc-1
    • Component/s: Office
    • Labels:
      None
    • Difficulty:
      Unknown
    • Documentation:
      N/A
    • Documentation in Release Notes:
      N/A
    • Similar issues:

      Description

      Steps to reproduce on Windows:

      • Setup your Office server within XWiki. For example for Libre Office 5 I added to xwiki.properties:
        openoffice.autoStart=true
        openoffice.homePath=C:\\Program Files\\LibreOffice 5
      • Start XWiki
      • Go to http://localhost:8080/xwiki/bin/admin/XWiki/XWikiPreferences?editor=globaladmin&section=XWiki.OfficeImporterAdmin -> You see SERVER STATE - Connected
      • Go to http://localhost:8080/xwiki/bin/create/Main/WebHome -> you have "Page from Office" in the list
      • Select "Page from Office" and import a new office document -> the document is properly imported
      • Go to Task Manager - Details and close soffice.exe and soffice.bin
      • Go back to http://localhost:8080/xwiki/bin/admin/XWiki/XWikiPreferences?editor=globaladmin&section=XWiki.OfficeImporterAdmin -> the server state is still Connected
      • Again go to http://localhost:8080/xwiki/bin/create/Main/WebHome -> you still have "Page from Office" in the list
      • Select "Page from Office" and try to import a new office document -> the import fails with
        Apr 27, 2017 12:10:58 PM org.artofsolving.jodconverter.office.OfficeProcess forciblyTerminate
        INFO: trying to forcibly terminate process: 'socket,host=127.0.0.1,port=8100,tcpNoDelay=1'
        Apr 27, 2017 12:10:58 PM org.artofsolving.jodconverter.office.ManagedOfficeProcess doTerminateProcess
        INFO: process forcibly terminated with code 1
        2017-04-27 12:10:58,280 [http://localhost:8080/xwiki/bin/view/XWiki/OfficeImporterResults] ERROR .s.OfficeImporterScriptService - Error while converting document [ppt.ppt] into html.
        org.xwiki.officeimporter.OfficeImporterException: Error while converting document [ppt.ppt] into html.
                at org.xwiki.officeimporter.internal.builder.DefaultPresentationBuilder.importPresentation(DefaultPresentationBuilder.java:148)
                at org.xwiki.officeimporter.internal.builder.DefaultPresentationBuilder.build(DefaultPresentationBuilder.java:111)
                at org.xwiki.officeimporter.script.OfficeImporterScriptService.officeToXDOM(OfficeImporterScriptService.java:215)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:498)
                at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.doInvoke(UberspectImpl.java:395)
                at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:384)
                at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:173)
                at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:280)
                at org.apache.velocity.runtime.parser.node.ASTReference.value(ASTReference.java:567)
                at org.apache.velocity.runtime.parser.node.ASTExpression.value(ASTExpression.java:71)
                at org.apache.velocity.runtime.parser.node.ASTSetDirective.render(ASTSetDirective.java:142)
                at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
                at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:87)
                at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
                at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:342)
                at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:106)
                at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:342)
                at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluateInternal(DefaultVelocityEngine.java:259)
                at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:222)
                at com.xpn.xwiki.render.DefaultVelocityManager.evaluate(DefaultVelocityManager.java:361)
                at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluateString(VelocityMacro.java:131)
                at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluateString(VelocityMacro.java:52)
                at org.xwiki.rendering.macro.script.AbstractScriptMacro.evaluateBlock(AbstractScriptMacro.java:286)
                at org.xwiki.rendering.macro.script.AbstractScriptMacro.execute(AbstractScriptMacro.java:182)
                at org.xwiki.rendering.macro.script.AbstractScriptMacro.execute(AbstractScriptMacro.java:58)
                at org.xwiki.rendering.internal.transformation.macro.MacroTransformation.transform(MacroTransformation.java:272)
                at org.xwiki.rendering.internal.transformation.DefaultRenderingContext.transformInContext(DefaultRenderingContext.java:183)
                at org.xwiki.rendering.internal.transformation.DefaultTransformationManager.performTransformations(DefaultTransformationManager.java:95)
                at org.xwiki.display.internal.DocumentContentDisplayer.display(DocumentContentDisplayer.java:263)
                at org.xwiki.display.internal.DocumentContentDisplayer.display(DocumentContentDisplayer.java:133)
                at org.xwiki.display.internal.DocumentContentDisplayer.display(DocumentContentDisplayer.java:58)
                at org.xwiki.display.internal.DefaultDocumentDisplayer.display(DefaultDocumentDisplayer.java:96)
                at org.xwiki.display.internal.DefaultDocumentDisplayer.display(DefaultDocumentDisplayer.java:39)
                at org.xwiki.sheet.internal.SheetDocumentDisplayer.display(SheetDocumentDisplayer.java:123)
                at org.xwiki.sheet.internal.SheetDocumentDisplayer.display(SheetDocumentDisplayer.java:52)
                at org.xwiki.display.internal.ConfiguredDocumentDisplayer.display(ConfiguredDocumentDisplayer.java:68)
                at org.xwiki.display.internal.ConfiguredDocumentDisplayer.display(ConfiguredDocumentDisplayer.java:42)
                at com.xpn.xwiki.doc.XWikiDocument.display(XWikiDocument.java:1164)
                at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java:1205)
                at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java:1182)
                at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java:1213)
                at com.xpn.xwiki.api.Document.getRenderedContent(Document.java:695)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:498)
                at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.doInvoke(UberspectImpl.java:395)
                at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:384)
                at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:173)
                at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:280)
                at org.apache.velocity.runtime.parser.node.ASTReference.value(ASTReference.java:567)
                at org.apache.velocity.runtime.parser.node.ASTExpression.value(ASTExpression.java:71)
                at org.apache.velocity.runtime.parser.node.ASTSetDirective.render(ASTSetDirective.java:142)
                at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
                at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:342)
                at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:106)
                at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
                at org.xwiki.velocity.introspection.TryCatchDirective.render(TryCatchDirective.java:87)
                at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:207)
                at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:342)
                at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluateInternal(DefaultVelocityEngine.java:259)
                at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:222)
                at com.xpn.xwiki.render.DefaultVelocityManager.evaluate(DefaultVelocityManager.java:361)
                at com.xpn.xwiki.internal.template.InternalTemplateManager.evaluateContent(InternalTemplateManager.java:796)
                at com.xpn.xwiki.internal.template.InternalTemplateManager.render(InternalTemplateManager.java:673)
                at com.xpn.xwiki.internal.template.InternalTemplateManager.lambda$renderFromSkin$0(InternalTemplateManager.java:646)
                at com.xpn.xwiki.internal.security.authorization.DefaultAuthorExecutor.call(DefaultAuthorExecutor.java:85)
                at com.xpn.xwiki.internal.template.InternalTemplateManager.renderFromSkin(InternalTemplateManager.java:645)
                at com.xpn.xwiki.internal.template.InternalTemplateManager.renderFromSkin(InternalTemplateManager.java:622)
                at com.xpn.xwiki.internal.template.InternalTemplateManager.render(InternalTemplateManager.java:608)
                at com.xpn.xwiki.internal.template.DefaultTemplateManager.render(DefaultTemplateManager.java:77)
                at com.xpn.xwiki.XWiki.evaluateTemplate(XWiki.java:2108)
                at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:2086)
                at com.xpn.xwiki.api.XWiki.parseTemplate(XWiki.java:891)
                at sun.reflect.GeneratedMethodAccessor180.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:498)
                at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.doInvoke(UberspectImpl.java:395)
                at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:384)
                at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:173)
                at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:280)
                at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:369)
                at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
                at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:216)
                at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:311)
                at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:230)
                at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:207)
                at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:342)
                at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluateInternal(DefaultVelocityEngine.java:259)
                at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:222)
                at com.xpn.xwiki.render.DefaultVelocityManager.evaluate(DefaultVelocityManager.java:361)
                at com.xpn.xwiki.internal.template.InternalTemplateManager.evaluateContent(InternalTemplateManager.java:796)
                at com.xpn.xwiki.internal.template.InternalTemplateManager.render(InternalTemplateManager.java:673)
                at com.xpn.xwiki.internal.template.InternalTemplateManager.lambda$renderFromSkin$0(InternalTemplateManager.java:646)
                at com.xpn.xwiki.internal.security.authorization.DefaultAuthorExecutor.call(DefaultAuthorExecutor.java:85)
                at com.xpn.xwiki.internal.template.InternalTemplateManager.renderFromSkin(InternalTemplateManager.java:645)
                at com.xpn.xwiki.internal.template.InternalTemplateManager.renderFromSkin(InternalTemplateManager.java:622)
                at com.xpn.xwiki.internal.template.InternalTemplateManager.render(InternalTemplateManager.java:608)
                at com.xpn.xwiki.internal.template.DefaultTemplateManager.render(DefaultTemplateManager.java:77)
                at com.xpn.xwiki.XWiki.evaluateTemplate(XWiki.java:2108)
                at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:2086)
                at com.xpn.xwiki.api.XWiki.parseTemplate(XWiki.java:891)
                at sun.reflect.GeneratedMethodAccessor180.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:498)
                at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.doInvoke(UberspectImpl.java:395)
                at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:384)
                at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:173)
                at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:280)
                at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:369)
                at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
                at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:216)
                at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:311)
                at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:230)
                at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:207)
                at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
                at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:87)
                at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
                at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:342)
                at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:106)
                at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:342)
                at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluateInternal(DefaultVelocityEngine.java:259)
                at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:222)
                at com.xpn.xwiki.render.DefaultVelocityManager.evaluate(DefaultVelocityManager.java:361)
                at com.xpn.xwiki.internal.template.InternalTemplateManager.evaluateContent(InternalTemplateManager.java:796)
                at com.xpn.xwiki.internal.template.InternalTemplateManager.render(InternalTemplateManager.java:673)
                at com.xpn.xwiki.internal.template.InternalTemplateManager.lambda$renderFromSkin$0(InternalTemplateManager.java:646)
                at com.xpn.xwiki.internal.security.authorization.DefaultAuthorExecutor.call(DefaultAuthorExecutor.java:85)
                at com.xpn.xwiki.internal.template.InternalTemplateManager.renderFromSkin(InternalTemplateManager.java:645)
                at com.xpn.xwiki.internal.template.InternalTemplateManager.renderFromSkin(InternalTemplateManager.java:622)
                at com.xpn.xwiki.internal.template.InternalTemplateManager.render(InternalTemplateManager.java:608)
                at com.xpn.xwiki.internal.template.DefaultTemplateManager.render(DefaultTemplateManager.java:77)
                at com.xpn.xwiki.XWiki.evaluateTemplate(XWiki.java:2108)
                at com.xpn.xwiki.web.Utils.parseTemplate(Utils.java:180)
                at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:463)
                at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:210)
                at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425)
                at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228)
                at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
                at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
                at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808)
                at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669)
                at com.xpn.xwiki.web.ActionFilter.doFilter(ActionFilter.java:112)
                at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
                at org.xwiki.wysiwyg.server.filter.ConversionFilter.doFilter(ConversionFilter.java:127)
                at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
                at org.xwiki.container.servlet.filters.internal.SetHTTPHeaderFilter.doFilter(SetHTTPHeaderFilter.java:63)
                at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
                at org.xwiki.container.servlet.filters.internal.SavedRequestRestorerFilter.doFilter(SavedRequestRestorerFilter.java:208)
                at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
                at org.xwiki.container.servlet.filters.internal.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:111)
                at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
                at org.xwiki.resource.servlet.RoutingFilter.doFilter(RoutingFilter.java:134)
                at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
                at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
                at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
                at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
                at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
                at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
                at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
                at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
                at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
                at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
                at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
                at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)
                at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
                at org.eclipse.jetty.server.Server.handle(Server.java:499)
                at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
                at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
                at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
                at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
                at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
                at java.lang.Thread.run(Thread.java:748)
        Caused by: org.xwiki.officeimporter.converter.OfficeConverterException: Error while performing conversion.
                at org.xwiki.officeimporter.internal.converter.DefaultOfficeConverter.convert(DefaultOfficeConverter.java:116)
                at org.xwiki.officeimporter.internal.builder.DefaultPresentationBuilder.importPresentation(DefaultPresentationBuilder.java:145)
                ... 177 common frames omitted
        Caused by: org.artofsolving.jodconverter.office.OfficeException: task did not complete within timeout
                at org.artofsolving.jodconverter.office.PooledOfficeManager.execute(PooledOfficeManager.java:100)
                at org.artofsolving.jodconverter.office.ProcessPoolOfficeManager.execute(ProcessPoolOfficeManager.java:78)
                at org.artofsolving.jodconverter.OfficeDocumentConverter.convert(OfficeDocumentConverter.java:84)
                at org.artofsolving.jodconverter.OfficeDocumentConverter.convert(OfficeDocumentConverter.java:72)
                at org.xwiki.officeimporter.internal.converter.DefaultOfficeConverter.convert(DefaultOfficeConverter.java:100)
                ... 178 common frames omitted
        Caused by: java.util.concurrent.TimeoutException: null
                at java.util.concurrent.FutureTask.get(FutureTask.java:205)
                at org.artofsolving.jodconverter.office.PooledOfficeManager.execute(PooledOfficeManager.java:97)
                ... 182 common frames omitted

      Expected results after I close soffice.exe and soffice.bin:

      • Server state in Administration becomes "Not Connected"
      • "Page from Office" option isn't displayed inside Create menu

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                surli Simon Urli
                Reporter:
                msmeria Manuel Smeria
              • Votes:
                1 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Date of First Response: