2017-01-25 3 views
-1

In meiner Java Spring MVC Webanwendung habe ich ein gemeinsames Projekt sagen und ein anderes Projekt sagen Project B. Project A enthält nur die gemeinsamen Klassen über verschiedene Projekt und eine hbm.xml-Datei, die ich verwende und als Abhängigkeit für alle Unterprojekte hinzugefügt wird. Ich habe eine gemeinsame Methode, um einige Daten in der Datenbank zu speichern. Ich verwende für meine Datenbankoperationen. Ich habe die hbm.xml Datei in Project A erstellt, damit es von allen Unterprojekten verwendet werden kann. In der root-context.xml Datei meines Project B Ich habe folgendes:Pfad für eine hbm.xml-Datei aus einem anderen Projekt in einem anderen Projekt angeben

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> 
     <property name="dataSource"> 
      <ref bean="dataSource"/> 
     </property> 
     <property name="hibernateProperties"> 
      <props> 
       <prop key="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</prop> 
       <prop key="hibernate.show_sql">false</prop> 
      </props> 
     </property> 

     <property name="mappingResources"> 
      <list>    
       <value>/hibernatemappings/support/SupportItem.hbm.xml</value> 
       <value>/hibernatemappings/support/SupportPriority.hbm.xml</value>    
      </list> 
     </property> 
    </bean> 

Jetzt möchte ich die hbm.xml -Dateien von meinem Projekt A in diese Datei schreiben, aber ich bin ein java.io.FileNotFoundException: bekommen. Das Basisprojekt (Projekt A) hat nur Java-Klassen, eine hbm.xml-Datei und keine web.xml oder root-context.xml Datei.

+0

Wenn 'Projekt A' die Basis-Projekt und Sie erstellt die'. hbm.xml' im Basisprojekt ..... wie kann das Basisprojekt nur Java-Klassen haben? –

+0

Es ist ein Projekt mit nur den gemeinsamen Java-Klassen, die über alle Projekte hinweg geteilt werden. Es ist nicht das Hauptprojekt, es ist ein gemeinsames Projekt –

+0

Sie haben nicht geantwortet, entweder in Project-A sind ** nur ** Klassen innerhalb ODER es gibt Klassen ** und ** die 'hbm.xml'-Dateien im Inneren !!! –

Antwort

0

Dateien Unter der Annahme ist an der Stelle "Projekt B/src/main/resources/hibernatemappings/audit/Audit.hbm.xml"

Sie können den absoluten Pfad der Datei erhalten, wie unten

this.getClass(). getClassLoader(). getResource ("hibernatemappings/audit/Audit.hbm.xml"). getPath()

Verwandte Themen