[ovirt-users] 3.5 /api failure

Juan Hernandez jhernand at redhat.com
Mon Oct 20 17:57:05 UTC 2014


On 10/20/2014 01:08 PM, Kapetanakis Giannis wrote:
> After upgrading to 3.5 today I cannot access /api/ on engine server.
> Apart from that everything else works ok
> 
> G

Check the following:

* What version of the "fop" package is installed?

  # rpm -q fop

* Does the "/usr/share/java/fop.jar" file exit? What package owns it?

  # ls -l /usr/share/java/fop.jar
  # rpm -qf /usr/share/java/fop.jar

* Does the "/usr/share/java/fop.jar" file contain the "FopFactory" class?

  # jar tvf /usr/share/java/fop.jar | grep FopFactory

* What is inside the "/usr/share/ovirt-engine/modules/org/apache/fop"
directory?

  # find /usr/share/ovirt-engine/modules/org/apache/xmlgraphics/fop -ls

* Is the FOP class actually loaded in the engine JVM?

  # su -s /bin/sh - ovirt -c "jmap -histo $(pidof ovirt-engine)" | grep
FopFactory

> 
> 
>   HTTP Status 500 -
> 
> ------------------------------------------------------------------------
> 
> *type* Exception report
> 
> *message*
> 
> *description* _The server encountered an internal error () that
> prevented it from fulfilling this request._
> 
> *exception*
> 
> javax.servlet.ServletException: Servlet.init() for servlet org.ovirt.engine.api.restapi.BackendApplication threw exception
> 	org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:489)
> 	org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153)
> 	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> 	org.jboss.web.rewrite.RewriteValve.invoke(RewriteValve.java:466)
> 	org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368)
> 	org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:505)
> 	org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:445)
> 	org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930)
> 	java.lang.Thread.run(Thread.java:745)
> 
> *root cause*
> 
> java.lang.RuntimeException: java.lang.RuntimeException: Unable to instantiate MessageBodyWriter
> 	org.jboss.resteasy.plugins.providers.RegisterBuiltin.register(RegisterBuiltin.java:35)
> 	org.jboss.resteasy.spi.ResteasyDeployment.start(ResteasyDeployment.java:211)
> 	org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.init(ServletContainerDispatcher.java:67)
> 	org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.init(HttpServletDispatcher.java:36)
> 	org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:489)
> 	org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153)
> 	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> 	org.jboss.web.rewrite.RewriteValve.invoke(RewriteValve.java:466)
> 	org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368)
> 	org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:505)
> 	org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:445)
> 	org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930)
> 	java.lang.Thread.run(Thread.java:745)
> 
> *root cause*
> 
> java.lang.RuntimeException: Unable to instantiate MessageBodyWriter
> 	org.jboss.resteasy.spi.ResteasyProviderFactory.registerProvider(ResteasyProviderFactory.java:772)
> 	org.jboss.resteasy.plugins.providers.RegisterBuiltin.registerProviders(RegisterBuiltin.java:70)
> 	org.jboss.resteasy.plugins.providers.RegisterBuiltin.register(RegisterBuiltin.java:31)
> 	org.jboss.resteasy.spi.ResteasyDeployment.start(ResteasyDeployment.java:211)
> 	org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.init(ServletContainerDispatcher.java:67)
> 	org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.init(HttpServletDispatcher.java:36)
> 	org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:489)
> 	org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153)
> 	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> 	org.jboss.web.rewrite.RewriteValve.invoke(RewriteValve.java:466)
> 	org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368)
> 	org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:505)
> 	org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:445)
> 	org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930)
> 	java.lang.Thread.run(Thread.java:745)
> 
> *root cause*
> 
> java.lang.RuntimeException: Failed to construct public org.ovirt.engine.api.pdf.FOPMessageBodyWriter()
> 	org.jboss.resteasy.core.ConstructorInjectorImpl.construct(ConstructorInjectorImpl.java:144)
> 	org.jboss.resteasy.spi.ResteasyProviderFactory.getProviderInstance(ResteasyProviderFactory.java:1039)
> 	org.jboss.resteasy.spi.ResteasyProviderFactory.addMessageBodyWriter(ResteasyProviderFactory.java:519)
> 	org.jboss.resteasy.spi.ResteasyProviderFactory.registerProvider(ResteasyProviderFactory.java:768)
> 	org.jboss.resteasy.plugins.providers.RegisterBuiltin.registerProviders(RegisterBuiltin.java:70)
> 	org.jboss.resteasy.plugins.providers.RegisterBuiltin.register(RegisterBuiltin.java:31)
> 	org.jboss.resteasy.spi.ResteasyDeployment.start(ResteasyDeployment.java:211)
> 	org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.init(ServletContainerDispatcher.java:67)
> 	org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.init(HttpServletDispatcher.java:36)
> 	org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:489)
> 	org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153)
> 	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> 	org.jboss.web.rewrite.RewriteValve.invoke(RewriteValve.java:466)
> 	org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368)
> 	org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:505)
> 	org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:445)
> 	org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930)
> 	java.lang.Thread.run(Thread.java:745)
> 
> *root cause*
> 
> java.lang.NoClassDefFoundError: org/apache/fop/apps/FopFactory
> 	org.ovirt.engine.api.pdf.FOPMessageBodyWriter.<init>(FOPMessageBodyWriter.java:51)
> 	sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> 	sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
> 	sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> 	java.lang.reflect.Constructor.newInstance(Constructor.java:526)
> 	org.jboss.resteasy.core.ConstructorInjectorImpl.construct(ConstructorInjectorImpl.java:132)
> 	org.jboss.resteasy.spi.ResteasyProviderFactory.getProviderInstance(ResteasyProviderFactory.java:1039)
> 	org.jboss.resteasy.spi.ResteasyProviderFactory.addMessageBodyWriter(ResteasyProviderFactory.java:519)
> 	org.jboss.resteasy.spi.ResteasyProviderFactory.registerProvider(ResteasyProviderFactory.java:768)
> 	org.jboss.resteasy.plugins.providers.RegisterBuiltin.registerProviders(RegisterBuiltin.java:70)
> 	org.jboss.resteasy.plugins.providers.RegisterBuiltin.register(RegisterBuiltin.java:31)
> 	org.jboss.resteasy.spi.ResteasyDeployment.start(ResteasyDeployment.java:211)
> 	org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.init(ServletContainerDispatcher.java:67)
> 	org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.init(HttpServletDispatcher.java:36)
> 	org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:489)
> 	org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153)
> 	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> 	org.jboss.web.rewrite.RewriteValve.invoke(RewriteValve.java:466)
> 	org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368)
> 	org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:505)
> 	org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:445)
> 	org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930)
> 	java.lang.Thread.run(Thread.java:745)
> 
> *note* _The full stack trace of the root cause is available in the JBoss
> Web/7.0.13.Final logs._
> 
> ------------------------------------------------------------------------
> 
> 
>       JBoss Web/7.0.13.Final
> 
> 
> 
> server.log:
> 
> 2014-10-20 14:07:24,382 ERROR
> [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/api]]
> (ajp--127.0.0.1-8702-6) StandardWrapper.Throwable:
> java.lang.RuntimeException: java.lang.RuntimeException: Unable to
> instantiate MessageBodyWriter
>         at
> org.jboss.resteasy.plugins.providers.RegisterBuiltin.register(RegisterBuiltin.java:35)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         at
> org.jboss.resteasy.spi.ResteasyDeployment.start(ResteasyDeployment.java:211)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         at
> org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.init(ServletContainerDispatcher.java:67)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         at
> org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.init(HttpServletDispatcher.java:36)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         at
> org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1202)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:952)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:188)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:489)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153)
> [jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
>         at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.jboss.web.rewrite.RewriteValve.invoke(RewriteValve.java:466)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:505)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:445)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930)
> [jbossweb-7.0.13.Final.jar:]
>         at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_65]
> Caused by: java.lang.RuntimeException: Unable to instantiate
> MessageBodyWriter
>         at
> org.jboss.resteasy.spi.ResteasyProviderFactory.registerProvider(ResteasyProviderFactory.java:772)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         at
> org.jboss.resteasy.plugins.providers.RegisterBuiltin.registerProviders(RegisterBuiltin.java:70)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         at
> org.jboss.resteasy.plugins.providers.RegisterBuiltin.register(RegisterBuiltin.java:31)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         ... 18 more
> Caused by: java.lang.RuntimeException: Failed to construct public
> org.ovirt.engine.api.pdf.FOPMessageBodyWriter()
>         at
> org.jboss.resteasy.core.ConstructorInjectorImpl.construct(ConstructorInjectorImpl.java:144)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         at
> org.jboss.resteasy.spi.ResteasyProviderFactory.getProviderInstance(ResteasyProviderFactory.java:1039)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         at
> org.jboss.resteasy.spi.ResteasyProviderFactory.addMessageBodyWriter(ResteasyProviderFactory.java:519)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         at
> org.jboss.resteasy.spi.ResteasyProviderFactory.registerProvider(ResteasyProviderFactory.java:768)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         ... 20 more
> Caused by: java.lang.NoClassDefFoundError: org/apache/fop/apps/FopFactory
>         at
> org.ovirt.engine.api.pdf.FOPMessageBodyWriter.<init>(FOPMessageBodyWriter.java:51)
> [restapi-definition.jar:]
>         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method) [rt.jar:1.7.0_65]
>         at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
> [rt.jar:1.7.0_65]
>         at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> [rt.jar:1.7.0_65]
>         at
> java.lang.reflect.Constructor.newInstance(Constructor.java:526)
> [rt.jar:1.7.0_65]
>         at
> org.jboss.resteasy.core.ConstructorInjectorImpl.construct(ConstructorInjectorImpl.java:132)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         ... 23 more
> 
> 2014-10-20 14:07:24,405 ERROR
> [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/api].[org.ovirt.engine.api.restapi.BackendApplication]]
> (ajp--127.0.0.1-8702-6) Allocate exception for servlet
> org.ovirt.engine.api.restapi.BackendApplication:
> java.lang.NoClassDefFoundError: org/apache/fop/apps/FopFactory
>         at
> org.ovirt.engine.api.pdf.FOPMessageBodyWriter.<init>(FOPMessageBodyWriter.java:51)
> [restapi-definition.jar:]
>         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method) [rt.jar:1.7.0_65]
>         at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
> [rt.jar:1.7.0_65]
>         at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> [rt.jar:1.7.0_65]
>         at
> java.lang.reflect.Constructor.newInstance(Constructor.java:526)
> [rt.jar:1.7.0_65]
>         at
> org.jboss.resteasy.core.ConstructorInjectorImpl.construct(ConstructorInjectorImpl.java:132)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         at
> org.jboss.resteasy.spi.ResteasyProviderFactory.getProviderInstance(ResteasyProviderFactory.java:1039)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         at
> org.jboss.resteasy.spi.ResteasyProviderFactory.addMessageBodyWriter(ResteasyProviderFactory.java:519)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         at
> org.jboss.resteasy.spi.ResteasyProviderFactory.registerProvider(ResteasyProviderFactory.java:768)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         at
> org.jboss.resteasy.plugins.providers.RegisterBuiltin.registerProviders(RegisterBuiltin.java:70)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         at
> org.jboss.resteasy.plugins.providers.RegisterBuiltin.register(RegisterBuiltin.java:31)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         at
> org.jboss.resteasy.spi.ResteasyDeployment.start(ResteasyDeployment.java:211)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         at
> org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.init(ServletContainerDispatcher.java:67)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         at
> org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.init(HttpServletDispatcher.java:36)
> [resteasy-jaxrs-2.3.2.Final.jar:]
>         at
> org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1202)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:952)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:188)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:489)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153)
> [jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
>         at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.jboss.web.rewrite.RewriteValve.invoke(RewriteValve.java:466)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:505)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:445)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930)
> [jbossweb-7.0.13.Final.jar:]
>         at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_65]
> 
> 
> My packages are:
> ovirt-engine-3.5.0.1-1.el6.noarch
> ovirt-engine-backend-3.5.0.1-1.el6.noarch
> ovirt-engine-cli-3.5.0.5-1.el6.noarch
> ovirt-engine-dbscripts-3.5.0.1-1.el6.noarch
> ovirt-engine-dwh-3.5.0-1.el6.noarch
> ovirt-engine-dwh-setup-3.5.0-1.el6.noarch
> ovirt-engine-extensions-api-impl-3.5.0.1-1.el6.noarch
> ovirt-engine-jboss-as-7.1.1-1.el6.x86_64
> ovirt-engine-lib-3.5.0.1-1.el6.noarch
> ovirt-engine-reports-3.5.1-0.1.el6.noarch
> ovirt-engine-reports-setup-3.5.1-0.1.el6.noarch
> ovirt-engine-restapi-3.5.0.1-1.el6.noarch
> ovirt-engine-sdk-python-3.5.0.7-1.el6.noarch
> ovirt-engine-setup-3.5.0.1-1.el6.noarch
> ovirt-engine-setup-base-3.5.0.1-1.el6.noarch
> ovirt-engine-setup-plugin-ovirt-engine-3.5.0.1-1.el6.noarch
> ovirt-engine-setup-plugin-ovirt-engine-common-3.5.0.1-1.el6.noarch
> ovirt-engine-setup-plugin-websocket-proxy-3.5.0.1-1.el6.noarch
> ovirt-engine-tools-3.5.0.1-1.el6.noarch
> ovirt-engine-userportal-3.5.0.1-1.el6.noarch
> ovirt-engine-webadmin-portal-3.5.0.1-1.el6.noarch
> ovirt-engine-websocket-proxy-3.5.0.1-1.el6.noarch
> ovirt-host-deploy-1.3.0-1.el6.noarch
> ovirt-host-deploy-java-1.3.0-1.el6.noarch
> ovirt-image-uploader-3.5.0-1.el6.noarch
> ovirt-iso-uploader-3.5.0-1.el6.noarch
> ovirt-log-collector-3.5.0-1.el6.noarch
> ovirt-release34-1.0.3-1.noarch
> ovirt-release35-001-1.noarch
> 
> 
> 
> _______________________________________________
> Users mailing list
> Users at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/users
> 


-- 
Dirección Comercial: C/Jose Bardasano Baos, 9, Edif. Gorbea 3, planta
3ºD, 28016 Madrid, Spain
Inscrita en el Reg. Mercantil de Madrid – C.I.F. B82657941 - Red Hat S.L.



More information about the Users mailing list