2 Replies Latest reply on Jul 16, 2007 2:17 PM by titou09

    Batch process with seam: what is the best approach?


      We have an online application build around seam, POJOs and hibernate.
      Our business seam components ("managers" + "model" classes) are isolated into a separate jar file (common.jar), the "view controler" seam components (aka "backing beans") are directly held into the war module, the war module calling the classes into the common.jar module.

      We have the need for batch processes, ie processesthat will run outside any web/jee container, with a standard j2se jdk, from a plain java class, possibly running for hours. Those processes will use the seam common components from the common.jar file.
      The high level algorithm is :

      - bootstrap the seam engine
      - for each business item to process (maybe tens of thousand or more...):
       - begin transaction
       - do some business stuff that update the database
       - commit
      - shutdown the seam engine

      What is the best way to do that with seam? Is it possible to do this without instanciating or faking a web container?, ie without having in the batch classpath, jars like "servlet.jar" eand "j2ee.jar"? or something like the jboss embedded container?

      We looked at the SeamTest class as the "bootstrap" class, but SeamTest depends on javax.faces.*, javax.servlet.* and org.testng.* classes and is fully designed to test online components...
      Or maybe the jboss embedded container is the way to go?
      Thx for your guidance here.