New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BIMServer1.5.x - Plugin Installation problem - #753

Elsa-E4-user opened this Issue May 7, 2018 · 3 comments


None yet
2 participants

Elsa-E4-user commented May 7, 2018

Tested also with BIMServer1.5.95 (same issue)

When installing plugins the following appear in the setup window [see also attached picture]:

Installing plugins...
Installing bimsurfer...
Plugin bundle already installed org.opensourcebim.bimsurfer
Installing bimviews...
Plugin bundle already installed org.opensourcebim.bimviews
Installing ifcopenshellplugin...
Plugin bundle already installed org.opensourcebim.ifcopenshellplugin
Installing ifcplugins...
Plugin bundle already installed org.opensourcebim.ifcplugins
Installing binaryserializers...
Plugin bundle already installed org.opensourcebim.binaryserializers
Installing bimserverapi...
Plugin bundle already installed org.opensourcebim.bimserverapi
Installing console...
Plugin bundle already installed org.opensourcebim.console
All remote plugins successfully installed

Setup successful, refresh to go to the status page

When refreshing the page no web module is available.

In the WEB-INF folder the following has been created:
with the following folders:
- bimsurfer
- bimviews
- ifcopenshellplugin
- ifcplugins
- binaryserializers
- bimserverapi
- console

each folder has a unique file inside named:
all the files has the same content except for the name [replaced with <<cur_dir_name>> hereafter]:
#NOTE: This is an Aether internal implementation file, its format can be changed without prior notice.
#Mon May 07 16:45:47 CEST 2018
maven-metadata-central.xml.error=Could not transfer metadata org.opensourcebim:<<cur_dir_name>>/maven-metadata.xml from/to central (ht
tp:// Connect to timed out
maven-metadata-given.xml.error=Could not transfer metadata org.opensourcebim:bimserverapi/maven-metadata.xml from/to given (http:
// Connect to timed out
maven-metadata-github.xml.error=Could not transfer metadata org.opensourcebim:<<cur_dir_name>>/maven-metadata.xml from/to github (http
:// Connect to timed out

In the bimserver logfile the only message logged durign the setup is the following:
[AdminInterface.setup] o.b.ServerInfoManager [] Changing server state to RUNNING


Found exception in jetty console stderr/stdout log file:

com.fasterxml.jackson.core.JsonParseException: Unexpected character ('{' (code 123)): was expecting double-quote to start field name
at [Source: (String)"{
"plugins": [{
"maven": {
"defaultrepository": "",
"groupId": "org.opensourcebim",
"artifactId": "binaryserializers"
}, {
"maven": {
"defaultrepository": "",
"groupId": "org.opensourcebim",
"artifactId": "ifcopenshellplugin"
}, {
"maven": {
"defaultrepository": "",
"groupId": "org.opensourcebim",
"artifactId": "javamodel"[truncated 3230 chars]; line: 133, column: 7]
at com.fasterxml.jackson.core.JsonParser._constructError(
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportUnexpectedChar(
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddName(
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextFieldName(
at com.fasterxml.jackson.databind.deser.std.BaseNodeDeserializer.deserializeObject(
at com.fasterxml.jackson.databind.deser.std.BaseNodeDeserializer.deserializeArray(
at com.fasterxml.jackson.databind.deser.std.BaseNodeDeserializer.deserializeObject(
at com.fasterxml.jackson.databind.deser.std.JsonNodeDeserializer$ObjectDeserializer.deserialize(
at com.fasterxml.jackson.databind.deser.std.JsonNodeDeserializer$ObjectDeserializer.deserialize(
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(
at com.fasterxml.jackson.databind.ObjectMapper.readValue(
at org.bimserver.plugins.GitHubPluginRepository.listPluginLocations(
at org.bimserver.database.actions.GetInstalledPluginBundles.execute(
at org.bimserver.database.actions.GetInstalledPluginBundles.execute(
at org.bimserver.database.DatabaseSession.executeAndCommitAction(
at org.bimserver.database.DatabaseSession.executeAndCommitAction(
at org.bimserver.webservices.impl.PluginServiceImpl.getInstalledPluginBundles(
at org.bimserver.generated.PluginInterfaceReflector1.callMethod(
at org.bimserver.shared.meta.SMethod.invoke(
at org.bimserver.JsonHandler.processSingleRequest(
at org.bimserver.JsonHandler.execute(
at org.bimserver.servlets.JsonApiServlet.service(
at org.bimserver.servlets.RootServlet.service(
at javax.servlet.http.HttpServlet.service(
at org.eclipse.jetty.servlet.ServletHolder.handle(
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(
at org.eclipse.jetty.websocket.server.WebSocketUpgradeFilter.doFilter(
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(
at org.eclipse.jetty.servlet.ServletHandler.doHandle(
at org.eclipse.jetty.server.handler.ScopedHandler.handle(
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(
at org.eclipse.jetty.server.session.SessionHandler.doHandle(
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(
at org.eclipse.jetty.servlet.ServletHandler.doScope(
at org.eclipse.jetty.server.session.SessionHandler.doScope(
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(
at org.eclipse.jetty.server.handler.ContextHandler.doScope(
at org.eclipse.jetty.server.handler.ScopedHandler.handle(
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(
at org.eclipse.jetty.server.handler.HandlerCollection.handle(
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(
at org.eclipse.jetty.server.Server.handle(
at org.eclipse.jetty.server.HttpChannel.handle(
at org.eclipse.jetty.server.HttpConnection.onFillable(
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.produce(
at org.eclipse.jetty.util.thread.ReservedThreadExecutor$
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(
at org.eclipse.jetty.util.thread.QueuedThreadPool$


This comment has been minimized.


rubendel commented May 14, 2018

I think there are two problems. The message "Connect to timed out" indicates that either maven central was out for a while, or some firewall is blocking access to that address.

The other problem is that the JSON file at was invalid, that's fixed now, so the same releases should work (could take a while for github cache to update btw).


This comment has been minimized.

Elsa-E4-user commented May 16, 2018

Dear Ruben, thank for your answer, as by your expectation fixing the syntax error doesn't solve the connection problem.
Following some Questions and further info for analysis.

  • To check our service proxy behavior I tried a "wget" locally and it seems that currently the URL is redirect. could this be the cause of the error?
  • Is it possible to have more diagnostic in the plugins installation?
  • Do you have a list of used repo domain to be able to ask to our proxy service to open access to?
  • Manual installation bring to a situation similar to the one detected in #745, is it possible to fix manually the plugins installation?
    I traced the network connection and I'm going to attach the trace and all the other information to this comment. (there are some SIGSEGV in the trace but I couldn't find exception in the logs)

AddInfoStracing-1.5.100.txt gives detailed info on env and test steps.
JETTY-20616 is the network tracing during the installation




This comment has been minimized.


rubendel commented Oct 12, 2018

Sorry for the late reply.

The url does not redirect here, so that's probably indeed your annoying firewall/proxy, ask your sysadmin to fix this, there is absolutely no reason to redirect every single http request.

Over time more diagnostics will probably be added, supporting proxies however will probably never be something I enjoy spending time on.

I have no such list, basically every plugin can use their own URL.

@rubendel rubendel closed this Oct 12, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment