I believe that you need to specify the property injection in the service descriptor, not the <contribution> section. Mine looks like this (injecting a Dao object.)
<!-- configure our own Hibernate data squeezer... --> <service-point id="HibernateAdapter" interface="bt.havoc.data.util.IHibernateSqueezeAdapter"> <invoke-factory> <construct class="bt.havoc.data.util.HibernateSqueezeAdapter"> <set-object property="dao" value="service:genericDao"/> </construct> </invoke-factory> </service-point> <!-- add it to tapestry's squeeze adaptors --> <contribution configuration-id="tapestry.data.SqueezeAdaptors"> <adaptor object="service:HibernateAdapter"/> </contribution> HTH, -Jason On Wednesday 22 March 2006 15:39, Denis Souza wrote: > Here it is... > > In my hivemodule.xml: > > <contribution configuration-id="tapestry.data.SqueezeAdaptors"> > <adaptor > object="instance:com.camerum.tapestry.squeeze.EntityBeanSqueezeAdaptor"/> > </contribution> > > My squeeze adaptor class (I left out most of the body of the squeeze and > unsqueeze methods so it wouldn't take so much space). > > public class EntityBeanSqueezeAdaptor implements SqueezeAdaptor { > > public String getPrefix() { > return String.valueOf('*'); > } > > public Class getDataClass() { > return EntityBeanAbstract.class; > } > > public String squeeze(DataSqueezer squeezer, Object object) { > ... > return getPrefix() + id; > } > > public Object unsqueeze(DataSqueezer squeezer, String id) { > ... > return object; > } > > private ApplicationStateManager stateManager; > > public void setStateManager(ApplicationStateManager stateManager) { > this.stateManager = stateManager; > } > > ... that's about it. Inside the squeeze and unsqueeze methods the state > manager is always null. I also tried using "setApplicationStateManager" as > the setter method, but with the same results. > > > -----Original Message----- > From: James Carman [mailto:[EMAIL PROTECTED] > Sent: quarta-feira, 22 de março de 2006 17:24 > To: 'Tapestry users' > Subject: RE: Hivemind object in squeeze adaptor > > If HiveMind sees a "writable" property of a type for which it has exactly > one matching service point, it will set that property. I know this works, > because I do it in one of my own services. Can you post some code and your > applicable hivemodule.xml file contents? > > -----Original Message----- > From: Denis Souza [mailto:[EMAIL PROTECTED] > Sent: Wednesday, March 22, 2006 3:21 PM > To: 'Tapestry users' > Subject: RE: Hivemind object in squeeze adaptor > > ... still not happening. The state manager remains null. > > Anyway I don't really understand how it could work. What's the logic with > this "autowire"? How does hivemind know to fill it in? > > -----Original Message----- > From: James Carman [mailto:[EMAIL PROTECTED] > Sent: quarta-feira, 22 de março de 2006 17:06 > To: 'Tapestry users' > Subject: RE: Hivemind object in squeeze adaptor > > Drop the set-object altogether. HiveMind will "autowire" it. > > -----Original Message----- > From: Denis Souza [mailto:[EMAIL PROTECTED] > Sent: Wednesday, March 22, 2006 3:04 PM > To: 'Tapestry users' > Subject: RE: Hivemind object in squeeze adaptor > > I did, it just won't allow me to use a "set-object" inside an adaptor tag: > > "Element adaptor/set-object is not allowed here." > > But since this is not allowed, I don't know how it can be done. > > -----Original Message----- > From: James Carman [mailto:[EMAIL PROTECTED] > Sent: quarta-feira, 22 de março de 2006 16:53 > To: 'Tapestry users' > Subject: RE: Hivemind object in squeeze adaptor > > Try adding a "setter" to your implementation class... > > public class MySqueezeAdaptor > { > private ApplicationStateManager stateManager; > > public void setStateManager( ApplicationStateManager stateManager ) > { > this.stateManager = stateManager; > } > } > > -----Original Message----- > From: Denis Souza [mailto:[EMAIL PROTECTED] > Sent: Wednesday, March 22, 2006 2:47 PM > To: 'Tapestry users' > Subject: Hivemind object in squeeze adaptor > > Hi, > > > > I'm implementing a squeeze adaptor for my app and I was wondering how I > could inject other hivemind objects or services into it. > > > > I would have guessed something like this: > > > > <contribution configuration-id="tapestry.data.SqueezeAdaptors"> > > <adaptor object="instance:MySqueezeAdaptor"> > > <set-object property="applicationStateManager" > value="infrastructure:applicationStateManager"/> > > </adaptor> > > </contribution> > > > > .but of course, it doesn't work. Can anyone help? > > > > Thanks, > > Denis > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] -- ---------------------- Marriage is like twirling a baton, turning handsprings, or eating with chopsticks. It looks easy until you try it. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]