Yes, I was afraid that would be a problem. One thing to point out, if you build a HiveMind context loader listener (which seems like a good way to go) you will also need to subclass the Tapestry ApplicationServlet and override the contructRegistry method to pull off the registry from the ServletContext instead of creating a new one.
If you get all this working, I would really appreciate if you posted the code. I will need this same thing for Trails. Currently we have some really ugly code in i18N for fetching the Locale from Hivemind and I would like to replace it with proper Spring/Hivemind integration. TIA, Chris --- John Smith <[EMAIL PROTECTED]> wrote: > This looks really good. I have been trying it out, > but the assumption about > HiveMind being already initiated is tripping me up. > When the bean is > creating, the HiveMind registry hasn't been created > yet. So I am trying to > either delay the lookup in the bean, or force > HiveMind to come up first. No > luck yet. > > In my web.xml, I have a context listener set up for > org.springframework.web.context.ContextLoaderListener. > I am thinking that I > will need to create a new context listener for > starting HiveMind before > spring. > > ----Original Message Follows---- > From: Geoff Longman <[EMAIL PROTECTED]> > Reply-To: "Tapestry users" > <[email protected]> > To: Tapestry users > <[email protected]> > Subject: Re: Using Tapestry HiveMind services in > Spring > Date: Mon, 2 Jan 2006 14:39:57 -0500 > MIME-Version: 1.0 > Received: from mail.apache.org ([209.237.227.199]) > by > bay0-mc12-f13.bay0.hotmail.com with Microsoft > SMTPSVC(6.0.3790.211); Mon, 2 > Jan 2006 11:40:25 -0800 > Received: (qmail 13602 invoked by uid 500); 2 Jan > 2006 19:40:21 -0000 > Received: (qmail 13591 invoked by uid 99); 2 Jan > 2006 19:40:21 -0000 > Received: from asf.osuosl.org (HELO asf.osuosl.org) > (140.211.166.49) by > apache.org (qpsmtpd/0.29) with ESMTP; Mon, 02 Jan > 2006 11:40:21 -0800 > Received: pass (asf.osuosl.org: domain of > [EMAIL PROTECTED] designates > 66.249.82.193 as permitted sender) > Received: from [66.249.82.193] (HELO > xproxy.gmail.com) (66.249.82.193) by > apache.org (qpsmtpd/0.29) with ESMTP; Mon, 02 Jan > 2006 11:40:18 -0800 > Received: by xproxy.gmail.com with SMTP id > s9so1616262wxc for > <[email protected]>; Mon, 02 Jan 2006 > 11:39:58 -0800 (PST) > Received: by 10.70.74.3 with SMTP id > w3mr12791026wxa; Mon, 02 Jan > 2006 11:39:57 -0800 (PST) > Received: by 10.70.27.19 with HTTP; Mon, 2 Jan 2006 > 11:39:57 -0800 (PST) > X-Message-Info: > JGTYoYF78jEHjJx36Oi8+Z3TmmkSEdPtfpLB7P/ybN8= > Mailing-List: contact > [EMAIL PROTECTED]; run by ezmlm > Precedence: bulk > List-Unsubscribe: > <mailto:[EMAIL PROTECTED]> > List-Help: > <mailto:[EMAIL PROTECTED]> > List-Post: <mailto:[email protected]> > List-Id: "Tapestry users" > <tapestry-user.jakarta.apache.org> > Delivered-To: mailing list > [email protected] > X-ASF-Spam-Status: No, hits=-0.0 > required=10.0tests=SPF_PASS > X-Spam-Check-By: apache.org > DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; > s=beta; d=gmail.com; > > h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; > > > b=FdoS8ng1Y6MgfsLZH/f07Tp4LjroBow4SLYUPdI80UiwGGMIyG2ca2OxuCopUVSy88Y6yWOftLu+jyNRlZBsnjmTzPVGLDebvMDLMXMGbTb74M5mB2aTwau11YV07C8VnvS8wrfjC1R5GMuNZaHDMEo9z+zhxAccoXVpP8KQn/0= > References: > <[EMAIL PROTECTED]> > X-Virus-Checked: Checked by ClamAV on apache.org > Return-Path: > [EMAIL PROTECTED] > X-OriginalArrivalTime: 02 Jan 2006 19:40:25.0344 > (UTC) > FILETIME=[6084D800:01C60FD4] > > I think you can replace thier RegistryFactoryBean > with the following > and still use thier ServiceFactoryBeans. (whipped > this up, it's > untested) > > > Geoff > > /** > * [EMAIL PROTECTED] FactoryBean} implementation that locates > the HiveMind [EMAIL PROTECTED] > Registry} for a Tapestry > * servlet. <p/> This assumes that the Tapestry > servlet has already been > inited. > */ > public class TapestryRegistryLocatorBean implements > FactoryBean, > InitializingBean, > ApplicationContextAware > { > > // org.apache.tapestry.ApplicationServlet > defines this but only > privately! > public static final String REGISTRY_KEY_PREFIX > = > "org.apache.tapestry.Registry:"; > > private WebApplicationContext > applicationContext; > > private String tapestryServletName; > > private Registry registry; > > public Object getObject() throws Exception > { > return this.registry; > } > > public Class getObjectType() > { > return Registry.class; > } > > public boolean isSingleton() > { > return true; > } > > public void > setApplicationContext(ApplicationContext > applicationContext) throws BeansException > { > if (!(applicationContext instanceof > WebApplicationContext)) > throw new FatalBeanException( > "TapestryRegistryLocatorBean > must be installed in > a Spring WebApplicationContext!"); > > this.applicationContext = > (WebApplicationContext) > applicationContext; > } > > public void afterPropertiesSet() throws > Exception > { > ServletContext context = > applicationContext.getServletContext(); > > String registryKey = REGISTRY_KEY_PREFIX + > this.tapestryServletName; > > registry = (Registry) > context.getAttribute(registryKey); > > } > > public void setTapestryServletName(String > tapestryServletName) > { > this.tapestryServletName = > tapestryServletName; > } > } > > > > On 1/2/06, John Smith <[EMAIL PROTECTED]> wrote: > > I am using acegi with spring for the web security > of my site. However, > the > > login process needs to be able to query the > database to get information > > about the user account (something different than > just validating username > > and password). Then I need to set the username on > the Visit object. I > > already have acegi working, and I already have a > DAO for user information > > working in HveMind. > > > > Now I am trying to use the DAO from HivemMind in > my acegi security beans. > I > > could just create a spring DAO and then just have > two sets DAOs (one for > > spring and one for hivemind), but I would like > the === message truncated === __________________________________________ Yahoo! DSL Something to write home about. Just $16.99/mo. or less. dsl.yahoo.com --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
