2010-10-20 20 views
6

Web projeme içe aktardığım, açıklamalı varlık sınıflarını içeren bir paketim var. Tomcat projeyi dağıtırken, kavanozdaki varlık sınıfı ek açıklamalar için taranmaz. Bir jar dosyası içinde açıklamalı sınıfları aramak için yayı söylemenin bir yolu var mı? yani:Hazırda bekletme - bahar açıklamalı nesneler kavanoz içinden taranmadı

<context:component-scan base-package="{path to jar or something}"/> 
+0

ben eklemeyi unuttuğu - Devam etsin diye sırayla/lib/my-paket-0.0.1-SNAPSHOT.jar WEB INF eklemek vardı kavanoz –

cevap

6

Eğer @Entity açıklamalı sınıfları diyorsan, <context:component-scan> onlarla ilgisi yok. @Entity sınıfları Hazırda bekletme tarafından bulunur, bu nedenle Hazırda değil, Hazırda'yı yapılandırmanız gerekir.

<jar-file>lib/yourFileWithEntities.jar</jar-file> 
+0

oluşturmak maven kullanıyorum .. – Niko

8

Bak için: http://static.springsource.org/spring/docs/2.5.x/api/org/springframework/orm/hibernate3/annotation/AnnotationSessionFactoryBean.html

Eğer JPA aracılığıyla Hibernate (eğer persistence.xml var yani) kullanırsanız

, Varlık sınıfları için /WEB-INF/lib/yourFileWithEntities.jar taramak amacıyla persistence.xml aşağıdaki satırı eklemeniz gerekir

ikinci örnek:

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"> 
    <property name="dataSource" ref="dataSource"/> 
    <property name="packagesToScan" value="test.package"/> 
</bean>

Tüm alt paketleri taramak için iki joker karakteri yerleştirin. (örn: "test.package. **")

+0

için Hazırda 4: org.springframework.orm.hibernate4.LocalSessionFactoryBean iş yapıyor :) – Tobias

1

spring3.1 kullanın veya persistence.xml öğenize varlık sınıfı eklemek için <class>com.***.***<class> etiketini kullanın.

İlgili konular