前兩種方式webwork的wiki里有,就不多說(shuō)了,點(diǎn)這里可以查看。
而以下的給出的思路是webwork mail list的討論的一種方案,應(yīng)該是最好的一種方案。
代碼1:


































































代碼2:


























這幾段代碼,你不需要在spring里配置action,也不需要在xwork.xml里面配置external-ref。只要保證action引用的東東和spring里面同名就能夠auto wire by name了。
原理:攔截器會(huì)在每個(gè)action之前調(diào)用autowireComponent(invocation.getAction())。這樣spring就會(huì)去自動(dòng)組裝這個(gè)傳進(jìn)來(lái)的action對(duì)象,而action對(duì)象里的屬性和spring里的bean id同名。所以spring就會(huì)自動(dòng)將application.xml里對(duì)應(yīng)的bean注射到action的屬性里去,從而達(dá)到把a(bǔ)ction按用戶希望的方式組裝起來(lái)的目的。
如:
appliaction.xml





xwork.xml



Action:


.......


最后記得要在web.xml配上listener-class