Announcement

Collapse
No announcement yet.

Upgrading Tomcat 5 using Java 6 to Tomcat 9 using Java 8

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Upgrading Tomcat 5 using Java 6 to Tomcat 9 using Java 8

    I soll für 2 Anwendungen, welche auf einem Server auf dem Tomat 5 unter Java 6 laufen die Java Version auf 8 und die Tomcat Version auf 9 erhöhen. Auf dem Tomcat 5 laufen die beiden Anwendungen und ein catalina-balancer. Was der Catalina balancer genau macht, weiß ich nicht. Die Anwendungen sind nicht von mir und die Entwickler sind nicht mehr verfügbar. Die Anwendungen sind mit Struts 1 entwickelt worden und verwenden j_security_check für die Authentifizierung. Im Toimcat ist eine Realm Einstellung drin. Die Anwendungen starten. Jedoch funktioniert die Anmeldung nicht. Wenn ich auf login drücke, wird die Fehlerseite angezeigt. Im logs Ordner beim Tomcat sehe ich nur, dass der Balancer einen Fehler geworfen hat in der Datei localhost...log:

    29-Oct-2021 13:13:02.241 SEVERE [main] org.apache.catalina.core.StandardContext.filterSta rt Exception starting filter [BalancerFilter] java.lang.NoSuchMethodError: org.apache.tomcat.util.digester.Digester.addObject Create(Ljava/lang/String;Ljava/lang/ClassV
    Die Digester Klasse im Tomcat 9 hat eine andere Methodensignatur als in Tomcat 5. Einen neuen Balancer gibt es nicht mehr.

    In der server.xml steht unter anderem:

    <Listener className="org.apache.catalina.core.AprLifecycleLi stener" /> <!--<Listener className="org.apache.catalina.mbeans.ServerLifecy cleListener" />--> <Listener className="org.apache.catalina.mbeans.GlobalResour cesLifecycleListener" /> <Listener className="org.apache.catalina.storeconfig.StoreCo nfigLifecycleListener"/> <!-- Global JNDI resources --> <GlobalNamingResources> <!-- Test entry for demonstration purposes --> <Environment name="simpleValue" type="java.lang.Integer" value="30"/> <!-- Editable user database that can also be used by UserDatabaseRealm to authenticate users --> <Resource name="UserDatabase" auth="Container" type="org.apache.catalina.UserDatabase" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatab aseFactory" pathname="conf/tomcat-users.xml" /> <Resource auth="Container" driverClassName="org.gjt.mm.mysql.Driver" factory="org.apache.tomcat.dbcp.dbcp2.BasicDataSou rceFactory" logAbandoned="true" maxActive="20" maxIdle="2" maxWait="10000" name=xxxxxxx password=xxxxxxx removeAbandoned="true" removeAbandonedTimeout="60" testOnBorrow="true" testOnIdle="true" type="javax.sql.DataSource" url="jdbc:mysql://localhost:3306/xxxxxx?autoReconnect=true" username="xxxxxx" validationQuery="SELECT 1" /> </GlobalNamingResources> <Realm className="org.apache.catalina.realm.UserDatabaseR ealm" resourceName="UserDatabase"/> In Tomcat-users.xml steht:
    <tomcat-users xmlns="http://tomcat.apache.org/xml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd" version="1.0"> <role rolename="manager"/> <role rolename="admin"/> <!-- <user username="admin" password="admin" roles="manager,admin"/> --> <user username="admin" password="admin" roles="manager, admin, admin-gui,manager-gui" /> die logon.jsp Datei, welche die Loginseite enthält, enthält folgenden Text:
    <tilesut name="content" type="string"> <form action="j_security_check" method="POST"> ... <td colspan="2" class="loginValue" style="text-align:right;"> <input class="loginDefault" type="submit" value="<bean:message key="logon.submit" />

    In der struts-config-tool.xml Datei steht:

    <login-config> <auth-method>FORM</auth-method> <realm-name>NW</realm-name> <form-login-config> <form-login-page>/tool/logon.jsp</form-login-page> <form-error-page>/tool/logonError.jsp</form-error-page> </form-login-config> </login-config> Weiß jemand, was ich machen muss, damit die Anwendung auf dem Tomcat 9 Server läuft? Viele Grüße Irfan
Working...
X