[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-1680) Have a way to "bootsrap" the seam engine for batch processes

Denis Forveille (JIRA) jira-events at lists.jboss.org
Mon Jul 16 14:17:55 EDT 2007


Have a way to "bootsrap" the seam engine for batch processes
------------------------------------------------------------

                 Key: JBSEAM-1680
                 URL: http://jira.jboss.com/jira/browse/JBSEAM-1680
             Project: JBoss Seam
          Issue Type: Feature Request
    Affects Versions: 2.0.0.BETA1, 1.2.1.GA
            Reporter: Denis Forveille


It should be possible to write a "pure" batch processes that uses seam components. Seam should provide a way to "bootstrap" the "seam engine" outside any web/jee container to allow programmers to reuse seam components outside a war, typically from a standard "main" method, run with a standard j2se class.

Typical scenario/usage for this:
- an online application build around seam, POJOs and hibernate.
- the business seam components ("managers" + "model" classes) are isolated into a separate jar file (common.jar)
- the "view controllers", which are  seam components (aka "backing beans") are directly held into the war module
- the war module uses the business components held into the common.jar module.
- a batch process, which is standard j2se class with a main method,  performs some business process by calling the "business" seam components defined in the common.jar file.

The high-level algorithm of this "batch" process is the following
- bootstrap the seam engine
- for each business item to process (maybe tens of thousand or more...):
  - begin transaction
  - do some business stuff by calling the seam components in common.jar that read/update the database
  - commit
- shutdown the seam engine

For this, we need a class or harness to "boostrap" the seam engine. This harness should not depends on any of the services provided by a typical web/ jee container, this includes:
- naming/jndi
- security
- jsf/jsp/facelets
- ...etc

The harness should be able to manage injection/bijection of user defined components and also to provide the injection of some non-web dependent object like the hibernate session and the logger. Of course none of the "web" functions are required (Conversation managment, @DataModel etc...)

At a minimun, this harness should be able to handle the @Name, @In, @Out, @Create, @Destroy, @Factory, @Transactional, @Logger annotations

Big Thanks...


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the seam-issues mailing list