Product: TIBCO Spotfire®
TIBCO Spotfire Server URL fails to load resulting in "An internal error has occurred. Go to start page" error
The TIBCO Spotfire Server URL may fail to load in the browser, showing a "An internal error has occurred. Go to start page" error as below screenshot along with the following warning in the server.log even after successful server startup message in catalina log ( from <TSS installation folder>\tomcat\logs).
This behavior is regardless of authentication type on Spotfire server.
server.log ( From <TSS installation folder>\tomcat\logs) captures warnings like “HTTP method GET is not allowed” or “HTTP method GET is not allowed” :
Example logs for HTTP method POST:
WARN 2020-02-28T16:49:05,493-0800 [unknown, #-, #261] server.security.HttpMethodsFilter: HTTP method POST is not allowed for URI /spotfire/nodemanager/trust/ocsp
WARN 2020-02-28T16:49:06,502-0800 [unknown, #1, #42] server.security.HttpMethodsFilter: HTTP method POST is not allowed for URI /spotfire/nodemanager/command
WARN 2020-02-28T16:49:43,540-0800 [unknown, #11, #336] server.security.HttpMethodsFilter: HTTP method POST is not allowed for URI /spotfire/nodemanager/messages
WARN 2020-02-28T16:49:06,502-0800 [] server.http.HttpCallable: Failed to send ServiceConfigCommand request to 'https://tss-kerberos1.boston.local:9403/spotfire/nodemanager/command' : 405
org.springframework.web.client.HttpClientErrorException$MethodNotAllowed: 405
at org.springframework.web.client.HttpClientErrorException.create(HttpClientErrorException.java:87) ~[spring-web.jar:5.1.5.RELEASE]
at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:122) ~[spring-web.jar:5.1.5.RELEASE]
at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:102) ~[spring-web.jar:5.1.5.RELEASE]
at org.springframework.web.client.ResponseErrorHandler.handleError(ResponseErrorHandler.java:63) ~[spring-web.jar:5.1.5.RELEASE]
at org.springframework.web.client.RestTemplate.handleResponse(RestTemplate.java:778) ~[spring-web.jar:5.1.5.RELEASE]
at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:736) ~[spring-web.jar:5.1.5.RELEASE]
at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:670) ~[spring-web.jar:5.1.5.RELEASE]
at org.springframework.web.client.RestTemplate.postForEntity(RestTemplate.java:445) ~[spring-web.jar:5.1.5.RELEASE]
at com.spotfire.server.http.HttpCallable.call(HttpCallable.java:108) ~[spotfire-node-manager.jar:?]
at com.spotfire.server.http.HttpCallable.call(HttpCallable.java:36) ~[spotfire-node-manager.jar:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:1.8.0_201]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) ~[?:1.8.0_201]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) ~[?:1.8.0_201]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:1.8.0_201]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:1.8.0_201]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_201]
Example logs for HTTP method GET:
WARN 2020-02-28T16:52:10,774-0800 [unknown, #9, #256] server.security.HttpMethodsFilter: HTTP method GET is not allowed for URI /spotfire/
WARN 2020-02-28T16:52:10,821-0800 [unknown, #9, #257] server.security.HttpMethodsFilter: HTTP method GET is not allowed for URI /spotfire/resources/min/app-lib.css
WARN 2020-02-28T16:52:10,821-0800 [unknown, #9, #258] server.security.HttpMethodsFilter: HTTP method GET is not allowed for URI /spotfire/resources/min/third-party.js
WARN 2020-02-28T16:52:10,821-0800 [unknown, #9, #259] server.security.HttpMethodsFilter: HTTP method GET is not allowed for URI /spotfire/resources/min/app.css
WARN 2020-02-28T16:52:10,821-0800 [unknown, #9, #260] server.security.HttpMethodsFilter: HTTP method GET is not allowed for URI /spotfire/resources/min/app.js
This can happen if the default HTTP methods are not present in Spotfire Server configuration under <allowed-http-methods> </allowed-http-methods> as below:
<allowed-http-methods> <method-name>DELETE</method-name> <method-name>GET</method-name> <method-name>HEAD</method-name> <method-name>PUT</method-name> </allowed-http-methods>This behavior is caused if current server configuration (configuration.xml) is missing GET or POST http methods.
To resolve follow below steps :
- Export currently used configuration from the Spotfire database. To export, either login to uiconfig.bat file (uiconfig.sh on Linux) which is located in the <Installation dir>\tomcat\spotfire-bin directory OR execute CLI command export-config
- Open exported server configuration from given location in text or xml editor and search for <allowed-http-methods> tag. Ideally it should have below mentioned five http methods :
<allowed-http-methods> <method-name>DELETE</method-name> <method-name>GET</method-name> <method-name>HEAD</method-name> <method-name>POST</method-name> <method-name>PUT</method-name> </allowed-http-methods>
- Add any missing http methods in your configuration manually
- Save the changes and import the configuration back to the database, either using uiconfig tool or use import-config command
- Restart the Spotfire server
- After successful server startup message in catalina logs, try opening the Spotfire server url in browser
Comments
0 comments
Article is closed for comments.