I am not able to get this to work - in my servlet I have tried: A. @Inject private org.apache.deltaspike.core.spi.scope.window.WindowContext windowContext;
windowContext.getCurrentWindowId() is null; B. org.apache.deltaspike.core.api.provider.DependentProvider dp = org.apache.deltaspike.core.api.provider.BeanProvider.getDependent( "tabInfo" ); Object obj = dp.get(); log.info( "Object: " + obj ); org.jboss.weld.context.ContextNotActiveException: WELD-001303: No active contexts for scope type org.apache.deltaspike.core.api.scope.WindowScoped C. TabInfo tabInfo = org.apache.deltaspike.core.api.provider.BeanProvider.getContextualReference( "tabInfo", false, TabInfo.class ); tabInfo.setImportantInfo( ii ); org.jboss.weld.context.ContextNotActiveException: WELD-001303: No active contexts for scope type org.apache.deltaspike.core.api.scope.WindowScoped -- I am running this in Tomcat not a full blown J2EE AS - could that be the issue ? On Mon, Feb 1, 2016 at 4:04 PM, Gerhard Petracek <gpetra...@apache.org> wrote: > hi stephen, > > codi restores the window-id once it's needed and ds restores it e.g. at > the beginning of a faces-request. > -> > inject and use WindowContext (or use BeanProvider#getContextualReference > or even better in this case BeanProvider#getDependent). > (WindowContext allows you to manage the window-id manually.) > > regards, > gerhard > > > > 2016-02-01 21:32 GMT+01:00 Stephen More <stephen.m...@gmail.com>: > >> I have a MyFaces CODI application that utilizes WindowScoped beans. ( >> Session per tab - so thankful for that. ) >> >> I have been able to create url links that navigate to jsf pages using a >> servlet. ( >> >> http://balusc.omnifaces.org/2006/06/communication-in-jsf.html#AccessingTheFacesContextInsideHttpServletOrFilter >> ) >> >> protected void service(HttpServletRequest request,HttpServletResponse >> response) throws ServletException, IOException >> { >> javax.faces.context.FacesContext context = FacesUtil.getFacesContext( >> request, response ); >> TabInfo tabInfo = context.getApplication().evaluateExpressionGet( context, >> "#{tabInfo}", TabInfo.class ); >> tabInfo.setImportantInfo( ii ); >> >> javax.servlet.RequestDispatcher dispatcher = >> getServletContext().getRequestDispatcher( "/detail.jsf" ); >> dispatcher.forward( request, response ); >> } >> >> Everything has been working flawlessly. >> >> When I try to achieve the exact same feature using DeltaSpike, tabInfo >> will >> come back null. >> >> When I try: >> TabInfo tabInfo = (TabInfo)application.createValueBinding( >> "#{tabInfo}" ).getValue( context ); >> the following will show up in error logs: >> "org.jboss.weld.context.ContextNotActiveException: WELD-001303: No >> active contexts for scope type >> org.apache.deltaspike.core.api.scope.WindowScoped" >> >> >> I appreciate any help you can provide. >> -Thanks >> > >