Anwendungskontext laden zweimal
Schreibe ich eine web-Anwendung mit Struts 3 mit Tomcat 7 mit Eclipse. Wenn ich starte Tomcat, es scheint, der Rahmen wird zweimal geladen (log-Datei zeigt, dass applicationContext.xml ist zweimal Lesen).
Habe ich eine context.xml Datei unter src/main/webapp/META-INF für Tomcat :
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/dbname" docBase="dbname" reloadable="true" debug="1">
<Resource name="jdbc/dbname"
username="dbusername"
password="dbpassword"
auth="Container"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/dbname"
type="javax.sql.DataSource"
initialSize="5"
maxActive="120"
maxIdle="5"
maxWait="5000"
poolPreparedStatements="true"
validationQuery="select 1" />
</Context>
Meine server.xml erklärt auch (unter Host und Motor) :
<Context docBase="dbname" path="/dbname" source="org.eclipse.jst.jee.server:dbname"/>
Ohne diese, Tomcat nicht starten Sie die Anwendung.
In web.xml ich erkläre die contextConfigLocation wie diese :
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/applicationContext.xml</param-value>
</context-param>
applicationContext.xml befindet sich unter src/main/resources/Frühjahr
Sind die zwei Zeilen aus der log-Datei mit dem reload :
2012-10-14 00:17:08,191 INFO [org.springframework.web.servlet.DispatcherServlet] - FrameworkServlet 'name': initialization completed in 438 ms
2012-10-14 00:17:10,972 INFO [org.springframework.web.context.support.XmlWebApplicationContext] - Closing WebApplicationContext for namespace 'name-servlet': startup date [Sun Oct 14 00:17:07 CEST 2012]; parent: Root WebApplicationContext
Problem ist, dass auf dem zweiten laden, es schlägt fehl, da der Frühling kann nicht finden, eine beliebige Datenquelle (obwohl ist definitiv definiert seit dem Frühjahr findet es beim ersten Booten)
Du musst angemeldet sein, um einen Kommentar abzugeben.
So haben Sie die Bereitstellung der webapp zweimal. Waren Sie erwarten etwas anderes?
Entfernen Sie die
<Context>
aus server.xml: ist es dort nicht hin gehört. Dann, Ihr webapp soll nur geladen, einmal.Ich hatte den Krieg und explodiert-Krieg im Einsatz in meinem tomcat-server, daher war es laden zwei anwendungskontexte, dass einer von Ihnen das problem gelöst