9 Replies Latest reply on Sep 24, 2009 3:51 AM by aravindkosuri

    Target Unreachable when saving the data back

      Hi All,


      I need some help with seam storing the data. I have written a bean class here is the code




         @Out @In(required=false)
         private GwpsProofWorkflow ccList;   
      
         public void authorList()
         {
              log.info("hellooooooo"+proof);     
              ccListSelected = new ArrayList();
              GwpsProofWorkflow proofWorkflow = (GwpsProofWorkflow)entityManager.createQuery("FROM GwpsProofWorkflow gwps where gwps.gwpsProof.proofId=:proof_id" +
                       " and reviewOrder=:reviewOrder")
                                 .setParameter("proof_id", proof)
                                 .setParameter("reviewOrder", reviewOrder)
                           .getSingleResult();
             
             ccList = proofWorkflow;
         }   
      



      and my xhtml looks like this




        <h:form id="authorListForm" styleClass="edit"> 
       <rich:panel>
              <f:facet name="header">Email Details</f:facet>
              
              <s:decorate id="toAddress" template="layout/display.xhtml">
                  <ui:define name="label">To</ui:define>
                  <h:outputText value="#{ccList.gwpsEmailLog.toAddress}"/>
              </s:decorate>
            
              <s:decorate id="subject" template="layout/display.xhtml">
                  <ui:define name="label">Subject</ui:define>
                  <h:inputText id="sub"
                         required="true"
                          value="#{ccList.gwpsEmailLog.emailSubject}"
                           size="20">              
                 </h:inputText>            
              </s:decorate>
      
              <s:decorate id="emailBody" template="layout/display.xhtml">
                  <ui:define name="label">Email Body</ui:define>
                  <h:inputText id="body"
                         required="true"
                          value="#{ccList.gwpsEmailLog.emailBody}"
                           size="20">              
                 </h:inputText>  
                  <h:outputText value="#{ccList.gwpsEmailLog.emailBody}"/>
              </s:decorate>
      
              <div style="clear:both"/>
      
          </rich:panel>
      
          <div class="actionButtons">
      
              <h:commandButton id="saveCC" value="Save Data"
                                   action="#{AuthorList.saveCcList}"/>
      
              <s:button view="/#{empty gwpsPrivilegeFrom ? 'GwpsPrivilegeList' : gwpsPrivilegeFrom}.xhtml"
                          id="done"
                       value="Done"/>
      
          </div>
           </h:form>
      



      I could display the data perfectly fine but when I hit the save data it says target unreachable, I know its a simple error, but I couldn't figure it out. I am a newbie. Help me out.


      Thanks.




        • 1. Re: Target Unreachable when saving the data back

          Here is the Error I Get




          javax.servlet.ServletException: /authorList.xhtml @26,32 value="#{ccList.gwpsEmailLog.emailSubject}": Target Unreachable, identifier 'ccList' resolved to null
               javax.faces.webapp.FacesServlet.service(FacesServlet.java:277)
               org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
               org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:40)
               org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
               org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)
               org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
               org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
               org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
               org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
               org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
               org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
               org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
               org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:390)
               org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:517)
               org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
               org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
               org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:60)
               org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
               org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
               org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
          
          root cause
          
          javax.el.PropertyNotFoundException: /authorList.xhtml @26,32 value="#{ccList.gwpsEmailLog.emailSubject}": Target Unreachable, identifier 'ccList' resolved to null
               com.sun.facelets.el.TagValueExpression.getType(TagValueExpression.java:62)
               com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getConvertedValue(HtmlBasicInputRenderer.java:92)
               javax.faces.component.UIInput.getConvertedValue(UIInput.java:942)
               javax.faces.component.UIInput.validate(UIInput.java:868)
          
          



          • 2. Re: Target Unreachable when saving the data back
            trunikov.dmitry.trunikov.zoral.com.ua

            Try following declaration:




            @Out @In(required=false, create=true)
               private GwpsProofWorkflow ccList;



            • 3. Re: Target Unreachable when saving the data back

              Thank you I tried adding it and couldn't get now I get a swallowing Exception. I tried to follow this forum link


              http://seamframework.org/Community/PleaseHelpInAttributeRequiresNonnullValue


              Here is the code changed



               private GwpsProofWorkflow gwpsProofWorkflow = new GwpsProofWorkflow();   
              
                 public void authorList()
                 {
                      log.info("hellooooooo"+proof);     
                      ccListSelected = new ArrayList();
                      GwpsProofWorkflow proofWorkflow = (GwpsProofWorkflow)entityManager.createQuery("FROM GwpsProofWorkflow gwps where gwps.gwpsProof.proofId=:proof_id" +
                               " and reviewOrder=:reviewOrder")
                                         .setParameter("proof_id", proof)
                                         .setParameter("reviewOrder", reviewOrder)
                                   .getSingleResult();
                     
                      gwpsProofWorkflow = proofWorkflow;
                 }   
                    public void saveCcList()
                 {
                      //log.info("hellooooooo"+ccListSelected.size());
                      log.info(gwpsProofWorkflow.getCurrentTaskYn());
                      gwpsProofWorkflow = entityManager.merge(gwpsProofWorkflow);
                      entityManager.persist(gwpsProofWorkflow.getGwpsEmailLog());
                        
                    
                 }
              
                  @Out
                   public GwpsProofWorkflow getGwpsProofWorkflow() {
                        return gwpsProofWorkflow;
                   }
              
                   @In(required=false, create=true)
                   public void setGwpsProofWorkflow(GwpsProofWorkflow gwpsProofWorkflow) {
                        this.gwpsProofWorkflow = gwpsProofWorkflow;
                   }
              


              Here is my xhtml




              <rich:panel>
                      <f:facet name="header">Email Details</f:facet>
                      
                      <s:decorate id="toAddress" template="layout/edit.xhtml">
                          <ui:define name="label">To</ui:define>
                          <h:outputText value="#{gwpsProofWorkflow.gwpsEmailLog.toAddress}"/>
                      </s:decorate>
                    
                      <s:decorate id="subject" template="layout/edit.xhtml">
                          <ui:define name="label">Subject</ui:define>
                          <h:inputText id="currentTaskYn"
                                 required="true"
                                  value="#{gwpsProofWorkflow.currentTaskYn}"
                                   size="20">              
                         </h:inputText>            
                      </s:decorate>
              
                      <s:decorate id="emailBody" template="layout/edit.xhtml">
                          <ui:define name="label">Email Body</ui:define>
                          <h:inputText id="emailBody"
                                 required="true"
                                  value="#{gwpsProofWorkflow.gwpsEmailLog.emailBody}"
                                   size="20">              
                         </h:inputText>  
                          <h:outputText value="#{gwpsProofWorkflow.gwpsEmailLog.emailBody}"/>
                      </s:decorate>
                      <div style="clear:both"/>
                  </rich:panel>
              
                  <div class="actionButtons">
              
                      <s:button id="saveCC" value="Save Data"
                                           action="#{authorList.saveCcList}">
                                 <f:param name="proof" value="#{gwpsProofWorkflow.gwpsProof.proofId}" />   
                                 <f:param name="reviewOrder" value="#{gwpsProofWorkflow.reviewOrder}" />      
                      </s:button>
                  </div>
                   </h:form>
              
              



              Now I get the fowllowing Exception, I get the variable as null




              11:19:12,143 ERROR [SeamPhaseListener] swallowing exception
              javax.el.ELException: javax.ejb.EJBTransactionRolledbackException
                   at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:339)
                   at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:348)
                   at org.jboss.el.parser.AstPropertySuffix.invoke(AstPropertySuffix.java:58)
                   at org.jboss.el.parser.AstValue.invoke(AstValue.java:96)
                   at org.jboss.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
                   at org.jboss.seam.core.Expressions$2.invoke(Expressions.java:175)
                   at org.jboss.seam.navigation.Pages.callAction(Pages.java:692)
                   at org.jboss.seam.navigation.Pages.preRender(Pages.java:330)
                   at org.jboss.seam.jsf.SeamPhaseListener.preRenderPage(SeamPhaseListener.java:561)
                   at org.jboss.seam.jsf.SeamPhaseListener.beforeRenderResponse(SeamPhaseListener.java:472)
                   at org.jboss.seam.jsf.SeamPhaseListener.beforeServletPhase(SeamPhaseListener.java:148)
                   at org.jboss.seam.jsf.SeamPhaseListener.beforePhase(SeamPhaseListener.java:118)
                   at com.sun.faces.lifecycle.Phase.handleBeforePhase(Phase.java:214)
                   at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:96)
                   at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
                   at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
                   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.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(BaseFilter.java:390)
                   at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:517)
                   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:60)
                   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(ApplicationFilterChain.java:235)
                   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                   at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
                   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
                   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
                   at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
                   at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
                   at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
                   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
                   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
                   at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
                   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
                   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
                   at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
                   at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
                   at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
                   at java.lang.Thread.run(Thread.java:595)
              Caused by: javax.ejb.EJBTransactionRolledbackException
                   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(TxPropagationInterceptor.java:95)
                   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                   at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62)
                   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                   at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
                   at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:110)
                   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                   at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
                   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                   at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
                   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                   at org.jboss.ejb3.stateless.StatelessContainer.localInvoke(StatelessContainer.java:240)
                   at org.jboss.ejb3.stateless.StatelessContainer.localInvoke(StatelessContainer.java:210)
                   at org.jboss.ejb3.stateless.StatelessLocalProxy.invoke(StatelessLocalProxy.java:84)
                   at $Proxy130.saveCcList(Unknown Source)
                   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                   at java.lang.reflect.Method.invoke(Method.java:585)
                   at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
                   at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:32)
                   at org.jboss.seam.intercept.ClientSideInterceptor$1.proceed(ClientSideInterceptor.java:76)
                   at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
                   at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
                   at org.jboss.seam.intercept.ClientSideInterceptor.invoke(ClientSideInterceptor.java:54)
                   at org.javassist.tmp.java.lang.Object_$$_javassist_seam_2.saveCcList(Object_$$_javassist_seam_2.java)
                   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                   at java.lang.reflect.Method.invoke(Method.java:585)
                   at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:335)
                   ... 54 more
              Caused by: java.lang.NullPointerException
                   at com.cadmus.gwps.action.AuthorListBean.saveCcList(AuthorListBean.java:84)
                   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                   at java.lang.reflect.Method.invoke(Method.java:585)
                   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
                   at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
                   at org.jboss.seam.intercept.EJBInvocationContext.proceed(EJBInvocationContext.java:44)
                   at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
                   at org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:28)
                   at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                   at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:77)
                   at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                   at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44)
                   at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                   at org.jboss.seam.persistence.EntityManagerProxyInterceptor.aroundInvoke(EntityManagerProxyInterceptor.java:29)
                   at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                   at org.jboss.seam.persistence.HibernateSessionProxyInterceptor.aroundInvoke(HibernateSessionProxyInterceptor.java:30)
                   at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
                   at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
                   at org.jboss.seam.intercept.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:50)
                   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                   at java.lang.reflect.Method.invoke(Method.java:585)
                   at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:118)
                   at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
                   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                   at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
                   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                   at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
                   at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                   at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
                   ... 87 more
              



              I don't know what was wrong here





              • 4. Re: Target Unreachable when saving the data back

                when I change the stateless bean to stateful and the scope as session, I get the value of the variable gwpsProofWorkflow but it is not reflected to the value that I have entered on the xhtml. I am not sure what was wrong here, help me out.


                Thanks.

                • 5. Re: Target Unreachable when saving the data back

                  I need the provision to edit the data that is already stored. So i am calling a method from pages.xml which retrieves the data to a variable which is outjected.


                  I am displaying the data in the in the html text forms which can be edited by the user, when the user clicks the data it should be saved back to the same tables.


                  Can we use bijection in this manner, If so can someone tell me if I am doing something wrong with the above code.


                  Thanks


                  • 6. Re: Target Unreachable when saving the data back
                    kragoth

                    Please posts the relevant sections of your pages.xml and also please post the entire Seam bean code (except for the imports) so we can see the @Name annotation and the @Scope.


                    Because I can't see in the above example what is calling this method.


                    public void authorList()
                       {
                            log.info("hellooooooo"+proof);     
                            ccListSelected = new ArrayList();
                            GwpsProofWorkflow proofWorkflow = (GwpsProofWorkflow)entityManager.createQuery("FROM GwpsProofWorkflow gwps where gwps.gwpsProof.proofId=:proof_id" +
                                     " and reviewOrder=:reviewOrder")
                                               .setParameter("proof_id", proof)
                                               .setParameter("reviewOrder", reviewOrder)
                                         .getSingleResult();
                           
                            gwpsProofWorkflow = proofWorkflow;
                       }   
                    

                    • 7. Re: Target Unreachable when saving the data back
                      trunikov.dmitry.trunikov.zoral.com.ua

                      Jenny Jasti wrote on Sep 17, 2009 17:29:


                      when I change the stateless bean to stateful and the scope as session, I get the value of the variable gwpsProofWorkflow but it is not reflected to the value that I have entered on the xhtml. I am not sure what was wrong here, help me out.

                      Thanks.


                      it seems that when you submit the form the component is not found, so seam instantiates a new one. the new component is not initialized so you code throws the exception (as some members in the component have null values).
                      from your posts i made conclusion that the component is a stateless bean, so i assume that you likely don't use conversation. in this case you should check your page.xml file and make sure that it has instructions to assign entity's id to a component's member from a http parameter (see instruction param) and calls method which will initialize the component (see instruction action). In such way when you submit the form the seam assigngs entity's id to member in the component and then calls method which uses that memeber (entity's id) to initialize component (load entity by id) and then calls action method.

                      • 8. Re: Target Unreachable when saving the data back

                        I took your suggestion and added the entityId to the pages.xml and even here it displayed the data perfectly fine for editing but when I save the data back by editing it is not taking the value which I have changed.


                        Here is the code I have added to pages.xml


                        <page view-id="/authorList.xhtml">
                            <param name="gwpsProofWorkflowId" value="#{workflow.proofWorkflowId}" converterId="javax.faces.Long"/>     
                             <action execute= "#{authorList.authorList}"/>
                              <navigation from-action="#{authorList.saveCcList}">
                                  <redirect view-id="/hello.xhtml"/>         
                              </navigation>     
                            </page>
                        


                        My scope is session and my bean Name is authorList. Can some one help me out, i am out of options not.


                        • 9. Re: Target Unreachable when saving the data back
                          aravindkosuri

                          Seam UI control s:button does not submit an HTML form when included on the page. Due to this reason either you get swallowing exception or unmodified data back to your action class when your bean scope is session.


                          Use <h:commandButton/> along with <s:conversationId/> tag to resolve this issue.