Thanks Korben Zhang I didn't write DAO Service,I directly inject DAO into t5 page like this:
@Inject @SpringBean("IPublicDAO") private IPublicDAO pdao; it can work well in tomcat.but when I want to user Unit Test,I got the exception。 I must write DAO service ?? my code is learned from your tfan-dphrm project. 2007/9/3, Korben Zhang <[EMAIL PROTECTED]>: > > How did you inject DAO service? > if you use Spring to manage DAOs, usage like other service. > Spring will help you get right object instance. > > > On 8/31/07, 小司 <[EMAIL PROTECTED]> wrote: > > > > My Application use spring2+tapestry5+hibernate3 ,it can work well in me > > IE or FF > > > > so,I want to use Unit Test with testNG .I followed > > > > > http://tapestry.apache.org/tapestry5/tapestry-core/guide/unit-testing-pages.html > > > > configrate spring with > > http://wiki.apache.org/tapestry/Tapestry5SpringIntegration > > > > I want to test a tapestry page, but I got Exception .IPublicDAO is my > > spring > > class > > > > I didnot know wrong where I make. can anybody help me thanks a lot. > > > > Caused by: java.lang.RuntimeException: Error obtaining injected value > for > > field cn.crc.pjblog.pages.BlogPostOne.pdao: No service implements the > > interface cn.crc.model.impl.IPublicDAO. > > at org.apache.tapestry.internal.services.InjectWorker.inject( > > InjectWorker.java:84) > > at org.apache.tapestry.internal.services.InjectWorker.transform( > > InjectWorker.java:53) > > at > > > > > $ComponentClassTransformWorker_114ba61b606.transform($ComponentClassTransformWorker_114ba61b606.java) > > at > > > > > $ComponentClassTransformWorker_114ba61b603.transform($ComponentClassTransformWorker_114ba61b603.java) > > at > > > > > org.apache.tapestry.internal.services.ComponentClassTransformerImpl.transformComponentClass > > (ComponentClassTransformerImpl.java:131) > > ... 48 more > > Caused by: java.lang.RuntimeException: No service implements the > interface > > cn.crc.model.impl.IPublicDAO. > > at org.apache.tapestry.ioc.internal.RegistryImpl.getService( > > RegistryImpl.java:447) > > at org.apache.tapestry.ioc.internal.ObjectLocatorImpl.getService( > > ObjectLocatorImpl.java:45) > > at org.apache.tapestry.ioc.services.TapestryIOCModule$2.provide( > > TapestryIOCModule.java:132) > > at $ObjectProvider_114ba61b5d4.provide($ObjectProvider_114ba61b5d4.java) > > at $ObjectProvider_114ba61b5ce.provide($ObjectProvider_114ba61b5ce.java) > > at org.apache.tapestry.internal.services.InjectWorker.inject( > > InjectWorker.java:80) > > ... 52 more > > ... Removed 22 stack frames > > > > > > > > > > -- > > 得与失都是生活 > > > > > > -- > Korben Zhang http://korben-zhang.blogspot.com > Backup Blog: http://korbenzh.spaces.live.com > -- 得与失都是生活