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]