Hi,

I'm running Tomcat 6.0.20 in a cluster on 3 nodes. If I restart one I get this 
exception:


Caused by: java.io.NotSerializableException: 
org.apache.catalina.users.MemoryUser
  at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1156)
  at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
  at java.util.LinkedList.writeObject(LinkedList.java:943)
  at sun.reflect.GeneratedMethodAccessor127.invoke(Unknown Source)
  at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  at java.lang.reflect.Method.invoke(Method.java:597)
  at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945)
  at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461)
  at 
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
<Server port="8005" shutdown="SHUTDOWN">

<GlobalNamingResources>
  <!-- Used by Manager webapp -->
  <Resource name="UserDatabase" auth="Container"
            type="org.apache.catalina.UserDatabase"
     description="User database that can be updated and saved"
         factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
        pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>

<Service name="Catalina">
  <Connector port="8080" maxHttpHeaderSize="8192"
             maxThreads="300" minSpareThreads="25" maxSpareThreads="75"
             enableLookups="false" redirectPort="8443" acceptCount="1024"
             connectionTimeout="20000" disableUploadTimeout="true"
             compression="on"
             
compressableMimeTypes="text/html,text/xml,text/plain,text/javascript,text/css"/>

  <Connector port="8443" debug="0" scheme="https" secure="true" 
SSLEnabled="true"
             clientAuth="false" sslProtocol="TLS"
             keystoreFile="/etc/tomcat6/STAR_example.com.p12"
             keystoreType="PKCS12"
             keystorePass="*****" />

  <Engine name="Catalina" defaultHost="www.example.com">
    <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
           resourceName="UserDatabase" />
              <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster">
                      <Channel 
className="org.apache.catalina.tribes.group.GroupChannel">
                              <Membership 
className="org.apache.catalina.tribes.membership.McastService" port="45525" />
                      </Channel>
              </Cluster>

      <!-- Zorg dat de appBase regel direct na de 'Host name' regel staat -->
      <Host name="www.example.com"
              appBase="/data/webapps/crm-VERSIE_2_5/deployed"
              unpackWARs="true" autoDeploy="false" reloadable="false"
              usePooling="false"
              xmlValidation="false" xmlNamespaceAware="true">
      <Alias>www2.example.com</Alias>
      </Host>
  </Engine>

</Service>
</Server>

What can I do to make the MemoryUser  serializable and why is it trying to sync 
it with other nodes?

Ronald.

Reply via email to