Frühling nicht initialisieren Bean (Dbunit); Was habe ich vermisst?
Frage
Ich verfolge einige Richtlinien in einem Tutorial für die Einrichtung von Stripes MVC mit Frühlingsintegration. Ich versuche, DBUNIT zu integrieren, um meine DB beim Start zu initialisieren, damit ich nicht jedes Mal die manuelle Einfügung von Daten verschwenden muss. Leider kann ich das Tutorial nicht als von einem E -Book bezahlt verknüpfen.
In meinem web.xml habe ich den Frühling verwiesen
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
In meiner applicationContext.xml habe ich die folgenden Bohnen eingerichtet
<bean id="dbUnitBootstrapper" class="com.jameselsey.salestracker.testing.DBUnitBootstrapper"
init-method="execute">
<property name="enabled" value="true"/>
<property name="operations">
<list>
<bean class="org.dbunit.ant.Operation">
<property name="type" value="CLEAN_INSERT"/>
<property name="src" value="classpath:testdata.xml"/>
</bean>
</list>
</property>
</bean>
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="org.apache.derby.jdbc.ClientDriver"/>
<property name="url" value="jdbc:derby://localhost:1527/salestracker"/>
<property name="username" value="admin"/>
<property name="password" value="admin"/>
</bean>
Dinge zu beachten:
- Die DataSource hat die gleichen Details wie meine
persistence.xml
, Wenn ich Daten manuell einfügte, wird es in meiner Anwendung angezeigt, sodass die Verbindungsdetails in Ordnung sein sollten - Ich habe Haltepunkte in meinem festgelegt
DBUnitBootstrapper
Klasse, aber diese werden nie erwischt und führen mich zu der Annahme, dass diese Bohne nicht initialisiert wird. - das
testdata.xml
Datei gibt es an der richtigen Stelle, ich habe die einfachsten Domänenobjekte mit einer ID und einigenString
Attribute - In dem
testdata.xml
, wenn ich die ID aus ändere1
zuabc
Ich bekomme einnumberFormatException
In der Konsolenausgabe, so klingt es so, als würde die Anwendung die Datendatei lesen und versuchen, einzutreiben
Habe ich etwas Offensichtliches verpasst? Was kann ich sonst noch tun? Ich habe diese Frage gestellt Javaranch Aber ich konnte bisher nicht viel Hilfe bekommen. Dies ist für ein persönliches Lernprojekt, daher wäre es großartig, einige Fortschritte zu erzielen :)
Lösung
Es scheint zu sein, dass du vergessen hast, a zu setzen dataSource
Eigentum in dbUnitBootstrapper