Well I knew that with the constructor it is exactly what the internal method createMethodInvocationPlan is doing. The sad thing is I have to recreate it since its internal.
This ignore Inject works for me since I use autobild method of the regitry. PS: Everyone is aware of the @Autobuild method? You can create a property or parameter, annotate with it and Tapestry builds it on the fly using autobuild. Just like: Constructor(@Autobuild ArrayList list1, @Autobuild ArrayList list2) { assert list1 != list2; } Cheers, Martin (Kersten) 2013/9/23 Daniel Jue <teamp...@gmail.com> > You can still use a constructor/constructor injection when registering your > service in your module, if you want. (In fact the auto binding looks for > the constructor with the most parameters, if none are marked with @Inject.) > Or, you can use Field Injection. Not sure if you can use both, probably > not. > > If you have @Inject in your class X, and then register the class X in your > module, Tapestry should throw an error if it can't find the class Y to > inject into X. > > HOWEVER, if you are instantiating the class outside of the registry, the > @Inject annotations are ignored. I know this because I have an old-school > coworker who does not believe in Injection, and I have to make some > services construct-able by him.. *le sigh* > > > > > > > On Mon, Sep 23, 2013 at 4:07 PM, Martin Kersten < > martin.kersten...@gmail.com > > wrote: > > > Yeah thats what I was thinking about exactly. This way I can get rid of > the > > pesti constructor injection. > > > > Does anyone knows if the autobuild / build process fails if a property > > annotated @inject could not be injected? Kind of should be but I am quite > > not sure... . > > > > > > 2013/9/23 Daniel Jue <teamp...@gmail.com> > > > > > You'll probably find better examples online, but in my Test classes I > > > usually have a method like this: > > > > > > > > > private MyDAO<MyPojo,MyQueryObject> dao; > > > @BeforeClass > > > public void beforeClass() { > > > > > > // TODO Auto-generated constructor stub > > > System.out.println("MyDAOTest"); > > > Registry registry; > > > RegistryBuilder builder = new RegistryBuilder(); > > > builder.add(MyDAOModule.class); > > > registry = builder.build(); > > > registry.performRegistryStartup(); > > > dao = registry.getService(MyDAO.class); > > > > > > } > > > > > > @Test > > > public void f() { > > > MyQueryObject q = new MyQueryObject(); > > > q.setAttribute("Martin"); > > > List<MyPojo> = dao.findByQuery(q); > > > //assert something here > > > } > > > > > > > > > In MyDAOModule.class, you can set up your services to build via > > > auto-binding, interface binding, or using a build method (public static > > > MyDAO buildMyDAO() { ... } ) > > > depending on your needs. > > > > > > > > > On Mon, Sep 23, 2013 at 2:58 PM, Martin Kersten < > > > martin.kersten...@gmail.com > > > > wrote: > > > > > > > Is there anything to aid me with the usual service test. Currently I > > use > > > > constructors to ease setup of the services. I will try out providing > a > > > test > > > > module setting up the services and use tapestry IOC to create those. > > > Should > > > > have done so more early on, but wanted it simple first. But now when > I > > > have > > > > three or four services to setup it becomes cumbersome. > > > > > > > > > > > > 2013/9/23 Martin Kersten <martin.kersten...@gmail.com> > > > > > > > > > Thanks daniel. I will check the testify stuff in a real example. > > > > > > > > > > > > > > > 2013/9/23 Daniel Jue <teamp...@gmail.com> > > > > > > > > > >> I don't have spare minutes at the moment, I just want to drop > these > > > > links > > > > >> for you to look at (if you haven't seen them already). Hope it > > helps. > > > > >> > > > > >> > > > > > > > > > > http://blog.tapestry5.de/index.php/2010/11/16/improved-testing-facilities/ > > > > >> > > > > >> and then this one > > > > >> > > > > >> http://blog.tapestry5.de/index.php/2010/11/18/find-your-elements/ > > > > >> > > > > >> > > > > >> Dan > > > > >> > > > > >> > > > > >> On Mon, Sep 23, 2013 at 12:49 PM, Martin Kersten < > > > > >> martin.kersten...@gmail.com> wrote: > > > > >> > > > > >> > Problems nope. I just habe to overhowle the system and wonder > what > > > > >> people > > > > >> > nicht use. I will check your base clase out. Thanks for sharing. > > > > >> > Am 23.09.2013 18:12 schrieb "Dmitry Gusev" < > > dmitry.gu...@gmail.com > > > >: > > > > >> > > > > > >> > > I use JUnit for unit testing with T5 services, and TestNG for > > > > (smoke) > > > > >> > > integration testing my apps with URLs. > > > > >> > > > > > > >> > > All my JUnit test classes inherited from BaseIntegrationTest ( > > > > >> > > https://gist.github.com/dmitrygusev/6672859), > > > > >> > > all TestNG classes inherited from a copy of SeleniumTestCase > > with > > > > with > > > > >> > this > > > > >> > > patch applied: > > > > >> > > https://issues.apache.org/jira/browse/TAP5-2107 > > > > >> > > > > > > >> > > Which is something you may already read while browsing the > web. > > > > >> > > > > > > >> > > Do you have any problems with this? > > > > >> > > > > > > >> > > > > > > >> > > On Mon, Sep 23, 2013 at 7:02 PM, Martin Kersten < > > > > >> > > martin.kersten...@gmail.com > > > > >> > > > wrote: > > > > >> > > > > > > >> > > > I want some real hands on experiences. So please if you have > > any > > > > >> please > > > > >> > > > provide. > > > > >> > > > > > > > >> > > > I am currently reworking the testing settup since the maven > > > stuff > > > > >> is to > > > > >> > > > slow for my program test cycle. > > > > >> > > > > > > > >> > > > Since I wont use testng I need to rewrite some test code. I > > need > > > > to > > > > >> do > > > > >> > > unit > > > > >> > > > testing in java > > > > >> > > > since I program in java. Integration test and Acceptance > test > > > may > > > > be > > > > >> > done > > > > >> > > > in groovy > > > > >> > > > but I am in doupt this would be such a gain. > > > > >> > > > > > > > >> > > > Well the unit testing I want to elaborate the IOC directly > > using > > > > >> only a > > > > >> > > > fraction of the > > > > >> > > > services the application is about. The IOC setup seams to be > > > > fairly > > > > >> > fast > > > > >> > > so > > > > >> > > > it is ok > > > > >> > > > (Hibernate takes way longer) > > > > >> > > > > > > > >> > > > I use a embedded jetty for the integration testing with a > > > presetup > > > > >> in > > > > >> > > > memory database (h2). > > > > >> > > > > > > > >> > > > I dont use mvn jetty:run since it is dead slow with all the > > > > >> dependency > > > > >> > > > setup and stuff. > > > > >> > > > > > > > >> > > > So in the end I want to hear what you use for testing, what > > > speed > > > > >> means > > > > >> > > and > > > > >> > > > if you > > > > >> > > > use IOC, jetty or something else. > > > > >> > > > > > > > >> > > > > > > > >> > > > And yes I searched the web high and low, I want just > personal > > > > >> > experiences > > > > >> > > > with > > > > >> > > > the background of embedding either a web application server > or > > > an > > > > >> IOC. > > > > >> > > > > > > > >> > > > > > > > >> > > > Cheers, > > > > >> > > > > > > > >> > > > Martin (Kersten) > > > > >> > > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > >> > > -- > > > > >> > > Dmitry Gusev > > > > >> > > > > > > >> > > AnjLab Team > > > > >> > > http://anjlab.com > > > > >> > > > > > > >> > > > > > >> > > > > > > > > > > > > > > > > > > > >