com.atlassian.util.concurrent.LazyReference $ InitializationException:java.lang.NullPointerException
com.atlassian.util.concurrent.LazyReference.getInterruptibly(LazyReference.java:149)
com.atlassian.util.concurrent.LazyReference.get(LazyReference.java:112)
com.atlassian.confluence.setup.ConfluenceEncodingFilter.getGlobalSettings(ConfluenceEncodingFilter.java:45)
com.atlassian.confluence.setup.ConfluenceEncodingFilter.getEncodingInternal(ConfluenceEncodingFilter.java:35)
com.atlassian.confluence.setup.ConfluenceEncodingFilter.getEncoding(ConfluenceEncodingFilter.java:27)
com.atlassian.core.filters.encoding.AbstractEncodingFilter.doFilter(AbstractEncodingFilter.java:38)
com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31)
com.atlassian.core.filters.HeaderSanitisingFilter.doFilter(HeaderSanitisingFilter.java:44)
com.atlassian.confluence.servlet.FourOhFourErrorLoggingFilter.doFilter(FourOhFourErrorLoggingFilter.java:65java
根據官方的解決方案mysql
正如在咱們的支持故障單案例中解決的那樣,錯誤是數據庫憑據已過時。所以,對於可能須要查看此答案線程的其餘用戶,這是來自Atlassian的響應:sql一般,日誌和屏幕中顯示的此錯誤是由Confluence沒法鏈接到數據庫引發的:confluence.cfg.xml文件中設置的憑據無效。另外一種多是數據庫密碼已過時,而且須要重置而且服務器須要從新啓動。另外一個是該表確實不存在 - 若是升級失敗。數據庫
因此,基本上,咱們須要你作的是:安全
檢查<CONFLUENCE-HOME>是否不可寫(檢查目錄和子目錄的權限)
Confluence數據庫不可用 - 檢查<CONFLUENCE-HOME> /confluence.cfg.xml中的鏈接參數,並驗證數據庫用戶是否能夠訪問全部匯合表以及密碼是否相同。
若是這不起做用,請附上最新的atlassian-confluence.log文件,該文件位於<Confluence Home / logs>目錄中,以便咱們能夠仔細檢查是否存在可能的不一樣根本緣由。服務器
然而這並無什麼卵用,我修改了文件夾權限777依舊報錯;我還安裝了mysql客戶端測試是鏈接正常的,這就奇怪了。app
並且官方的問題支持方案所關係的版本可能和我安裝的不同,confluence.cfg.xml根本不在<CONFLUENCE-HOME>(默認/opt/atlassian/confluence/),而是默認在/var/atlassian/application-data/confluence,致使我還錯覺得配置文件丟失了。ide
爲了排除問題,我刪光了日誌而且重啓了一次應用,發現catalina日誌顯示多條這樣的內容測試
Mon May 13 15:07:07 CST 2019 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.ui
通過一番百度發現是不行的,因而我轉向了bing,它把我帶去正確的地方。
經過在jdbc增長參數解決了問題;參數格式必須這樣寫
jdbc:mysql://localhost:3306/Peoples?autoReconnect=true&useSSL=false
注意必須使用&而不是&符號,useSSL=false是關鍵
因此,這是一個由於mysql服務器端安全配置升級,從而致使客戶端鏈接問題?