[ 
https://issues.jboss.org/browse/SEAM-40?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dan Allen resolved SEAM-40.
---------------------------

    Resolution: Done


These problems have been resolved. However, please note that there are two 
outstanding issues that appear to be bugs in GlassFish 3.1:

1. interceptors don't get enabled on every deployment; it appears random; 
you'll notice when they aren't because the footer will report the conversation 
is transient on the hotel detail page

2. input elements inside composite components don't see their parent form, even 
though it is there and the form works; you get an error message which displays 
above the form when this happens

> seam-booking does not work correctly with Glassfish 3.1
> -------------------------------------------------------
>
>                 Key: SEAM-40
>                 URL: https://issues.jboss.org/browse/SEAM-40
>             Project: Seam 3
>          Issue Type: Bug
>          Components: Shared Examples
>         Environment: Affects Seam 3 CR2
>            Reporter: Martin Gencur
>            Assignee: Dan Allen
>             Fix For: 3.0.0.Final
>
>
> I was able to deploy the application using the following steps but the 
> application does not work correctly.
> 0. See 
> http://seamframework.org/Community/SeamFacesPersistenceServletCatchProduceNullPointerException
>  discussion for more details, as those issues appear to apply also to the CR2
> 1. add the line
> <jvm-options>-Djboss.i18n.generate-proxies=true</jvm-options>
>    to glassfish3/glassfish/domains/domain1/config/domain.xml to the existing 
> <java-config> element inside the <config name="server-config"> element
> 2. replace weld-osgi-bundle.jar in glassfish3/glassfish/modules/ with the one 
> from http://java.net/jira/browse/GLASSFISH-15721
> 3. uncomment these lines in src/main/resources/META-INF/persistence.xml:
> <property name="eclipselink.ddl-generation" value="drop-and-create-tables"/>
> <property name="eclipselink.logging.level" value="FINE"/>
> 4. package the application: "mvn clean package"
> 5. remove or comment out the following lines from in 
> target/seam-booking.war/WEB-INF/lib/seam-servlet-3.0.0.CR1.jar/META-INF/web-fragment.xml:
> <ordering>
>    <after>
>      <name>WeldServlet</name>
>    </after>
>    <before>
>      <others/>
>    </before>
> </ordering>
> 6. install Hibernate into Glassfish according to what is written in 
> readme.txt in the example's folder
> 7. start a database and glassfish itself:
>  $GLASSFISH_HOME/bin/asadmin start-database
>  $GLASSFISH_HOME/bin/asadmin start-domain domain1
> 8. deploy the app via Glassfish admin console
> Now it is possible to login, change my accounts/passwords/ logout, search for 
> hotels, but when I try to show some hotel's details I get this exception:
> [#|2011-03-10T13:55:06.073+0100|SEVERE|glassfish3.1|javax.enterprise.resource.webcontainer.jsf.application|_ThreadID=31;_ThreadName=Thread-1;|Error
>  Rendering View[/hotel.xhtml]
> javax.faces.FacesException: javax.el.ELException: 
> /resources/components/model/displayHotel.xhtml @15,62 
> value="#{cc.attrs.value.name}": 
> org.jboss.weld.exceptions.IllegalProductException: WELD-000052 Cannot return 
> null from a non-dependent producer method:  [method] @Produces @RequestScoped 
> @Named public 
> org.jboss.seam.examples.booking.booking.BookingAgent.getSelectedHotel()
>       at 
> javax.faces.component.UIComponentBase$AttributesMap.get(UIComponentBase.java:2360)
>       at 
> com.sun.faces.el.CompositeComponentAttributesELResolver$ExpressionEvalMap.get(CompositeComponentAttributesELResolver.java:345)
>       at javax.el.MapELResolver.getValue(MapELResolver.java:196)
>       at 
> com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
>       at 
> com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
>       at com.sun.el.parser.AstValue.getValue(AstValue.java:116)
>       at com.sun.el.parser.AstValue.getValue(AstValue.java:163)
>       at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:219)
>       at 
> org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:55)
>       at 
> com.sun.faces.facelets.el.ContextualCompositeValueExpression.getValue(ContextualCompositeValueExpression.java:156)
>       at 
> com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109)
>       at 
> javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194)
>       at 
> javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:182)
>       at javax.faces.component.UIOutput.getValue(UIOutput.java:169)
>       at 
> com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getValue(HtmlBasicInputRenderer.java:205)
>       at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.getCurrentValue(HtmlBasicRenderer.java:355)
>       at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeEnd(HtmlBasicRenderer.java:164)
>       at 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875)
>       at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:312)
>       at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:105)
>       at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845)
>       at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1756)
>       at 
> com.sun.faces.renderkit.html_basic.CompositeRenderer.encodeChildren(CompositeRenderer.java:78)
>       at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845)
>       at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
>       at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:105)
>       at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845)
>       at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1756)
>       at 
> com.sun.faces.renderkit.html_basic.CompositeRenderer.encodeChildren(CompositeRenderer.java:78)
>       at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845)
>       at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1756)
>       at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1759)
>       at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1759)
>       at 
> com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:401)
>       at 
> com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
>       at 
> com.ocpsoft.pretty.faces.application.PrettyViewHandler.renderView(PrettyViewHandler.java:161)
>       at 
> javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:288)
>       at 
> com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:121)
>       at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
>       at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
>       at javax.faces.webapp.FacesServlet.service(FacesServlet.java:410)
>       at 
> org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1534)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:215)
>       at com.ocpsoft.pretty.PrettyFilter.doFilter(PrettyFilter.java:112)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:215)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.doInvoke(ApplicationDispatcher.java:785)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:649)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:483)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.doDispatch(ApplicationDispatcher.java:454)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.dispatch(ApplicationDispatcher.java:350)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:300)
>       at com.ocpsoft.pretty.PrettyFilter.doFilter(PrettyFilter.java:103)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:215)
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
>       at 
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
>       at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
>       at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:98)
>       at 
> com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91)
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162)
>       at 
> org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:326)
>       at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:227)
>       at 
> com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:170)
>       at 
> com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:822)
>       at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:719)
>       at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1013)
>       at 
> com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
>       at 
> com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
>       at 
> com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
>       at 
> com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
>       at 
> com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
>       at 
> com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
>       at 
> com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
>       at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
>       at 
> com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
>       at 
> com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
>       at java.lang.Thread.run(Thread.java:619)
> Caused by: javax.el.ELException: 
> /resources/components/model/displayHotel.xhtml @15,62 
> value="#{cc.attrs.value.name}": 
> org.jboss.weld.exceptions.IllegalProductException: WELD-000052 Cannot return 
> null from a non-dependent producer method:  [method] @Produces @RequestScoped 
> @Named public 
> org.jboss.seam.examples.booking.booking.BookingAgent.getSelectedHotel()
>       at 
> com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:114)
>       at 
> javax.faces.component.UIComponentBase$AttributesMap.get(UIComponentBase.java:2358)
>       ... 79 more
> Caused by: org.jboss.weld.exceptions.IllegalProductException: WELD-000052 
> Cannot return null from a non-dependent producer method:  [method] @Produces 
> @RequestScoped @Named public 
> org.jboss.seam.examples.booking.booking.BookingAgent.getSelectedHotel()
>       at 
> org.jboss.weld.bean.AbstractProducerBean.checkReturnValue(AbstractProducerBean.java:256)
>       at 
> org.jboss.weld.bean.AbstractProducerBean.create(AbstractProducerBean.java:362)
>       at org.jboss.weld.context.AbstractContext.get(AbstractContext.java:121)
>       at 
> org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:99)
>       at 
> org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:87)
>       at 
> org.jboss.seam.examples.booking.model.org$jboss$weld$beanProducerMethod-org$jboss$seam$examples$booking$booking$BookingAgentmethod_getSelectedHotel()_$$_WeldClientProxy.getName(org$jboss$weld$beanProducerMethod-org$jboss$seam$examples$booking$booking$BookingAgentmethod_getSelectedHotel()_$$_WeldClientProxy.java)
>       at sun.reflect.GeneratedMethodAccessor614.invoke(Unknown Source)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>       at java.lang.reflect.Method.invoke(Method.java:597)
>       at javax.el.BeanELResolver.getValue(BeanELResolver.java:302)
>       at 
> com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
>       at 
> com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
>       at com.sun.el.parser.AstValue.getValue(AstValue.java:116)
>       at com.sun.el.parser.AstValue.getValue(AstValue.java:163)
>       at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:219)
>       at 
> org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:55)
>       at 
> com.sun.faces.facelets.el.ContextualCompositeValueExpression.getValue(ContextualCompositeValueExpression.java:156)
>       at 
> com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109)
>       ... 80 more
> Maybe it has something in common with an exception I got during the 
> application deployment (despite this I was able to partially work with the 
> application):
> [#|2011-03-10T13:37:21.896+0100|WARNING|glassfish3.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=92;_ThreadName=Thread-1;|StandardWrapperValve[FacesServlet]:
>  PWC1406: Servlet.service() for servlet FacesServlet threw exception
> org.jboss.seam.solder.beanManager.BeanManagerUnavailableException: Failed to 
> locate BeanManager using any of these providers: 
>       at 
> org.jboss.seam.solder.beanManager.BeanManagerLocator.getBeanManager(BeanManagerLocator.java:91)
>       at 
> org.jboss.seam.faces.event.SeamPreNavigationHandler.handleNavigation(SeamPreNavigationHandler.java:42)
>       at 
> com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:130)
>       at javax.faces.component.UICommand.broadcast(UICommand.java:315)
>       at 
> com.sun.webui.jsf.component.WebuiCommand.broadcast(WebuiCommand.java:166)
>       at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794)
>       at 
> javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259)
>       at 
> com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
>       at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
>       at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
>       at javax.faces.webapp.FacesServlet.service(FacesServlet.java:409)
>       at 
> org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1534)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:215)
>       at com.sun.webui.jsf.util.UploadFilter.doFilter(UploadFilter.java:223)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:215)
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
>       at 
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
>       at 
> org.apache.catalina.core.StandardPipeline.doChainInvoke(StandardPipeline.java:600)
>       at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:96)
>       at 
> com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91)
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162)
>       at 
> org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:326)
>       at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:227)
>       at 
> com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:228)
>       at 
> com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:822)
>       at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:719)
>       at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1013)
>       at 
> com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
>       at 
> com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
>       at 
> com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
>       at 
> com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
>       at 
> com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
>       at 
> com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
>       at 
> com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
>       at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
>       at 
> com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
>       at 
> com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
>       at java.lang.Thread.run(Thread.java:619)

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
_______________________________________________
seam-issues mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/seam-issues

Reply via email to