12 Replies Latest reply on Aug 18, 2009 8:50 AM by ajanz

    statusmessages not found on type...

    ajanz
      i am getting following error when clicking any commandbutton on my page

      14:06:23,012 WARN  [ExceptionFilter] exception root cause
      javax.el.ELException: /layout/edittabledata.xhtml @26,116 binding="#{Pag
      e.rowdatagrid}": Error writing 'rowdatagrid' on type org.javassist.tmp.java.lang
      .Object_$$_javassist_2
              at com.sun.facelets.el.TagValueExpression.setValue(TagValueExpression.ja
      va:101)
              at com.sun.faces.lifecycle.RestoreViewPhase.doPerComponentActions(Restor
      eViewPhase.java:240)
              at com.sun.faces.lifecycle.RestoreViewPhase.doPerComponentActions(Restor
      eViewPhase.java:245)
              at com.sun.faces.lifecycle.RestoreViewPhase.doPerComponentActions(Restor
      eViewPhase.java:245)
              at com.sun.faces.lifecycle.RestoreViewPhase.doPerComponentActions(Restor
      eViewPhase.java:245)
              at com.sun.faces.lifecycle.RestoreViewPhase.doPerComponentActions(Restor
      eViewPhase.java:245)
              at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.jav
      a:195)
              at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
              at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.jav
      a:104)
              at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)

              at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
      icationFilterChain.java:290)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
      ilterChain.java:206)
              at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter
      .java:83)
              at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:40)
              at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter
      .java:69)
              at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)
              at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter
      .java:69)
              at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
              at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter
      .java:69)
              at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
              at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter
      .java:69)
              at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)

              at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
              at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFil
      ter.java:368)
              at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:495)
              at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
              at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter
      .java:69)
              at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
              at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter
      .java:69)
              at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
      icationFilterChain.java:235)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
      ilterChain.java:206)
              at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFi
      lter.java:96)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
      icationFilterChain.java:235)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
      ilterChain.java:206)
              at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
      alve.java:230)
              at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
      alve.java:175)
              at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(Securit
      yAssociationValve.java:182)
              at org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authentica
      torBase.java:432)
              at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValv
      e.java:84)
              at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
      ava:127)
              at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
      ava:102)
              at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedC
      onnectionValve.java:157)
              at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
      ve.java:109)
              at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
      a:262)
              at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
      :844)
              at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
      ss(Http11Protocol.java:583)
              at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:44
      6)
              at java.lang.Thread.run(Thread.java:619)
      Caused by: javax.ejb.EJBTransactionRolledbackException: Property 'statusMessages
      ' not found on type org.jboss.seam.Namespace
              at org.jboss.ejb3.tx.Ejb3TxPolicy.handleInCallerTx(Ejb3TxPolicy.java:87)

              at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:130)
              at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java
      :195)
              at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.
      java:101)
              at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInt
      erceptor.java:95)
              at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.
      java:101)
              at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulIn
      stanceInterceptor.java:83)
              at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.
      java:101)
              at org.jboss.aspects.security.AuthenticationInterceptor.invoke(Authentic
      ationInterceptor.java:77)
              at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3Auth
      enticationInterceptor.java:110)
              at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.
      java:101)
              at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterce
      ptor.java:46)
              at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.
      java:101)
              at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(Asynchrono
      usInterceptor.java:106)
              at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.
      java:101)
              at org.jboss.ejb3.stateful.StatefulContainer.localInvoke(StatefulContain
      er.java:206)
              at org.jboss.ejb3.stateful.StatefulLocalProxy.invoke(StatefulLocalProxy.
      java:119)
              at $Proxy100.setRowdatagrid(Unknown Source)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
      java:39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
      sorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
              at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocation
      Context.java:31)
              at org.jboss.seam.intercept.ClientSideInterceptor$1.proceed(ClientSideIn
      terceptor.java:76)
              at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocation
      Context.java:56)
              at org.jboss.seam.ejb.RemoveInterceptor.aroundInvoke(RemoveInterceptor.j
      ava:43)
              at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocation
      Context.java:68)
              at org.jboss.seam.core.SynchronizationInterceptor.aroundInvoke(Synchroni
      zationInterceptor.java:32)
              at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocation
      Context.java:68)
              at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:
      107)
              at org.jboss.seam.intercept.ClientSideInterceptor.invoke(ClientSideInter
      ceptor.java:54)
              at org.javassist.tmp.java.lang.Object_$$_javassist_2.setRowdatagrid(Obje
      ct_$$_javassist_2.java)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
      java:39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
      sorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              at javax.el.BeanELResolver.setValue(BeanELResolver.java:108)
              at javax.el.CompositeELResolver.setValue(CompositeELResolver.java:68)
              at com.sun.faces.el.FacesCompositeELResolver.setValue(FacesCompositeELRe
      solver.java:100)
              at org.jboss.el.parser.AstPropertySuffix.setValue(AstPropertySuffix.java
      :73)
              at org.jboss.el.parser.AstValue.setValue(AstValue.java:84)
              at org.jboss.el.ValueExpressionImpl.setValue(ValueExpressionImpl.java:24
      9)
              at com.sun.facelets.el.TagValueExpression.setValue(TagValueExpression.ja
      va:93)
              ... 49 more
      Caused by: javax.el.PropertyNotFoundException: Property 'statusMessages' not fou
      nd on type org.jboss.seam.Namespace
              at javax.el.BeanELResolver$BeanProperties.get(BeanELResolver.java:193)
              at javax.el.BeanELResolver$BeanProperties.access$400(BeanELResolver.java
      :170)
              at javax.el.BeanELResolver.property(BeanELResolver.java:279)
              at javax.el.BeanELResolver.getValue(BeanELResolver.java:60)
              at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
              at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELRe
      solver.java:72)
              at org.jboss.el.parser.AstPropertySuffix.getValue(AstPropertySuffix.java
      :53)
              at org.jboss.el.parser.AstValue.getValue(AstValue.java:67)
              at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:18
      6)
              at org.jboss.seam.core.Expressions$1.getValue(Expressions.java:112)
              at org.jboss.seam.Component.getInstanceFromFactory(Component.java:2031)
              at org.jboss.seam.Component.getInstance(Component.java:1978)
              at org.jboss.seam.Component.getInstance(Component.java:1950)
              at org.jboss.seam.Component.getInstance(Component.java:1944)
              at org.jboss.seam.Component.getInstanceInAllNamespaces(Component.java:23
      11)
              at org.jboss.seam.Component.getValueToInject(Component.java:2263)
              at org.jboss.seam.Component.injectAttributes(Component.java:1703)
              at org.jboss.seam.Component.inject(Component.java:1521)
              at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterc
      eptor.java:61)
              at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocation
      Context.java:68)
              at org.jboss.seam.core.ConversationInterceptor.aroundInvoke(Conversation
      Interceptor.java:65)
              at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocation
      Context.java:68)
              at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodConte
      xtInterceptor.java:44)
              at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocation
      Context.java:68)
              at org.jboss.seam.persistence.EntityManagerProxyInterceptor.aroundInvoke
      (EntityManagerProxyInterceptor.java:29)
              at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocation
      Context.java:68)
              at org.jboss.seam.persistence.HibernateSessionProxyInterceptor.aroundInv
      oke(HibernateSessionProxyInterceptor.java:31)
              at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocation
      Context.java:68)
              at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:
      107)
              at org.jboss.seam.intercept.SessionBeanInterceptor.aroundInvoke(SessionB
      eanInterceptor.java:50)
              at sun.reflect.GeneratedMethodAccessor106.invoke(Unknown Source)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
      sorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationCo
      ntextImpl.java:118)
              at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3Int
      erceptorsInterceptor.java:63)
              at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.
      java:101)
              at org.jboss.ejb3.entity.ExtendedPersistenceContextPropagationIntercepto
      r.invoke(ExtendedPersistenceContextPropagationInterceptor.java:57)
              at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.
      java:101)
              at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invok
      e(TransactionScopedEntityManagerInterceptor.java:54)
              at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.
      java:101)
              at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsI
      nterceptor.java:47)
              at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.
      java:101)
              at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
              ... 91 more


      The bean is defined as

      @Stateful
      @Name("Page")
      @Scope(value = ScopeType.SESSION)

      and the component referenced by binding

           HtmlPanelGroup rowdatagrid = new HtmlPanelGroup();

           public void setRowdatagrid(HtmlPanelGroup grid) {
                rowdatagrid = grid;

           }

           

           public HtmlPanelGroup getRowdatagrid() {
                return rowdatagrid;}

      i use seam 2.1.2

      any ideas where problem is?
        • 1. Re: statusmessages not found on type...
          lvdberg


          Property 'statusMessages' not found on type org.jboss.seam.Namespace



          I think you have a conflict EL is resolving stuff. Somewhere it ends up reading internal Seam-components. To start, give the component anothername (something like pageReference to see of that helps.



          • 2. Re: statusmessages not found on type...
            ajanz

            no ...doesn't help :-(

            • 3. Re: statusmessages not found on type...
              lvdberg

              It tries to read an attrribute statusMessages, is that your intention ?

              • 4. Re: statusmessages not found on type...
                ajanz
                but i don't have anywhere a property statusmessages ....

                only thing on page is

                               <a4j:outputPanel ajaxRendered="true" >
                     <h:messages id="tablemessages" style="color:red" />

                     
                     </a4j:outputPanel>
                • 5. Re: statusmessages not found on type...
                  lvdberg

                  You code states that on line 26, column 116 you have an expression which tries to bind Page.rowdatagrid which results in an object.



                  14:06:23,012 WARN [ExceptionFilter] exception root cause
                  javax.el.ELException: /layout/edittabledata.xhtml @26,116 binding="#{Pag
                  e.rowdatagrid}": Error writing 'rowdatagrid' on type org.javassist.tmp.java.lang
                  .Object_$$_javassist_2
                  
                  
                  


                  The root cause is not finding the attribute statusMessages. Sometimes it get's these funny warning, but that's basically what the EL-interpreter finds. So if the the bean is properly annotated (name, jndi name, seam interceptor) things should work. If you send some more code of the page and bean, people can do some additional digging.


                  • 6. Re: statusmessages not found on type...
                    ajanz
                    ok line 26 of edittabledata.xhtml is

                    <h:panelGroup id="idrowdata" layout="block" style="background-color:white" binding="#{WorkflowPage.rowdatagrid}"/>

                    Interface of page is

                    @Local
                    public interface Page  {

                         public HtmlPanelGroup getRowdatagrid();

                         public void setRowdatagrid(HtmlPanelGroup grid);

                    }

                    Bean

                    @Stateful
                    @Name("Page")
                    @Scope(value = ScopeType.SESSION)
                    public class PageBean implements Page {

                         @In(required = false)
                         FacesMessages facesMessages;


                         HtmlPanelGroup rowdatagrid = new HtmlPanelGroup();

                         public void setRowdatagrid(HtmlPanelGroup grid) {
                              rowdatagrid = grid;

                         }


                         public HtmlPanelGroup getRowdatagrid() {
                               return rowdatagrid;
                              }
                    }

                    • 7. Re: statusmessages not found on type...
                      lvdberg

                      The EL states WorkFlowPage while your bean is called page.


                      I assume that you've configured the SeamInterceptor correctly and you're using jndi-name.


                      (defining the seam-interceptor is done in ejb-jar.xml and you have defined jndi-pattern in components.xml)


                      • 8. Re: statusmessages not found on type...
                        ajanz
                        ok .sorry it's page not workflowpage

                        contents of ejb-jar.xml

                        <?xml version="1.0" encoding="UTF-8"?>
                        <ejb-jar xmlns="http://java.sun.com/xml/ns/javaee"
                                 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                                 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd"
                                 version="3.0">
                                
                           <interceptors>
                              <interceptor>
                                 <interceptor-class>org.jboss.seam.ejb.SeamInterceptor</interceptor-class>
                              </interceptor>
                           </interceptors>
                          
                           <assembly-descriptor>
                              <interceptor-binding>
                                 <ejb-name>*</ejb-name>
                                 <interceptor-class>org.jboss.seam.ejb.SeamInterceptor</interceptor-class>
                              </interceptor-binding>
                           </assembly-descriptor>
                          
                        </ejb-jar>



                        contents of components.xml

                        <?xml version="1.0" encoding="UTF-8"?>
                        <components xmlns="http://jboss.com/products/seam/components"
                                    xmlns:core="http://jboss.com/products/seam/core"
                                    xmlns:persistence="http://jboss.com/products/seam/persistence"
                                    xmlns:drools="http://jboss.com/products/seam/drools"
                                    xmlns:bpm="http://jboss.com/products/seam/bpm"
                                    xmlns:security="http://jboss.com/products/seam/security"
                                    xmlns:mail="http://jboss.com/products/seam/mail"
                                    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                                    xsi:schemaLocation=
                                        "http://jboss.com/products/seam/core http://jboss.com/products/seam/core-2.0.xsd
                                         http://jboss.com/products/seam/persistence http://jboss.com/products/seam/persistence-2.0.xsd
                                         http://jboss.com/products/seam/drools http://jboss.com/products/seam/drools-2.0.xsd
                                         http://jboss.com/products/seam/bpm http://jboss.com/products/seam/bpm-2.0.xsd
                                         http://jboss.com/products/seam/security http://jboss.com/products/seam/security-2.0.xsd
                                         http://jboss.com/products/seam/mail http://jboss.com/products/seam/mail-2.0.xsd
                                         http://jboss.com/products/seam/components http://jboss.com/products/seam/components-2.0.xsd">

                           <core:init debug="false" jndi-pattern="@jndiPattern@"/>
                            
                           <core:manager concurrent-request-timeout="500"
                                         conversation-timeout="120000"
                                         conversation-id-parameter="cid"
                                         parent-conversation-id-parameter="pid"/>
                           
                           <persistence:managed-persistence-context name="entityManager"
                                                             auto-create="true"
                                              persistence-unit-jndi-name="java:/myappEntityManagerFactory"/>                         
                              <security:identity authenticate-method="#{authenticator.authenticate}" remember-me="true"/>

                          
                           <mail:mail-session host="localhost" port="2525" username="test" password="test" />
                               
                           <!-- For use with jBPM pageflow or process management -->
                           <!-- 
                           <bpm:jbpm>
                              <bpm:process-definitions></bpm:process-definitions>
                              <bpm:pageflow-definitions></bpm:pageflow-definitions>
                           </bpm:jbpm>
                           -->
                           <component class="org.jboss.seam.web.MultipartFilter">
                          <property name="createTempFiles">true</property>
                          <property name="maxRequestSize">100000000</property>
                        </component>
                          
                             
                        </components>
                        • 9. Re: statusmessages not found on type...
                          ajanz
                          sorry and

                          jndiPattern= #{ejbName}/local

                          in components.properties

                          • 10. Re: statusmessages not found on type...
                            lvdberg

                            Why are you using



                            HtmlPanelGroup rowdatagrid = new HtmlPanelGroup();



                            If the variable get's injnecte with binding.


                            I see that you're using JBPM so why don't you use a BusinessScope ?


                            • 11. Re: statusmessages not found on type...
                              ajanz

                              i also saw this and changed to


                              HtmlPanelGroup rowdatagrid;


                              but error further occurs.



                              yes i use jbpm but without seam....may be i will integrate ....but not at the moment


                              • 12. Re: statusmessages not found on type...
                                ajanz
                                seams that HtmlPanelGroup rowdatagrid = new HtmlPanelGroup();

                                was the problem....

                                now it works.