12 Replies Latest reply on Dec 9, 2005 6:35 AM by manuel.gentile

    Problem with conversation!! HELP

    manuel.gentile

      I have this Session Bean Stateful

      @Local
      public interface Report {
      public String cercaComune();
      public void destroy();
      }

      @Stateful
      @Name("report")
      @Interceptor(SeamInterceptor.class)
      public class ReportImpl implements Report, Serializable {
      protected static final Logger log = Logger.getLogger(ReportImpl.class);
      @PersistenceContext
      protected EntityManager em;

      public String cercaComune() {
      log.info("Query comune:" + "");//queryComune.getNome());
      List comuni = em.createQuery("from Comune c where c.nome like :search")
      .setParameter("search", "%")//queryComune.getNome() + "%")
      .setMaxResults(10)
      .getResultList();
      return "redisplay";
      }

      @Destroy
      @Remove
      public void destroy() {
      log.info("destroyed");
      }
      }

      immediately after i call report.cercaComune
      i obtain
      18:21:26,863 INFO [ReportImpl] Query comune:
      18:21:26,972 INFO [ReportImpl] destroyed

      WHY The conversation are removed from the context??????

      Please!!!! Help ME

        • 1. Re: Problem with conversation!! HELP
          gavin.king

          I don't see any @Begin annotation.

          • 2. Re: Problem with conversation!! HELP
            manuel.gentile

            is @Begin mandatory?

            • 3. Re: Problem with conversation!! HELP
              manuel.gentile

              sorry....

              and can i have multiple @Begin methods????

              • 4. Re: Problem with conversation!! HELP
                gavin.king

                You need it if you want a long-running conversation :)

                Yes, you can have as many as you like.

                • 5. Re: Problem with conversation!! HELP
                  manuel.gentile

                  ok just fine! now it works.

                  but .... i have another problem

                  after i stop for few second the i have this error
                  and i must refresh the page for resolve the problem??

                  Why?


                  19:10:09,839 ERROR [[Faces Servlet]] Servlet.service() for servlet Faces Servlet
                  threw exception
                  java.lang.NullPointerException
                  at org.apache.myfaces.context.servlet.ApplicationMap.getAttribute(Applic
                  ationMap.java:41)
                  at org.apache.myfaces.context.servlet.AbstractAttributeMap.get(AbstractA
                  ttributeMap.java:87)
                  at org.jboss.seam.contexts.WebApplicationContext.get(WebApplicationConte
                  xt.java:46)
                  at org.jboss.seam.contexts.Contexts.lookupInStatefulContexts(Contexts.ja
                  va:146)
                  at org.jboss.seam.Component.getInstance(Component.java:845)
                  at org.jboss.seam.Component.forName(Component.java:835)
                  at org.jboss.seam.Component.getInstance(Component.java:856)
                  at org.jboss.seam.core.Manager.instance(Manager.java:230)
                  at org.jboss.seam.jsf.SeamPhaseListener.restoreAnyConversationContext(Se
                  amPhaseListener.java:88)
                  at org.jboss.seam.jsf.SeamPhaseListener.afterPhase(SeamPhaseListener.jav
                  a:77)
                  at org.jboss.seam.jsf.SeamExtendedManagedPersistencePhaseListener.afterP
                  hase(SeamExtendedManagedPersistencePhaseListener.java:41)
                  at org.apache.myfaces.lifecycle.LifecycleImpl.informPhaseListenersAfter(
                  LifecycleImpl.java:536)
                  at org.apache.myfaces.lifecycle.LifecycleImpl.restoreView(LifecycleImpl.
                  java:164)
                  at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java
                  :66)

                  • 6. Re: Problem with conversation!! HELP
                    gavin.king

                    What are your conversation and session timeouts?

                    • 7. Re: Problem with conversation!! HELP
                      manuel.gentile

                      This is conversation timeout

                      <context-param>
                      <param-name>org.jboss.seam.core.manager.conversationTimeout</param-name>
                      <param-value>120000</param-value>
                      </context-param>

                      for the Session i did not set any value!

                      I turn back to a precedent version of Seam (not the last CVS) and after few second of inactivity i have

                      javax.servlet.ServletException: Could not start transaction
                      javax.faces.webapp.FacesServlet.service(FacesServlet.java:109)
                      org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(ExtensionsFilter.java:122)
                      org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)

                      root cause

                      java.lang.IllegalStateException: Could not start transaction
                      org.jboss.seam.jsf.SeamExtendedManagedPersistencePhaseListener.beforePhase(SeamExtendedManagedPersistencePhaseListener.java:30)
                      org.apache.myfaces.lifecycle.LifecycleImpl.informPhaseListenersBefore(LifecycleImpl.java:520)
                      org.apache.myfaces.lifecycle.LifecycleImpl.updateModelValues(LifecycleImpl.java:265)
                      org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:81)
                      javax.faces.webapp.FacesServlet.service(FacesServlet.java:94)
                      org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(ExtensionsFilter.java:122)
                      org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)


                      I think i have problem with the configuration.

                      Can you help me?







                      • 8. Re: Problem with conversation!! HELP
                        manuel.gentile

                        ... more information


                        i have seam.properties empty

                        this web.xml

                        <?xml version="1.0" encoding="UTF-8"?>
                        <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
                        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                        xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
                        <context-param>
                        <param-name>org.jboss.seam.core.manager.conversationTimeout</param-name>
                        <param-value>120000</param-value>
                        </context-param>
                        <context-param>
                        <param-name>org.jboss.seam.init.managedPersistenceContexts</param-name>
                        <param-value>bookingDatabase</param-value>
                        </context-param>
                        <context-param>
                        <param-name>bookingDatabase.persistenceUnitName</param-name>
                        <param-value>java:/EntityManagerFactories/bookingData</param-value>
                        </context-param>
                        <context-param>
                        <param-name>org.apache.myfaces.PRETTY_HTML</param-name>
                        <param-value>true</param-value>
                        </context-param>
                        <context-param>
                        <param-name>org.apache.myfaces.DETECT_JAVASCRIPT</param-name>
                        <param-value>false</param-value>
                        </context-param>
                        <context-param>
                        <param-name>org.apache.myfaces.ALLOW_JAVASCRIPT</param-name>
                        <param-value>true</param-value>
                        </context-param>
                        <context-param>
                        <param-name>org.apache.myfaces.AUTO_SCROLL</param-name>
                        <param-value>true</param-value>
                        </context-param>
                        <context-param>
                        <param-name>facelets.LIBRARIES</param-name>
                        <param-value>
                        /WEB-INF/my.taglib.xml;/WEB-INF/tomahawk.taglib.xml;/WEB-INF/sandbox.taglib.xml
                        </param-value>
                        </context-param>
                        <context-param>
                        <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
                        <param-value>client</param-value>
                        </context-param>
                        <context-param>
                        <param-name>facelets.DEVELOPMENT</param-name>
                        <param-value>true</param-value>
                        </context-param>
                        <context-param>
                        <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
                        <param-value>.xhtml</param-value>
                        </context-param>
                        <!--filter>
                        <filter-name>Seam Exception Filter</filter-name>
                        <filter-class>org.jboss.seam.servlet.SeamExceptionFilter</filter-class>
                        </filter-->

                        <filter-name>extensionsFilter</filter-name>
                        <filter-class>
                        org.apache.myfaces.component.html.util.ExtensionsFilter
                        </filter-class>
                        <init-param>
                        <param-name>uploadMaxFileSize</param-name>
                        <param-value>100m</param-value>
                        </init-param>
                        <init-param>
                        <param-name>uploadThresholdSize</param-name>
                        <param-value>100k</param-value>
                        </init-param>
                        <!-- <init-param>
                        <param-name>uploadRepositoryPath</param-name>
                        <param-value>/temp</param-value>
                        Set the path where the intermediary files will be stored.

                        </init-param>-->

                        <filter-mapping>
                        <filter-name>extensionsFilter</filter-name>
                        <url-pattern>/faces/*</url-pattern>
                        </filter-mapping>
                        <filter-mapping>
                        <filter-name>extensionsFilter</filter-name>
                        <url-pattern>*.jsf</url-pattern>
                        </filter-mapping>
                        <!--filter-mapping>
                        <filter-name>Seam Exception Filter</filter-name>
                        <url-pattern>*.jsf</url-pattern>
                        </filter-mapping-->

                        <listener-class>org.jboss.seam.servlet.SeamListener</listener-class>


                        <listener-class>
                        org.apache.myfaces.webapp.StartupServletContextListener
                        </listener-class>


                        <servlet-name>Faces Servlet</servlet-name>
                        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
                        <load-on-startup>1</load-on-startup>

                        <!-- Faces Servlet Mapping -->
                        <servlet-mapping>
                        <servlet-name>Faces Servlet</servlet-name>
                        <url-pattern>/faces/*</url-pattern>
                        </servlet-mapping>
                        <servlet-mapping>
                        <servlet-name>Faces Servlet</servlet-name>
                        <url-pattern>*.jsf</url-pattern>
                        </servlet-mapping>
                        </web-app>

                        this persistence.xml

                        <entity-manager>
                        bookingDatabase
                        org.hibernate.ejb.HibernatePersistence
                        <jta-data-source>java:/jemoDatasource</jta-data-source>




                        </entity-manager>



                        and this jboss-bean.xml

                        <?xml version="1.0" encoding="UTF-8"?>

                        <deployment xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                        xsi:schemaLocation="urn:jboss:bean-deployer bean-deployer_1_0.xsd"
                        xmlns="urn:jboss:bean-deployer">


                        org.postgresql.Driver
                        jdbc:postgresql://localhost/jemoJboss
                        postgres
                        java:/jemoDatasource
                        0
                        10
                        1000
                        100000















                        with myfaces 1.1.1 , last cvs seam, jboss 4.0.3 SP1

                        • 9. Re: Problem with conversation!! HELP
                          manuel.gentile

                          After this error the application crash and i need to restart Jboss

                          • 10. Re: Problem with conversation!! HELP
                            manuel.gentile

                            Sorry Gavin, i need help!

                            the problem it's similar to http://www.jboss.com/index.html?module=bb&op=viewtopic&t=73206

                            Thank you!!!!

                            • 11. Re: Problem with conversation!! HELP

                              I am getting this too!

                              Did you find a solution?

                              • 12. Re: Problem with conversation!! HELP
                                manuel.gentile

                                not yet, but i think it's correlated to the passivation!

                                http://www.jboss.com/index.html?module=bb&op=viewtopic&t=73702

                                if do u have news post it!!!!