Take a look at tapestry-spring that Howard has produced. Works great
with no extra code required.

http://howardlewisship.com/tapestry-javaforge/tapestry-spring/

-----Original Message-----
From: Izak Wessels [mailto:[EMAIL PROTECTED] 
Sent: 21 March 2006 12:30
To: Tapestry users
Subject: Matt, question about your Tapestry 4.0 - Spring Integration

Matt,


I recently came across the following forum posting by yourself :
( I wasn't subscribed to the mailing list when you made this forum
posting,
so excuse the repeat )
------------------------------------------------------------------------
------------------
Does the following wiki page still reflect the current/recommended way
of integrating Tapestry 4.0 with Spring?

http://wiki.apache.org/jakarta-tapestry/Tapestry4Spring

I used something similar in my project. While it works - it doesn't
seem to be the "built-in support for Spring" that I'd suspect from
Tapestry/Hivemind. Ideally, no Java code would be needed.

Here's what I did:

package org.appfuse.web;

....

public class SpringFactory extends SpringBeanFactoryHolderImpl
implements RegistryShutdownListener {
private WebContext context;

public void setContext(WebContext webcontext) {
context = webcontext;
}

public BeanFactory getBeanFactory() {
if (super.getBeanFactory() == null) {
ApplicationContext ctx = (ApplicationContext)

context.getAttribute(WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_
ATTRIBUTE);
setBeanFactory(ctx);
}
return super.getBeanFactory();
}

public void registryDidShutdown() {
((ConfigurableApplicationContext) getBeanFactory()).close();
}
}

/WEB-INF/hivemodule.xml:

<implementation
service-id="hivemind.lib.DefaultSpringBeanFactoryHolder">
<invoke-factory>
<construct autowire-services="false"
class="org.appfuse.web.SpringFactory">
<event-listener service-id="hivemind.ShutdownCoordinator"/>
<set-object property="context"
value="service:tapestry.globals.WebContext"/>
</construct>
</invoke-factory>
</implementation>

Thanks,

Matt
------------------------------------------------------------------------
------------------

I agree with your statement that using a third party lib thats only in
alpha
stage, doesn't seem quite right.

My question however is, how do you actually
apply this strategy in your java code? Do I need to instantiate an
instance of BeanFactory and then call getBeanFactory() and go from
there, or is it all
done automatically?

Any help would be much appreciated,

-- Izak

---------------------------------------------------------------------
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]

Reply via email to