Thanks Rick.

I need to rely on the backend to decide whether to enable/disable as the
requirement is a 'business rule' not an interface decision. Here are the
factors:

- What 'stage' is this row of the table reached determines if this field
can be changed or not.
- What 'security level' the current session's user has determines
enable/disable.

So unfortunately, putting all this in the view would lead to huge
amounts of choosings. I'd rather the view was really dumb and just
reacted to decisions @ the backend.


> Then you can do:
> <html-el:text property="customerCode" maxlength="8"size="8"
> disable="${userFormBean.customerCodeEnabled}"  />

This looks promising. Thanks for your help..



Stuart


On Tue, 2004-08-17 at 01:24, Rick Reumann wrote:
> Stuart Guthrie wrote:
> 
> > Hi there, 
> > 
> > What I'm trying to do is re-use the same jsp for ADD/UPDATE modes. In
> > order to do this, certain field attributes will be different depending
> > on the modes and sometimes even on the user's security credentials or
> > the 'status' of the customer row.
> > 
> > To this end I need to pass in the form bean whether a particular field
> > is disabled or not
> 
> I usually don't like to have my formBean take care of holding this 
> information. Not that it's necessarily bad, I just sort of like having 
> my form beans as dumb as possible and only maintain form captured 
> information.
> 
> What I do in the above is base what to display on a "userAction" which 
> actually ends up corresponding to my dispatch Action method name. This I 
> will sometimes add as an ActionForm property (ie String userAction ).
> 
> I then control the dispaly based on this userAction ( "update", "add"). 
> You'll end up with a bit more verbose code but I find it easier to 
> maintain.. so for example....
> 
> You might have a case where if you are doing an update you can't update 
> the User Name but can update other fields:
> 
> Name:
> <c:choose>
>    <c:when test="${userFormBean.userAction == 'update'}">
>       <c:out value="${userFormBean.name}"/>
>    </c:when>
>    <c:othewise>
>       <html:text property="name"/>
>    </c:otherwise>
> </c:choose>
> 
> If you really want you can do your approach though but you'll have to 
> use the html-el tags
> 
> Then you can do:
> <html-el:text property="customerCode" maxlength="8"size="8"
> disable="${userFormBean.customerCodeEnabled}"  />
> 
> where customerCodeEnabled would correspond to "true" or "false" and be 
> set accordingly. I don't like this approach though because you'll end up 
> having to code a bunch of these for different fields and you've made 
> your backend responsible for figuring out how to display the info on the 
> page ( he he I say I don't like this, and now I'm on a project where the 
> whole application is going to be coded by meta-data to tell the front 
> what to display.. but still in theory I don't like it:)
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to