Tomcat, Problem mit context.xml

Status
Nicht offen für weitere Antworten.

Niki

Top Contributor
Hallo Tomcat Experten!

Ich habe folgendes Problem. Ich liefer an unseren Betrieb ein war-File aus. In diesem war-File befindet sich unter META-INF eine context.xml mit der DataSource für die Datenbank. In der DataSource-Definition befindet sich nur das Template, d.h. es beinhaltet nur driver und url nicht jedoch user und pwd. Der Betrieb füllt dann diese Attribute noch aus bzw. überspielt die neue context.xml mit der richtigen.
Wenn das war-File deployt wird, wird anscheinend die context.xml ins conf/Catalina/localhost mit Dateinamen [webapp].xml kopiert. Diese xml-Datei dürfte jedoch vor der context.xml der WebApp gelesen werden und beinhaltet daher die leeren user/pwd Attribute. Der Fehler wird bereinigt wenn das war-File und diese [webapp].xml gelöscht werden. Das ist natürlich keine optimale Lösung, was könnte man da besser machen? Eventuell die context.xml in die server.xml einbinden, oder die context.xml gar nicht mehr ausliefern?

Danke für Tipps!
 
M

maki

Gast
Warum nicht auf Containermanaged ConnectionPool/DS umsteigen?

So würde der Kunde seinen TC konfigurieren und damit die Datasource nebst Usernnamen und Passwort, die Anwendung (in der context.xml) steht dann nur noch der JNDI Name der DS, welcher immer gleich bleiben kann.
 

Niki

Top Contributor
Danke für die Antwort. Wo kann man das beim TC konfigurieren? In der server.xml? Muss ich dann überhaupt noch die context.xml ausliefern wenn in der server.xml eh schon die DataSource konfiguriert ist? Oder schaut das anders aus?
 
M

maki

Gast
In der Server XML wird die DS konfiguriert (Conatiner Managed), in der Context.xml steht dann nur drinnen, dass diese DS von der Anwendung genutzt wird.

Glaube mich erinnern zu können das da was mit "resource links" oder ähnlich war... werde mal schnell suchen.

Nachtrag 1:
Vielleicht hilft dir das:http://opensource.atlassian.com/confluence/oss/pages/viewpage.action?pageId=12582997

Geht zwar um iBatis und Tomcat JNDI DS, aber ignoriere die iBatis config, nimm die server.xml Config + context.xml config, dein Code muss einen JNDI Aufruf machen um die DS zu bekommen.

Nachtrag 2:
Die orig. TC Doku dazu:
http://tomcat.apache.org/tomcat-5.5-doc/jndi-datasource-examples-howto.html
 

Niki

Top Contributor
Die DataSource hol ich mir eh schon über JNDI:
Code:
		Context initContext = new InitialContext();
		DataSource dataSource = (DataSource) initContext
				.lookup("java:comp/env/jdbc/MyDataSource");
		Connection con = dataSource.getConnection();
		con.setAutoCommit(false);

passt so, oder?

Ich werd das mal so ausprobieren wie du gesagt hast. Das wäre sicher eine bessere Lösung.
 
M

maki

Gast
Sieht gut aus, allerdings glaube ich dass es da Unerschiede gab, ob man java:comp/env/jdbc/MyDataSource oder jdbc/MyDataSource verwendete, am besten beides mal probieren wenn es die JNDI DS nicht findet.

Kann dir auch lambda Probe empfehlen, da kann man die DS gleich ausprobieren, und vieles vieles mehr ;)
 

Niki

Top Contributor
Nach drei Wochen bin ich doch einmal endlich dazu gekommen das ganze nochmal anzuschauen. Es ist tatsächlich sehr einfach und zwar muss man in der conf/server.xml unter dem Tag GlobalNamingResources seine Resourcen definieren und in der META-INF/context.xml der WebApp einfach darauf verweisen:
Code:
<ResourceLink name="jdbc/MyDSName" global="jdbc/MyDSName" type="javax.sql.DataSource"/>

Das ist alles. In der WebApp ist sonst nichts zu ändern. Der Unterschied beim JDNI-Namen entsteht glaub ich dann, wenn man die DataSource direkt holt, oder zuerst den Context, beides ist möglich:
Code:
Context initContext = new InitialContext();
DataSource dataSource = (DataSource) initContext
				.lookup("java:comp/env/jdbc/MyJDBCDataSource");
oder
Code:
Context initContext = new InitialContext();
		
		Context context = (Context)initContext.lookup("java:comp/env");
		DataSource dataSource = (DataSource)context.lookup("jdbc/MyJDBCDataSource");

Ich hab beides getestet und beides funktioniert
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Tomcat V-Host Context Problem Server einrichten und konfigurieren 3
R Problem mit JNDI bei geändertem Context Root Path (Tomcat) Server einrichten und konfigurieren 1
E Tomcat Eclipse Problem Server einrichten und konfigurieren 0
T Apache Tomcat - mehere Instanzen - Session Problem Server einrichten und konfigurieren 7
ruutaiokwu jasper compiler problem in tomcat!!! Server einrichten und konfigurieren 3
M Login-Problem Tomcat Server einrichten und konfigurieren 5
V Eclipse+Tomcat: Problem beim Importieren von Jars Server einrichten und konfigurieren 4
P Tomcat 5.x Manager Problem Server einrichten und konfigurieren 3
S Allgemeine jsp Fragen / Tomcat Problem Server einrichten und konfigurieren 2
K Tomcat Servlet Problem Server einrichten und konfigurieren 5
G refresh problem - tomcat 4.1 Server einrichten und konfigurieren 4
KonradN Apache Tomcat Schwachstelle (Versionen 8, 9, 10 und 11) Server einrichten und konfigurieren 0
S Tomcat 9 mit Datasource Realm auf eine H2 Datenbank Server einrichten und konfigurieren 3
D Tomcat context.xml wo ablegen im Projekt? Server einrichten und konfigurieren 3
H Apache Tomcat Installation/Konfiguration arbeitet nicht einwandfrei Server einrichten und konfigurieren 5
S Tomcat Server nicht erreichbar Server einrichten und konfigurieren 21
pkm Lassen sich mit Tomcat bestimmte URL-Patterns verbieten? Server einrichten und konfigurieren 0
B Tomcat Manager: umbebannt, zurückbenannt, jetzt nur noch 403-Fehler Server einrichten und konfigurieren 8
T Tomcat 8 unter STS Server einrichten und konfigurieren 0
K Tomcat - Java-Version? Server einrichten und konfigurieren 5
A Tomcat und JNI Library Server einrichten und konfigurieren 0
K Tomcat: Host Manager -> 404 Server einrichten und konfigurieren 1
K Tomcat: maximale Anmeldeversuche einschränken (funktioniert nicht) Server einrichten und konfigurieren 1
F Tomcat startet Anwendung nicht im Windows-Service-Modus Server einrichten und konfigurieren 1
C [Nagios] Tomcat-Logfile überwachen Server einrichten und konfigurieren 1
T Tomcat 7 JSTL Server einrichten und konfigurieren 0
S Tomcat 6.0.20 sessionCookiePath in context.xml wird ignoriert Server einrichten und konfigurieren 1
I Tomcat Host mit JDBC-Resource Server einrichten und konfigurieren 0
K Tomcat als Service, falsche Farbe Server einrichten und konfigurieren 0
M Tomcat Proxy - erkennt Tomcat httpd.conf Server einrichten und konfigurieren 0
HarleyDavidson Tomcat Instanznamen ändern Server einrichten und konfigurieren 1
R Tomcat und Zertifikat-Import Server einrichten und konfigurieren 0
M Tomcat - Deploy war - Verbindungsfehler Server einrichten und konfigurieren 4
FINF_AW_Alex WebLogic, Glassfish, Tomcat.... Server einrichten und konfigurieren 3
D Daten auf Apache Tomcat Server ablegen, möglich ? Server einrichten und konfigurieren 1
C DataSource mit Tomcat einrichten Server einrichten und konfigurieren 1
T tomcat blockiert Server einrichten und konfigurieren 0
R Verbindung zwischen Apache und Tomcat über mod_jk funktioniert nur sporadisch Server einrichten und konfigurieren 0
MadMG Tomcat via Apache Proxy + Websockets Server einrichten und konfigurieren 4
A Tomcat bekommt keine Schreibrechte für webapps Server einrichten und konfigurieren 6
Q Tomcat-Cluster und Arbeitsspeicher Server einrichten und konfigurieren 4
G Tomcat 7 mit Apache 2 verbinden über mod_jk Server einrichten und konfigurieren 3
P Tomcat unter xampp nachinstallieren Server einrichten und konfigurieren 4
R Cacht Tomcat/axis2 Klassen? Server einrichten und konfigurieren 3
MQue Tomcat PermSpace Server einrichten und konfigurieren 9
Mike90 Tomcat 7 INFO: The APR based Apache Tomcat Native ... Server einrichten und konfigurieren 3
T GlassFish anstatt Apache Tomcat Server einrichten und konfigurieren 29
G Tomcat 6.0 von https auf http umstellen Server einrichten und konfigurieren 2
W Tomcat 7 und Eclipse Birt Viewer 3.7.2 - Datenbankprobleme Server einrichten und konfigurieren 2
T Permgen space Tomcat Server einrichten und konfigurieren 7
P Tomcat Context Server einrichten und konfigurieren 3
H Glassfish auf Tomcat ? Server einrichten und konfigurieren 2
E Tomcat/Jasper checkt nicht mehr auf Änderungen Server einrichten und konfigurieren 4
L Tomcat webapps Pfad nach Eclipse workspace verschieben Server einrichten und konfigurieren 6
F Tomcat Session timeout unendlich Server einrichten und konfigurieren 7
M JBoss und Tomcat Server einrichten und konfigurieren 8
schlingel Tomcat für den Produktiveinsatz Server einrichten und konfigurieren 14
E JSF auf Tomcat ? Server einrichten und konfigurieren 5
X3TitanCore Tomcat Datensynchronisation Server einrichten und konfigurieren 6
G Tomcat außerhalb des Servers nicht erreichbar Server einrichten und konfigurieren 6
P Ständige Fehlermeldungen bei Tomcat 5.5 Server einrichten und konfigurieren 11
A Tomcat in Eclipse Server einrichten und konfigurieren 5
K Apache2/Tomcat URL umschreiben Server einrichten und konfigurieren 6
M Hardwareempfehlung für TOMCAT Server Server einrichten und konfigurieren 8
J Tomcat 7 Probleme bei vorhandener context.xml Server einrichten und konfigurieren 1
B Webproject + Tomcat + SSL Server einrichten und konfigurieren 15
P Tomcat sehr langsam Server einrichten und konfigurieren 5
D Tomcat log lesen Server einrichten und konfigurieren 2
K Tomcat von remote nicht erreichbar Server einrichten und konfigurieren 14
W Tomcat 5.5 mit Apache2 + mod_jk (Debian Etch) Server einrichten und konfigurieren 2
S bestimmte user agenten sperren mit tomcat Server einrichten und konfigurieren 5
F Tomcat Klassenlader Server einrichten und konfigurieren 3
G Tomcat https Server einrichten und konfigurieren 3
N Weiterleitung Apache mit Tomcat über mod_jk funktioniert nicht... Server einrichten und konfigurieren 7
F Verständnisfrage zu Tomcat, Apache & mod_jk Server einrichten und konfigurieren 8
S Apache 2.2 und Tomcat 6 - Resource not found Server einrichten und konfigurieren 5
V Keystore Type für Tomcat ändern Server einrichten und konfigurieren 2
E Tomcat und Eclipse Server einrichten und konfigurieren 4
N JSF-Facelets auf Tomcat - ich krieg's nicht hin Server einrichten und konfigurieren 10
G Tomcat socket Connection Server einrichten und konfigurieren 3
I JSF Entwicklung mit Eclipse und Tomcat 6 unter Gentoo Server einrichten und konfigurieren 8
A Mehrere Tomcat Instanzen auf Basis einer Tomcat Installation Server einrichten und konfigurieren 1
M Tomcat oder Applicationserver Server einrichten und konfigurieren 3
M Tomcat oder sonstiger Webserver für mehrere Projekte Server einrichten und konfigurieren 5
K apache, tomcat mysql einrichten Server einrichten und konfigurieren 6
D Tomcat für SSLv2 konfigurieren Server einrichten und konfigurieren 6
H Tomcat Startseite einrichten Server einrichten und konfigurieren 3
B Tomcat Welcome-Page aus Eclipse nicht erreichbar Server einrichten und konfigurieren 4
0din Webspace mit Tomcat etc. Server einrichten und konfigurieren 4
A Standard-Webapp in Tomcat 6 - wie konfigurierbar? Server einrichten und konfigurieren 3
0din Tomcat unter Eclipse einbinden Server einrichten und konfigurieren 7
X3TitanCore Tomcat installieren Server einrichten und konfigurieren 2
R Fehler beim TOMCAT, davor ging es noch! Server einrichten und konfigurieren 1
E tomcat installation Server einrichten und konfigurieren 4
J Tomcat: shutdown.sh script funktioniert plötzlich nicht mehr Server einrichten und konfigurieren 3
D Tomcat auf anderer Maschine als Eclipse Server einrichten und konfigurieren 8
P maven-tomcat-plugin redeploy funktioniert nicht? Server einrichten und konfigurieren 6
P Tomcat 6.x - context path wird nicht richtig gesetzt durch MAven2 Plugin Server einrichten und konfigurieren 16
GFEMajor Von Tomcat auf JBoss EJB mit Sicherheit Server einrichten und konfigurieren 2
F tomcat deutsch starten Server einrichten und konfigurieren 8

Ähnliche Java Themen

Neue Themen


Oben