OK, I've managed to register my own CustomSqueezeAdaptor by implementing PageAttachListener and using the following code:

    private static boolean squeezerRegistered;

    @InjectObject("service:tapestry.data.DataSqueezer")
    public abstract DataSqueezer getDataSqueezer();

    public void pageAttached(PageEvent event)
        {
        synchronized(InnigBasePage.class)
            {
            if(!squeezerRegistered)
                {
                new CustomSqueezeAdaptor().register(getDataSqueezer());
                squeezerRegistered = true;
                }
            }
        }

It works, but it's pretty crummy. Surely there is -- or should be -- a way to do this entirely from my hivemodule.xml?

Cheers,

Paul


On Aug 7, 2005, at 1:16 PM, Norbert Sándor wrote:

Probably it talks about a data squeezer adaptor.
You should create a custom squeezer adaptor or eg. make CustomClass implement Serializable.

BR,
Norbi

----- Original Message ----- From: "Paul Cantrell" <[EMAIL PROTECTED]>
To: "Tapestry users" <[email protected]>
Sent: Sunday, August 07, 2005 8:09 PM
Subject: What is a "strategy," and how do I write one?



I notice that if I do this...

<a href="#" jwcid="@DirectLink" listener="listener:doStuff" parameters="ognl:value">

...with this backing code:

    public abstract CustomClass getValue();
    public void doStuff(CustomClass value) { ... }

...it doesn't work (which I would expect), but I get this error message:

    Could not find a strategy instance for class CustomClass

...which suggests that this *could* work if only I registered a "strategy" with Tapestry, whatever that means. I looked through the docs and a did a quick web search on this, without luck -- though I'm sure good information is out there somewhere.

Anybody on this list know how it's done? I'm using 4.0 beta 3.

Cheers,

Paul
_________________________________________________________________

"Prediction is hard, especially of the future."  -- Niels Bohr


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to