I say that I tried to call: binder.bind(TeacherMed.class); or binder.bind(TeacherMed.class, TeacherMedImpl.class); and both don't work.
Both give the same exception: Exception assembling root component of page Teachers: Could not convert 'all' into a component parameter binding: Exception generating conduit for expression 'all': org.apache.tapestry5.ioc.internal.OperationException: Error obtaining injected value for field tap.execounting.pages.TeacherPage.tMed: No service implements the interface tap.execounting.dal.mediators.TeacherMedImpl. Howard Lewis Ship wrote > > Sorry, misread your post. Are you saying you don't > bind(TeachMed.class, TearchMedImpl.class)? If they are in the same > package, then you can just bind(TeachMed.class) ... but if you don't > bind(), Tapestry has no idea what it is. > > On Mon, Jul 30, 2012 at 12:52 PM, Howard Lewis Ship <hlship@> wrote: >> Don't put interfaces in your .pages. package. Just component classes. >> There's a kind of exemption for inner classes, but any top-level >> class is expected to be a component class, and gets fed through the >> component class transformation pipeline. >> >> On Mon, Jul 30, 2012 at 12:31 PM, bigcache1 <sharp.maestro@> wrote: >>> Hello, everybody! >>> I am getting an exception: >>> "Error obtaining injected value for field >>> tap.execounting.pages.TeacherPage.tMed: No service implements the >>> interface >>> tap.execounting.dal.mediators.TeacherMedImpl." >>> >>> So the problem seems strange to me, because of: >>> 1) TeacherMed - is an interface, and TeacherMedImpl is the implementing >>> class accordingly. >>> 2) But the exception is about "no service implements the interface >>> TeacherMedImpl" - which is the class. >>> >>> Additional info: >>> These classes are located in the same package. >>> Exception occurs regardless of where binder.bind is called from. I have >>> added my own module and enlisted him in Submodules. >>> If I call binder.bind(TeacherMedImpl.class) everything is fine, >>> regardless >>> of where the call is coming from. >>> >>> bind code: >>> >>> package tap.execounting.dal.mediators; >>> >>> import org.apache.tapestry5.ioc.ServiceBinder; >>> >>> public class MediatorModule { >>> public static void bind(ServiceBinder binder) { >>> //binder.bind(TeacherMed.class, TeacherMedImpl.class); >>> //not works >>> binder.bind(TeacherMedImpl.class); //roger that >>> } >>> >>> } >>> >>> >>> >>> >>> -- >>> View this message in context: >>> http://tapestry.1045711.n5.nabble.com/again-strange-No-service-implements-the-interface-tap-execounting-dal-mediators-TeacherMedImpl-tp5714888.html >>> Sent from the Tapestry - User mailing list archive at Nabble.com. >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: users-unsubscribe@.apache >>> For additional commands, e-mail: users-help@.apache >>> >> >> >> >> -- >> Howard M. Lewis Ship >> >> Creator of Apache Tapestry >> >> The source for Tapestry training, mentoring and support. Contact me to >> learn how I can get you up and productive in Tapestry fast! >> >> (971) 678-5210 >> http://howardlewisship.com > > > > -- > Howard M. Lewis Ship > > Creator of Apache Tapestry > > The source for Tapestry training, mentoring and support. Contact me to > learn how I can get you up and productive in Tapestry fast! > > (971) 678-5210 > http://howardlewisship.com > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscribe@.apache > For additional commands, e-mail: users-help@.apache > -- View this message in context: http://tapestry.1045711.n5.nabble.com/again-strange-No-service-implements-the-interface-tap-execounting-dal-mediators-TeacherMedImpl-tp5714888p5714893.html Sent from the Tapestry - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org