soffice headless on server consumes 100% CPU
Stephan Bergmann
sbergman at redhat.com
Thu May 23 15:33:13 UTC 2019
On 23/05/2019 17:18, Manfred Rebentisch wrote:
> Hi,
>
> if I start soffice with
>
> --accept="socket,host=localhost,port=2083;urp;StarOffice.ServiceManager"
>
> it runs normal.
> But if I want to connect from client C++ programm:
>
> sConnectionString =
> "socket,host=localhost,port=2083;urp;StarOffice.ServiceManager";
>
> xContextM = ::cppu::defaultBootstrap_InitialComponentContext();
>
> xServiceManagerM = xContextM->getServiceManager();
> xResolverM = Reference< XUnoUrlResolver > (xInterfaceM, UNO_QUERY);
>
> xInterfaceM = Reference< XInterface >(
> xResolverM->resolve( sConnectionString ), UNO_QUERY );
>
> it throws an exception with: "UNO URL does not start with "uno:" "
The soffice --accept command-line option and the UNO
css.bridge.UnoUrlResolver service expect different kinds of arguments.
The latter is documented to expect a full uno URL (see
<http://udk.openoffice.org/common/man/spec/uno-url.html>), while the
former takes only connection-type,params and optional (defaulting to
"urp") protocol-name,params parts of such a URL. (Though the former was
mis-documented to also take a uno URL, see
<https://gerrit.libreoffice.org/#/c/72859/> "Fix documented 'soffice
--accept' parameter syntax") for fixing that.
So run `soffice --accept=socket,host=localhost,port=2083\;urp` but call
xResolver->resolve("uno:socket,host=localhost,port=2083;urp;StarOffice.ServiceManager").
More information about the LibreOffice
mailing list