dev@glassfish.java.net

Re: [arch] add a new asadmin redeploy option or reuse existing one for the new EJB feature?

From: Tim Quinn <tim.quinn_at_oracle.com>
Date: Wed, 9 Jun 2010 14:23:50 -0500

A couple things.

1. Note that the current keepSessions feature is specified as a
property on the redeploy command, such as

asadmin redeploy ... --property=keepSessions=true

not as its own option.

2. Now that multiple containers will support this type of behavior, it
might be more intuitive for users to have a new option (not a
property, an option)

--keepState

which can accept one or more values identifying the container types to
enlist in the state-keeping behavior. For example:

asadmin redeploy ... --keepState=web,ejb

would cause both containers to maintain whatever "state" means to
them. Thus

... --property=keepSessions=true

and

... --keepState=web

would be equivalent.


- Tim

On Jun 9, 2010, at 1:15 PM, Marina Vatkina wrote:

> Bill, Arch team,
>
> EJB enhancement for GlassFish 3.1 proposes support for retaining
> SFSB / EJB Timer state across redeployment (see section 4.1.5 in http://wiki.glassfish.java.net/Wiki.jsp?page=GlassFishv3.1EJBOnePager)
> .
>
> The original proposal was to add a new CLI option to 'asadmin
> redeploy' for this purpose called 'keepEjbState' in addtion to the
> existing 'keepSession' option.
>
> While having two separate options clearly identifies the intent of
> the operation, it can be confusing to the user who has both, a web
> component and an ejb component in their application (in particular
> with Java EE 6 allowing to combine both in a single WAR). On the
> other hand, eusing 'keepSession' option for both purposes can be
> confusing for applications that do not have a web component.
>
> One more question: would it make sense to rename 'keepEjbState' to
> 'keepState' for future (non-EJB) extensions? If yes, would it be
> even more confusing to have both options around?
>
> Here are the choices that we are looking at:
> 1. Add 'keepEjbState' in addtion to 'keepSession'
> 2a. Add 'keepState' in addtion to 'keepSession'
> 2b. Deprecate 'keepSession', and use 'keepState' instead
> 3. Reuse 'keepSession' for any 'keep' option.
>
> Please advice.
>
> thanks,
> -marina




Tim Quinn | Principal Member of Technical Staff | +1.847.604.9475
Oracle GlassFish Engineering
Lake Forest, IL