2010/5/9 joshua sitopul <[email protected]>
>
>
>
> Masalahnya sudah terpecahkan..
>
> dapat inspirasi dari blog ini :
> http://javaprogrammingtips4u.blogspot.com/2010/04/how-to-solve-orghibernatehibernateexcep.html
>
> intinya :
> <tx:annotation-driven/> only looks for @Transactional on beans in the same 
> application context it is defined in. This means that, if you put 
> <tx:annotation-driven/> in a WebApplicationContext for a DispatcherServlet, 
> it only checks for @Transactional beans in your controllers, and not your 
> services.
>
> Nah, coba lihat di applicationContext.xml dan springapp-servlet.xml
>
> di applicationContext.xml
>
>     <context:annotation-config/>
>     <context:component-scan base-package="*"/>
>     <tx:annotation-driven/>
>
> di springapp-servlet.xml
>     <context:annotation-config/>
>     <context:component-scan base-package="*"/>
>
> Sebenarnya aneh juga karena lihat dari penjelasannya, jika annotation-driven 
> ditaruh di dispatcher servlet, maka akan cek annotation transactional bean di 
> dalam kontroller , tidak diservice. Tapi kan itu saya taruh di 
> applicationContext.xml mestinya dia cek di service. tapi mungkin ambigu kali 
> kalau pakai *
>
> solusinya bisa tambahkan <tx:annotation-driven/> di spring-servlet.xml atau 
> jangan pakai *
>
> saya sih lebih prefer jangan pakai *, jadi di springapp-servlet di base 
> package ke controller aja, jadi <tx:annotation-driven/> cuma hanya di 
> applicationContext.xml


Ya saya kan udah bilang di posting di atas, jangan pakai wildcard.
Akibatnya, kita jadi gak tau @Servicenya dideteksi sama xml yang mana,
soalnya ada 2 xml dan 2-2nya base packagenya *.
Pakai wildcard gpp, tapi jangan cuma *, kasi prefix supaya lebih
terkontrol xml mana ngeload bean yang mana.

Di referensinya Spring juga sudah diingatkan, bahwa
tx:annotation-driven hanya memproses yang diload oleh XML tempat dia
dideklarasikan.

http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/transaction.html#transaction-declarative-annotations


--
Endy Muhardin
http://endy.artivisi.com
Y! : endymuhardin
-- life learn contribute --

Kirim email ke