Another way to extend Application servlet from tapestry and with your implementation and then just replace ApplicationServlet declaration inside web.xml with your new class. Logic is more or less the same.
On 15/11/2007, Jili Lv <[EMAIL PROTECTED]> wrote: > > 1. Add a filter class : > > package com.example; > > import java.io.IOException; > > import javax.servlet.Filter; > import javax.servlet.FilterChain; > import javax.servlet.FilterConfig; > import javax.servlet.ServletException; > import javax.servlet.ServletRequest; > import javax.servlet.ServletResponse; > > import org.apache.hivemind.Registry; > > public class HivemindRegistryPublishFilter implements Filter { > > private FilterConfig config; > > static public Registry getRegistry() { > return _localRegistry.get(); > } > > public void init(FilterConfig config) throws ServletException { > this.config = config; > } > > public void destroy() { > } > > public void doFilter(ServletRequest request, ServletResponse > response, FilterChain chain) > throws IOException, ServletException { > try > { > // tapestry 4.1.2 servlet name is xxx. > > > _localRegistry.set((Registry)config.getServletContext().getAttribute(" > org.apache.tapestry.Registry:" > + "xxx")); > chain.doFilter(request, response); > } finally { > _localRegistry.set(null); > } > } > > static protected ThreadLocal<Registry> _localRegistry = new > ThreadLocal<Registry>(); > } > > 2. configure web.xml > > <filter> > <filter-name>registryFilter</filter-name> > <filter-class>com.example.HivemindRegistryPublishFilter > </filter-class> > </filter> > <filter-mapping> > <filter-name>registryFilter</filter-name> > <url-pattern>/*</url-pattern> > </filter-mapping> > > 3. now get Registry use > com.example.HivemindRegistryPublishFilter.getRegistry() > > this is base on the hivetranse source code > http://hivetranse.sourceforge.net/ > > 2007/11/15, Paul Stanton <[EMAIL PROTECTED]>: > > Ok, so the tapestry servlet initializes and stores the hivemind registry > > for use within tapestry. My hivemind services and tapestry components > > and pages can find each other via injection or context method calls. > > That's fine, but now I've got separate servlet in which I need to have > > access to my hivemind services. What's the best way to do this? > > > > Thanks, Paul. > > > > > > > > --------------------------------------------------------------------- > > 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] > > -- Best regards, Renat Zubairov