-
Tomcat 8.5.3 und jt400 (Version 9.1)
Hallo,
ich habe seit vielen Jahren einen Tomcat-Server (Version 7.0) mit Standard ConnectionPooling (DBCP) laufen. Das ConnectionPooling hat mit dem neuesten jt400-Treiber (jtopen Version 9.1) auch problemlos funktioniert.
Jetzt wollte ich auf einen Tomcat Version 8.5.3 umstellen. Ansonsten ist die Konfiguration gleich geblieben. Dabei habe ich festgestellt, dass hier nun DBCP2 verwendet wird, was angeblich nur mit einem JDBC Version 4 Treiber funktioniert. Laut utilities.AboutToolbox des jt400 handelt es sich beim neuesten JDBC-Treiber aber um einen Version 3 Treiber.
Auf jeden Fall erhalte ich beim Starten des Tomcat folgenden Fehler:
Code:
org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/DataQueue_Server]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:158)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:726)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:702)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1107)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1841)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.AbstractMethodError: com.ibm.as400.access.AS400JDBCConnection.isValid(I)Z
at org.apache.tomcat.dbcp.dbcp2.DelegatingConnection.isValid(DelegatingConnection.java:925)
at org.apache.tomcat.dbcp.dbcp2.PoolableConnection.validate(PoolableConnection.java:282)
at org.apache.tomcat.dbcp.dbcp2.PoolableConnectionFactory.validateConnection(PoolableConnectionFactory.java:359)
at org.apache.tomcat.dbcp.dbcp2.BasicDataSource.validateConnectionFactory(BasicDataSource.java:2316)
at org.apache.tomcat.dbcp.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:2299)
at org.apache.tomcat.dbcp.dbcp2.BasicDataSource.createDataSource(BasicDataSource.java:2043)
at org.apache.tomcat.dbcp.dbcp2.BasicDataSource.getLogWriter(BasicDataSource.java:1598)
at org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory.createDataSource(BasicDataSourceFactory.java:596)
at org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory.getObjectInstance(BasicDataSourceFactory.java:275)
at org.apache.naming.factory.FactoryBase.getObjectInstance(FactoryBase.java:94)
at javax.naming.spi.NamingManager.getObjectInstance(Unknown Source)
at org.apache.naming.NamingContext.lookup(NamingContext.java:840)
at org.apache.naming.NamingContext.lookup(NamingContext.java:160)
at org.apache.naming.NamingContext.lookup(NamingContext.java:828)
at org.apache.naming.NamingContext.lookup(NamingContext.java:174)
at org.apache.catalina.core.NamingContextListener.addResource(NamingContextListener.java:1089)
at org.apache.catalina.core.NamingContextListener.createNamingContext(NamingContextListener.java:659)
at org.apache.catalina.core.NamingContextListener.lifecycleEvent(NamingContextListener.java:252)
at org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart(TomcatWebAppBuilder.java:1110)
at org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:133)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:94)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5076)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:152)
... 10 more
Ich vermute jetzt mal ganz stark, dass die Kombination DBCP2 mit jt400 nicht funktioniert.
Hat jemand von Euch auch solche Erfahrungen gemacht? Liege ich mit meiner Vermutung richtig? Wie kann ich mein Problem nun beheben?
Vielen Dank schon mal,
KM
-
Wenn man die Dokumentation liest, dann hast du vollkommen Recht!
Selbst der aktuellste JDBC-Treiber (V7R3) ist ein Typ3-Treiber.
Somit kannst du DBCP2 halt nicht verwenden.
Nun musst du halt klären, ob du im Tomcat auf DBCP zurückgehen kannst.
Wenn nicht musst du DBCP komplett abschalten, was ja nicht unbedingt von Nachteil sein muss, da die ODBC-Jobs der AS/400 sowieso wiederverwendbar sind.
-
Ich hab jetzt herausgefunden wie ich DBCP2 vermeiden kann. Es gibt nämlich im Tomcat eine Alternative zu DBCP:
The JDBC Connection Pool org.apache.tomcat.jdbc.pool is a replacement or an alternative to the Apache Commons DBCP connection pool.
Dazu muss man in der context.xml bei der Resource nur folgendes Attribut hinzufügen:
factory="org.apache.tomcat.jdbc.pool.DataSourceFac tory"
Seltsamerweise erhalte ich dann zwar beim Starten des Tomcat den Fehler "WARNING - unusedProperty factory". Aber trotzdem funktioniert's.
Gruß,
KM
Similar Threads
-
By alex.kretschmer in forum NEWSboard Java
Antworten: 3
Letzter Beitrag: 08-07-16, 09:20
-
By BIStwo in forum NEWSboard Server & Hardware Markt
Antworten: 4
Letzter Beitrag: 28-03-03, 08:04
-
By vogeste0 in forum IBM i Hauptforum
Antworten: 5
Letzter Beitrag: 20-02-02, 12:22
-
By Arbi in forum IBM i Hauptforum
Antworten: 6
Letzter Beitrag: 15-10-01, 07:52
-
By Ma-Cell in forum NEWSboard Windows
Antworten: 0
Letzter Beitrag: 17-08-01, 11:43
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks