How do I fix this error

I was mucking about with the server.xml file in an effort to switch to using Apache as the front end. Along the way I ended up with the following error:

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

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.web.filter.LanguageExtractionFilter.getLocaleManager(LanguageExtractionFilter.java:63)
	com.atlassian.confluence.web.filter.LanguageExtractionFilter.doFilter(LanguageExtractionFilter.java:48)
	com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31)
	com.atlassian.confluence.util.RequestCacheThreadLocalFilter.doFilter(RequestCacheThreadLocalFilter.java:25)
	com.atlassian.confluence.web.filter.DebugFilter.doFilter(DebugFilter.java:44)
	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:65)

root cause

java.lang.NullPointerException
	com.atlassian.spring.container.ContainerManager.getComponent(ContainerManager.java:33)
	com.atlassian.confluence.util.LazyComponentReference$Accessor.get(LazyComponentReference.java:44)
	com.atlassian.util.concurrent.Lazy$Strong.create(Lazy.java:85)
	com.atlassian.util.concurrent.LazyReference$Sync.run(LazyReference.java:321)
	com.atlassian.util.concurrent.LazyReference.getInterruptibly(LazyReference.java:143)
	com.atlassian.util.concurrent.LazyReference.get(LazyReference.java:112)
	com.atlassian.confluence.web.filter.LanguageExtractionFilter.getLocaleManager(LanguageExtractionFilter.java:63)
	com.atlassian.confluence.web.filter.LanguageExtractionFilter.doFilter(LanguageExtractionFilter.java:48)
	com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:31)
	com.atlassian.confluence.util.RequestCacheThreadLocalFilter.doFilter(RequestCacheThreadLocalFilter.java:25)
	com.atlassian.confluence.web.filter.DebugFilter.doFilter(DebugFilter.java:44)
	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:65)

note The full stack trace of the root cause is available in the Apache Tomcat/6.0.35 logs.

I had enabled the mod_proxy for Apache, but have now disabled it.  I also attempted to revert to the server.xml file that was working, but this has not helped.
 
Here is the contents of that file:
 
<Server port="8000" shutdown="SHUTDOWN" debug="0">
    <Service name="Tomcat-Standalone">
        <Connector className="org.apache.coyote.tomcat4.CoyoteConnector" port="8090" minProcessors="5"
                   maxProcessors="75"
                   enableLookups="false" redirectPort="8443" acceptCount="10" debug="0" connectionTimeout="20000"
                   useURIValidationHack="false" URIEncoding="UTF-8"/>

        <Engine name="Standalone" defaultHost="localhost" debug="0">

            <Host name="localhost" debug="0" appBase="webapps" unpackWARs="true" autoDeploy="false">

                <Context path="" docBase="../confluence" debug="0" reloadable="true" useHttpOnly="true">
                    <!-- Logger is deprecated in Tomcat 5.5. Logging configuration for Confluence is specified in confluence/WEB-INF/classes/log4j.properties$
                    <Manager pathname="" />
                </Context>
            </Host>

        </Engine>

        <!--
            To run Confluence via HTTPS:
             * Uncomment the Connector below
             * Execute:
                 %JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA (Windows)
                 $JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA  (Unix)
               with a password value of "changeit" for both the certificate and the keystore itself.
             * Restart and visit https://localhost:8443/

             For more info, see http://confluence.atlassian.com/display/DOC/Adding+SSL+for+Secure+Logins+and+Page+Security
        -->

        <Connector port="8443" maxHttpHeaderSize="8192"
                   maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
                   enableLookups="false" disableUploadTimeout="true"
                   acceptCount="100" scheme="https" secure="true"
                   clientAuth="false" sslProtocol="TLS" SSLEnabled="true"
                   URIEncoding="UTF-8" keystorePass="Wt2LLxaZBwyizMtnCiW6"
                   keystoreFile = "/opt/atlassian/confluence/jre/lib/security/.keystore"
                   
                />

    </Service>
</Server>
I had also changed the base URL, but I was able to manually change that back in the bandana table, but no improvement.
I'm assuming that there is still something broken in my server.xml, but am at a total loss.

4 answers

1 accepted

This widget could not be displayed.
After much work with the Atlassian team (mostly on their part) and Hercules, we determined that the Felix folder in osgi-plugins-cache had taken on the wrong permissions. I suspect that this occurred when I inadvertently ran startup as root, instead of start-confluence as the confluence user. It then created a cache file with the wrong owner. Deleting the folder fixed the problem.

Exact same problem! It happened when I was trying to move connector port to 80. I think current documentation doesn't talk about moving to port 80 from 8090, and issues like it's not recommended to directly use port 80 because of security concerns.

Your comment is unrelated to that specific answer

This widget could not be displayed.

I encountered this error when migrating from one database server to another. The issue turned out to be that the new database server didn't allow access from the confluence server.

This widget could not be displayed.
Peter Koczan Atlassian Team Jun 16, 2013

Hi,

If you have changed nothing else, I'd suspect this to be a problem of database connections, however more information could be found in <CONFLUENCE-HOME>/logs/atlassian-confluence.log

The above is a general error, that could mean corrupted plugin cache, database problems, indexing errors, etc.

Please let me know what you can find in the mentioned logfile. I also encourage you to open a support ticket at http://support.atlassian.com where we can assist you.

Kind regards,

Peter

I'm not entirely sure what I'm looking for but here is an excerpt from that log file that might be of use?

2013-06-17 17:34:56,111 ERROR [http-8090-2] [ContainerBase.[Standalone].[localhost].[/]] log Unhandled exception occurred whilst decorating page

java.lang.NullPointerException

at com.atlassian.spring.container.ContainerManager.getComponent(ContainerManager.java:33)

at com.atlassian.confluence.setup.sitemesh.PluginDecoratorMapper.getPluginAccessor(PluginDecoratorMapper.java:74)

at com.atlassian.confluence.setup.sitemesh.PluginDecoratorMapper.getDecorator(PluginDecoratorMapper.java:23)

at com.opensymphony.module.sitemesh.mapper.AbstractDecoratorMapper.getDecorator(AbstractDecoratorMapper.java:45)

at com.opensymphony.module.sitemesh.mapper.InlineDecoratorMapper.getDecorator(InlineDecoratorMapper.java:41)

at com.atlassian.confluence.util.profiling.ConfluenceDecoratorSelector.selectDecorator(ConfluenceDecoratorSelector.java:59)

at com.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:83)

at com.atlassian.confluence.util.profiling.ProfilingPageFilter.doFilter(ProfilingPageFilter.java:44)

In the meantime, I'll open up a ticket.
This widget could not be displayed.

I have encountered this problem and it same with you the log expression.

Following is my resolution:

Reason: The mysql database access password is not consistent with confluence.cfg.xml

Resolution: Set correct password in confluence.cfg.xml

<confluence-configuration>

  <setupStep>complete</setupStep>

  <setupType>custom</setupType>

  <buildNumber>4733</buildNumber>

  <properties>

    <property name="admin.ui.allow.daily.backup.custom.location">false</property>

    <property name="admin.ui.allow.manual.backup.download">false</property>

    <property name="admin.ui.allow.site.support.email">false</property>

    <property name="attachments.dir">${confluenceHome}/attachments</property>

    <property name="confluence.license.hash">MopmPeeuwnrLpiICOoqtibAVQPRFCjeKrMbGUakWQGduPrtmj2K66F013DqTKrkAQo&gt;1n7v2L061T596sIDUfKAIFm3aDG</property>

    <property name="confluence.license.message">POnRpUFsfTvcmQklJRClltbTfDBqtUmQIEHFgbOKiGQKFatfmKgljkcIHPIntnonRNhIquCRhenaLpxokLIcbecwEExMgpbAiQssLvmaeNuQlSNPPGkQDpqtdIUcUERPVsItlBqlehemWgpuOOPbcXBkJEcvHDfaxCewmuQPqvTPFKKqfaQTIwinWhFBxRfQvisiKxEJcMUnrvrjmGSuAOgJWhotQwoaJAgSeCqlpsVclsftvPSaKOTiuTtUKHUkxlUENQMaRcAXDmCiBCkFALJvqdvtpRBHtLQaRXIpoJjirJeArDECAFuSjGHF3mG7VxfQuSb08sa9Cg4fi2Mjn3RsfAIMY&lt;zruNZZTzlNVTTlr&lt;PKEJS4BeQ61EQM7pW6vOE8pJzcPlFg0T1g6J1CzSOmMI0b64FeNEeFcPdaCGVnYpLu1rWTzy0wFPvcSzFCmBnkaYIFIA327R16PM8D2DNyzAbXYKIFjqNpSnPDvxBAq4UaTeXLPNPQBaL5992I6JWs4c6h0KzxOw7Dhe&lt;UWU&lt;oCPEnJcuTMvw3rvGQQ96MRP8L9mBIEQmZOYdhTnbBdOJzYj9kfJWVR&gt;jByMzltUCtfiyvbtuY9t</property>

    <property name="confluence.setup.server.id">BXIV-9H5M-Y9TO-XFU1</property>

    <property name="confluence.webapp.context.path"></property>

    <property name="hibernate.c3p0.acquire_increment">1</property>

    <property name="hibernate.c3p0.idle_test_period">100</property>

    <property name="hibernate.c3p0.max_size">30</property>

    <property name="hibernate.c3p0.max_statements">0</property>

    <property name="hibernate.c3p0.min_size">0</property>

    <property name="hibernate.c3p0.timeout">30</property>

    <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>

    <property name="hibernate.connection.isolation">2</property>

    <property name="hibernate.connection.password">123</property>

    <property name="hibernate.connection.url">jdbc:mysql://localhost/confluence?sessionVariables=storage_engine%3DInnoDB</property>

    <property name="hibernate.connection.username">root</property>

    <property name="hibernate.database.lower_non_ascii_supported">true</property>

    <property name="hibernate.dialect">com.atlassian.hibernate.dialect.MySQLDialect</property>

    <property name="hibernate.setup">true</property>

    <property name="lucene.index.dir">${confluenceHome}/index</property>

    <property name="webwork.multipart.saveDir">${confluenceHome}/temp</property>

  </properties>

</confluence-configuration>

Suggest an answer

Log in or Sign up to answer
Community showcase
Posted Monday in Confluence

Why start from scratch? Introducing four new templates for Confluence Cloud

Hi my Community friends!  For those who don't know me, I'm a product marketer on the Confluence Cloud team - nice to meet you! For those of you who do, you know that I've been all up in your Co...

407 views 4 6
Join discussion

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you