0 Replies Latest reply on Oct 24, 2008 8:09 PM by Juan Ignacio Garzon

    Property not found on bean

    Juan Ignacio Garzon Newbie

      I'm using jboss-seam-2.1.0.GA on a jboss-4.2.2.GA application server.


      The application is deploying without any errors.


      When I access a page I'm getting this exception:



      javax.el.ELException: /index.xhtml: Property 'iniciarRegistro' not found on type org.javassist.tmp.java.lang.Object_$$_javassist_3
           at com.sun.facelets.compiler.AttributeInstruction.write(AttributeInstruction.java:53)
           at com.sun.facelets.compiler.UIInstructions.encodeBegin(UIInstructions.java:39)
           at org.ajax4jsf.renderkit.RendererBase.renderChild(RendererBase.java:280)
           at org.ajax4jsf.renderkit.RendererBase.renderChildren(RendererBase.java:262)
           at org.richfaces.renderkit.html.PanelRenderer.doEncodeChildren(PanelRenderer.java:220)
           at org.richfaces.renderkit.html.PanelRenderer.doEncodeChildren(PanelRenderer.java:215)
           at org.ajax4jsf.renderkit.RendererBase.encodeChildren(RendererBase.java:121)
           at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:812)
           at javax.faces.component.UIComponent.encodeAll(UIComponent.java:886)


      This application was working with a previous version of seam, but I recently migrated to Maven (with this migration I changed to seam 2.1.0), so this could be a configuration issue.


      The session bean that has the property is implementing a @Local interface with the method.


      I'm confused because two things:


      1 - iniciarRegistro is an action method, not a property. This is the code involved:


      <s:link id="register" action="#{abmUsuario.iniciarRegistro}">
         <h:outputText value="#{messages['index.registrarme']}" escape="false" />
      </s:link>


      @Local
      public interface ABMUsuario {
           void iniciarRegistro();
              ....
      }


      @Stateful
      @Name("abmUsuario")
      @Scope(ScopeType.CONVERSATION)
      public class ABMUsuarioAction implements ABMUsuario {
              @Begin(nested = true)
           public void iniciarRegistro() {
           }
      
              ....
      }


      2 - I don't know why, but it seams that javassist is creating a proxy around an java.lang.Object instead of the ABMUsuario, look the exception detail: org.javassist.tmp.java.lang.Object_$$_javassist_3 Am i Wrong?


      Thanks a lot for your help!