Hi Rahul,
What I need is to extend the "create" method of
org.apache.shale.dialog.basic.BasicDialogManager

for example doing:

public ... create(javax.faces.context.FacesContext context,
                  String name) 
{
        Super.create(context,name);
      System.out.println("Hello Rahul");
}


Thanks
Mario 

-----Original Message-----
From: Rahul Akolkar [mailto:[EMAIL PROTECTED] 
Sent: 19 luglio 2007 22.37
To: user@shale.apache.org
Subject: Re: Customizing Basic DialogContextManager

On 7/17/07, [EMAIL PROTECTED]
<[EMAIL PROTECTED]> wrote:
> No response? Every body to the beach? :)
>
<snip/>

For me to say anything else here, I'd need a bit more about what you
are trying to do (rather than the how, which you've detailed below)
and what the basic implementation is hindering you from doing.

-Rahul



> Ciao
> Mario
>
> -----Original Message-----
> From: Rahul Akolkar [mailto:[EMAIL PROTECTED]
> Sent: 11 luglio 2007 18.20
> To: user@shale.apache.org
> Subject: Re: Customizing Basic DialogContextManager
>
> On 7/10/07, [EMAIL PROTECTED]
> <[EMAIL PROTECTED]> wrote:
> > I feel boycotted :)
> > May be the problem is my email address?
> >
> <snip/>
>
> No. Sometimes (or, often, it depends on many factors) it can take a
> couple of days to get a response. Please be patient.
>
>
> > -----Original Message-----
> > From: [EMAIL PROTECTED]
> > [mailto:[EMAIL PROTECTED]
> > Sent: 9 luglio 2007 11.25
> > To: user@shale.apache.org
> > Subject: RE: Customizing Basic DialogContextManager
> >
> > Another way I have tested is to extends directly
> > AbstractDialogContextManager overriding all public methods using the
> > wrapped
> > org.apache.shale.dialog.basic.BasicDialogManager.
> >
> > Is this solution better then the first?
> >
> <snap/>
>
> Generally, I'd discourage folks from customizing any of the dialog
> impls provided for a couple of reasons (though I'd encourage them to
> write brand new impls):
>
>  * Any custom impl means that you are no longer using the basic impl
> as we all know it (some bets are off, its harder for anyone on this
> list to help without reasonable background each time etc.).
>
>  * It should be possible to get a lot of things done leveraging some
> of the features of the dialog framework (such as the various
> listeners) before getting into customization. Also, if there are
> things missing or value-adds to the dialog framework, then IMO its
> better to push for those bits to be included in the API or impls
> itself (as the case may be). Perhaps you have done this design
> exercise already.
>
> I won't claim to have completely understood what the end goal is for
> this particular customization. Is this in any way related to:
>
>  http://issues.apache.org/struts/browse/SHALE-454
>
> that you filed recently?
>
> -Rahul
>
>
>
> > Regards
> > Mario
> >
> > P.S. could be easier if
> org.apache.shale.dialog.basic.BasicDialogManager
> > is not final!
> >
> > -----Original Message-----
> > From: [EMAIL PROTECTED]
> > [mailto:[EMAIL PROTECTED]
> > Sent: 9 luglio 2007 10.56
> > To: user@shale.apache.org
> > Subject: Customizing Basic DialogContextManager
> >
> > Hi, I need to customize the Basic DialogContextManager to just add
> some
> > futures in create method. What I need is create a dialog changing
the
> > name passed when the user has some profile. What I'm doing is a
> > decorator (wrapper) of
> org.apache.shale.dialog.basic.BasicDialogManager.
> > My DialogContextManager (MyDialogContextManager.java ) does not
> extends
> > AbstractDialogContextManager but implements
> > org.apache.shale.dialog.DialogContextManager and uses a wrapped
object
> > of org.apache.shale.dialog.basic.BasicDialogManager :
> >
> >
> >
> > public class MyDialogContextManager implements DialogContextManager,
> >
> >                         Serializable {
> >
> >
> >
> >             private static final Log log =
> > LogFactory.getLog(MyDialogContextManager.class);
> >
> >
> >
> >             DialogContextManager wrapped;
> >
> >
> >
> >             public MyDialogContextManager() {
> >
> >                         super();
> >
> >                         wrapped = new BasicDialogManager();
> >
> >
> >
>
FacesContext.getCurrentInstance().getExternalContext().getSessionMap().p
> > ut("mypipolo",wrapped);
> >
> >             }
> >
> >
> >
> >             public DialogContext create(FacesContext context, String
> > name) {
> >
> > //this is what I need:
> >
> >                         If (blablaba....) name="mydialogname";
> >
> >
> >
> >                         return wrapped.create(context,name);
> >
> >             }
> >
> >
> >
> >             public DialogContext create(FacesContext context, String
> > name, DialogContext parent) {
> >
> >                         return wrapped.create(context,name,parent);
> >
> >             }
> >
> >
> >
> >             public DialogContext get(String id) {
> >
> >                         return wrapped.get(id);
> >
> >             }
> >
> >
> >
> >             public DialogContext getActiveDialogContext(FacesContext
> > context) {
> >
> >                         return
> wrapped.getActiveDialogContext(context);
> >
> >             }
> >
> >
> >
> >             public void remove(DialogContext instance) {
> >
> >                         wrapped.remove(instance);
> >
> >             }
> >
> >
> >
> >             public void
> > addDialogContextManagerListener(DialogContextManagerListener
listener)
> {
> >
> >
> > wrapped.addDialogContextManagerListener(listener);
> >
> >             }
> >
> >
> >
> >             public DialogContextManagerListener[]
> > getDialogContextManagerListeners() {
> >
> >                         return
> > wrapped.getDialogContextManagerListeners();
> >
> >             }
> >
> >
> >
> >             public void
> > removeDialogContextManagerListener(DialogContextManagerListener
> > listener) {
> >
> >
> > wrapped.removeDialogContextManagerListener(listener);
> >
> >             }
> >
> >
> >
> > }
> >
> >
> >
> > In my faces-config I added:
> >
> >       <managed-bean>
> >
> >
> >
<managed-bean-name>org.apache.shale.dialog.MANAGER</managed-bean-name>
> >
> >
> >
<managed-bean-class>prova.MyDialogContextManager</managed-bean-class>
> >
> >             <managed-bean-scope>session</managed-bean-scope>
> >
> >       </managed-bean>
> >
> >
> >
> >
> >
> > If you analyze the constructor, you find this:
> >
> >
> >
>
FacesContext.getCurrentInstance().getExternalContext().getSessionMap().p
> > ut("mypipolo",wrapped);
> >
> >
> >
> > I need this because MyDialogContextManager does not extends
> > AbstractDialogContextManager and doing so does not implements
> > HttpSessionBindingListener needed for set DialogLifecycleListener.
> >
> >
> >
> > So, doing in this way seems to work correctly but the question is:
> >
> > Is this a correct way to customize the default implementation of
> > BasicDialogManager?
> >
> >
> >


This message is for the designated recipient only and may contain privileged, 
proprietary, or otherwise private information.  If you have received it in 
error, please notify the sender immediately and delete the original.  Any other 
use of the email by you is prohibited.

Reply via email to