But this wasn't the crack that was being smoked.
The literal question that was being asked was can i use a link to submit a form without using javascript?
The response to which was no.
Geeta's suggestion was the only solution to the problem as you'd store the lot in he session and use a request parameter as a hook to grab the puppies out.
But most of the problem seemed to be related to some misunderstanding about html forms, and request parameters and such like.
I'm sure that if the wiz-bang default action that i suspect contains a map iterator and selects a command, that the id passed through with the link would just as well be a form value. But several of us now require intensive dental treatment after all the brick chewing.
On 19 Feb 2004, at 00:36, Michael McGrady wrote:
Heh, guys, there is no morality play here. LOL
The question is just whether or not the use of the session as a repository makes sense, given the host of problems that arise in that respect, and given that there are way cool solutions that need to be built without those problems.
Saving a USER in a session makes all the sense in the world. Users necessarily are SESSION related. That is NOT like saving a FORM, which is merely PAGE related. The user is just the sort of thing you should save in session. Is anyone saying you should not save a user in session? Since the user, unlike a page, or unlike whatever equivalent your use to a page, is necessarily involved in session scope, that typically would not only be proper, but best.
Michael
At 07:52 AM 2/18/2004, you wrote:Mark:
Not sure what you meant by your remark about javascript, but I believe
javascript was ruled out earky on (not an option or something). The reason I
thought saving the user as a session was ok is that I do not believe they are
evil (:) either, and further, I can just see this sort of problem recurring
throughout his application. Since the user is something that will not
change, i felt it's ok to save this as a session variable. (and this I
sometimes use as a way to judge whether or not I should save something as a
session variable, thus removing the headaches of remembering to reset/remove
them)..
That said, I have to reiterate that I did not read/understand Avinash's note
carefully enough, as you seem to have, so your note may well make more sense
than mine..:)
Hope this will sustain you without the crack..;) Geeta
Mark Lowe wrote:
> I said no such thing about javascript.
>
> I'm in the httpsession != evil school and I'd say this isn't an
> occasion where you'd use it as you don't need anything to persist
> beyond the request (accept this default action thing whatever thats
> about).
>
> The single action class as a type of command dispatcher sounds
> ingenious. But it has to be using a form property or request parameter
> otherwise the id in the link wouldn't do what you want. I can see how
> this has helped make life less complex :o) I assume it extracts a map
> iterates through is and then selects the relevant 'command' based on
> the map's contents.
>
> You cant submit a form with a link without using javascript. You can
> use an image as a button, but thats another subject. I have no more
> suggestions than those I've already made, else I'll start getting urges
> to go out and score come crack in an attempt to save my teeth from all
> the brick-chewing.
>
> On 18 Feb 2004, at 14:15, Geeta Ramani wrote:
>
> > Hi Avinash:
> >
> > I have not followed your description very carefully - my eyes started
> > glazing over about mid-way..;) - but here's a thought (and I'm only
> > going by what i remember of your original question, so forgive me if I
> > misspeak..): If you do not have access to the request object, do you at
> > least have access to the session? In which case how about putting the
> > user in a session variable (maybe right after logon) and then you
> > should
> > be able to get his/her userId etc etc wherever you want it from..? I
> > know there has been **extensive** discussion in this list re. the pros
> > and cons of using session variables and if you are of the
> > all-session-vars-are-bad school of thought, this won't do you any good.
> > But personally, this seems to be a situation where a session variable
> > would come in handy..
>
> >
> > If however this idea wn't work in your situation, you may want to
> > discuss with your clients their absolute requirement about wanting a
> > link vs. a button (I believe you indicated earlier that the latter case
> > will pose no prblems for you..?)
>
> >
> > Good luck!
> > Geeta
> >
> > [EMAIL PROTECTED] wrote:
> >
> >>
> >> Hi Geeta/Paul/Mark/Wendy
> >>
> >> What Geeta has suggested is basically the same thing but Paul is using
> >> JSTL for that.
> >> But such is the restriction of my application that I can not use
> >> request object to get the values from form directly by calling
> >> request.getParameter(...);
> >>
> >> I will explain this why.
> >>
> >> The framework that we are working with right now gives some add on
> >> features over struts. Basically taken from StrutsEJB framework.
> >>
> >> We are using Map Based DTOs to transfer data from view layer to model
> >> layer and other way round.
> >> We are also using the feature of Command Files. I will explain it what
> >> it is for people unaware of StrutsEJB framework.
> >>
> >> In Struts we are supposed to mention the Action Class in the
> >> struts-config.xml. And from the Action class we generally call some
> >> java programs (say command files) to access the model layer basically
> >> to avoid keeping business logic in Action Classes.
> >>
> >> But in my framework we just need to mention the Command file name in
> >> struts-config.xml instead of Action classes. There is only one action
> >> class that is DefaultAction class which handles all the requests and
> >> diverts the program control to the command file. I will give here one
> >> typical entry in my struts-config.xml for your reference.
> >>
> >> <action
> >> path="/CreateUser"
> >> type="framework.common.web.DefaultAction"
> >> name="UserForm"
> >> scope="request"
> >> input = "/CreateUser.jsp"
> >> parameter="app.cmd.CreateUserCmd">
> >> <forward name="Success" path = "/UserSucc.jsp" />
> >> </action>
> >>
> >> in the above action tag the attribute parameter is the name of the
> >> command file where i would like my control to go after the form gets
> >> submitted.
> >>
> >> Now the problem is in the Command File "CreateUserCmd" where i would
> >> keep my business logic -- i dont have the "request" object. so i cant
> >> do a
> >> "request.getParameter(.....); " here.
> >>
> >> the way i get values from forms is like this.
> >>
> >> if I have this code in JSP
> >> <html:text property="dto(txtUsname)" styleClass="listItem" size="14"
> >> />
> >>
> >> I will have to write the following code in my command file to get the
> >> value of "User Name"
> >> String UserName = (String)paramDTO.get("txtUsName");
> >>
> >> As Mark/Wendy were asking me why i cant use JavaScript is because
> >>
> >> whenever i use something like this in JavaScript I get javascript
> >> error at runtime
> >> document.UserForm.dto(txtUsName).value = val;
> >> document.UserForm.submit();
> >>
> >> This is obvious because whenever javascript parses something like
> >> dto(txtUsName) it takes it as a function call.
> >>
> >> I hope I could explain the problem properly.
> >>
> >> Regards
> >> Avinash Tiwari
> >> Tata Consultancy Services
> >> Mailto: [EMAIL PROTECTED]
> >> Website: http://www.tcs.com
> >>
> >>
> >> "Geeta Ramani"
> > Struts Users Mailing List
> > <[EMAIL PROTECTED]> To
> > <[EMAIL PROTECTED]>
> >
> > 02/17/2004 09:57 PM cc
> > Please respond to Subject Re: Form Submission
> > "Struts Users Mailing List"
> > <[EMAIL PROTECTED]>
> >
> >>
> >>
> >>
> >> Avinash:
> >>
> >> How about trying something like this:
> >>
> >> <%String myLink = "/EmplyeeDetailAction.do?employeeId=" + employeeId;
> >> %>
> >>
> >> <html:link page="<%=myLink">Employee Detail Page</html:link>
> >>
> >> Regards,
> >> Geeta
> >>
> >> [EMAIL PROTECTED] wrote:
> >>
> >>>
> >>> I want to use a hyperlink instead -
> >>>
> >>> for example
> >>> On a typical employee list page clicking the employee id of an
> >>> employee takes you to the employee detail page.
> >>>
> >>> In this scenario employee id can not be displayed over a button - it
> >>
> >>> has to be a hyperlink..
> >>>
> >>> Use of javascript is restricted. So i cant call a javascript
> >> function
> >>> to set the action atribute and then call the submit function.
> >>>
> >>> Avinash Tiwari
> >>> Tata Consultancy Services
> >>> Mailto: [EMAIL PROTECTED]
> >>> Website: http://www.tcs.com
> >>>
> >>>
> >>> Mark Lowe <[EMAIL PROTECTED]>
> >> To "Struts Users Mailing
> >> List"
> >>
> >> <[EMAIL PROTECTED]>
> >> 02/17/2004 08:57 PM
> >> cc
> >> Please respond to
> >> "Struts Users Mailing List" Subject Re: Form Submission
> >> <[EMAIL PROTECTED]>
> >>
> >>>
> >>>
> >>>
> >>> May I ask why you don't want a submit button?
> >>>
> >>>
> >>> On 17 Feb 2004, at 15:55, [EMAIL PROTECTED] wrote:
> >>>
> >>>>
> >>>> Hi
> >>>>
> >>>> How can we submit a form without using <html:submit> tag. I dont
> >>> want
> >>>> to use JavaScript for this?
> >>>>
> >>>> Thanks & Regards
> >>>> Avinash Tiwari
> >>>> Tata Consultancy Services
> >>>> Mailto: [EMAIL PROTECTED]
> >>>> Website:
> >>>> http://
> >>>>
> >>>
> >> www.tcs.com<InterScan_Disclaimer.txt>---------------------------------
> >> -
> >>
> >>>
> >>>> -----------------------------------
> >>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >>
> >>>> For additional commands, e-mail:
> >> [EMAIL PROTECTED]
> >>>
> >>>
> >>>
> >>>
> >> ---------------------------------------------------------------------
> >>> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >>> For additional commands, e-mail: [EMAIL PROTECTED]
> >>
> >>>
> >>>
> >>> ForwardSourceID:NT00004E3A
> >>>
> >>> ----------------------------------------------------------------
> >>>
> >> ---------------------------------------------------------------------
> >>> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >>> For additional commands, e-mail: [EMAIL PROTECTED]
> >>
> >>>
> >>
> >> ForwardSourceID:NT00004E76
> >>
> >> ----------------------------------------------------------------
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]