After some deep thought...
(any HHGTTG fans out there? :)

It all sounds quite ok as to what it is you're trying to do. I do think 
that an efficient routing of the link interaction through JavaScript is 
a good thing. It is a very "viewy" thing people want to do.

Looking at it from the end developer's point of view, I'd be after the 
following  with various parameters...
(what of the following is true?)
a) function only. Just call the function, no argument, no url.
b) page, function. Function with URL as the only argument.
c) page, function, functionName, functionProperty. As you describe.
c) function, functionName, functionProperty. As you describe, but no url.

And in all cases, the urlIndex to be optional, and default to 0 (the 
first arg). Is this how it's all working?...
With it working like above, I'll have no problems taking it on to commit it
(naturally with the absence of -1's. I don't think that this is anything 
paradigm changing, but that's the process).

Internally, it will need a little house keeping. The "if"'s without the 
"{" block, and if you can call the Request utils.lookup, rather than the 
duplication in the EcmaUtils.

I'll also need to do some testing on it. Any unit tests?... A simple one 
page webapp that I can run tests against, regression tests etc?... or do 
I have to make one?... Not too much of a drama either way.


Arron.


Phase Web and Multimedia wrote:

>The tag "is" a Link Tag. I by no means want to create a new tag. If you read
>my explanation I state that. The additional attributes are neccessary
>though. The reason being is that the functionality is not in the current
>Link tag to accomplish this. It has unique requirements that present the
>need for an expanded set of Attributes on the Link tag. The idea is to be
>able to "include" the action url into the javascript function call at a
>specified an index point along with other parameters one might need to send
>to the javascript function. The other goal is to be able to prepare these
>parameters and place them into a bean.
>
>For example:
>
>If you have a popup window and you want to customize the size of the pop up.
>You might prepare some size parameters for the popup window that you want to
>be dynamic. With the tag I spun it allows for this to happen. You can
>prepare the parameters yo want to pass to the javascript function in the
>Action class and place it into a request bean (or whatever scope) and draw
>those prepared parameters from the bean into the Link tag which then (of
>course) would call the javascript function.
>
>I am not sure what you are getting at, though. Did you read the
>documentation that I wrote. It states that the attributes are added
>functionality to the Link Tag. :-)
>
>I think I have already done what you are saying. Please, correct me if I am
>misunderstanding you. I am using the base functionality of the Link Tag. I
>developed a whole new tag because I didn't have a choice. The intent was
>always to incorporate the functionality into the Link tag. Maybe to avoid
>confusion I need to go ahead and download the nightly and do a patch
>submission. rather than a code submission than can be placed back into the
>core struts Link tag.
>
>Brandon Goodin
>Phase Web and Multimedia
>P (406) 862-2245
>F (406) 862-0354
>[EMAIL PROTECTED]
>http://www.phase.ws
>
>
>-----Original Message-----
>From: Arron Bates [mailto:[EMAIL PROTECTED]]
>Sent: Wednesday, May 01, 2002 10:45 PM
>To: Struts Users Mailing List
>Subject: Re: Check this out!
>
>
>Anyone would think that trying to get an opinion on something is an
>uphill battle. :)
>
>Instead of creating an entirely new tag, can you take a look at adapting
>the current one?...
>Reason I say this, is that there's already a tag there, and this tag
>will need another name besides "link". "scriptlink" or something. An
>extra tag for people to learn.
>Because the logic is already there to do the mapping, and the
>querystring appending etc etc, I think it would be easier to simply add
>an extra parameter called "script" or something that when set to the
>name of a JS function, that when present, will wrap the resulting URL in
>the java script function. This means that *all* current links could turn
>into JavaScript routed links by adding one parameter, and inversely go
>back by removing it. Which I think would be quite sweet.
>
>Otherwise, it may turn out to be just a tag with an esoteric use.
>
>Your thoughts?...
>
>Arron.
>
>
>Phase Web and Multimedia wrote:
>
>>Hey all,
>>
>>I submitted an enhancement to struts. Read the following and if it sounds
>>worth having in struts give me a vote on the developer's list or make some
>>noise for some of the gurus to see.
>>
>>The code is at the following url in zip format:
>>
>>Here is the info on the tag:
>>http://www.phase.ws/linktag/taglib.zip
>>
>>I don't know if a similar solution has been provided, but, I tweaked the
>>Link Tag to support the writing of
>>'javascript:[function_name]([param1,param2,param3...])' to the href
>>attribute of the final output. Here is a summarization of it's
>>functionality:
>>
>>I added the following attributes:
>>
>>function - This is the name of the javascript function that will be called;
>>
>>functionName - This is the name of the bean that will provide parameter
>>values from one of it's properties.
>>
>>functionProperty - This is a property of a bean that will either provide a
>>String or an ArrayList to populate the parameters of the function
>>
>>urlIndex - This allows you to include the url generated by href,forward or
>>page to be included at a specific place in the function's parameters.
>>
>>There is another class that I wrote that does the actual processing and
>>preparation of the url. I named it EcmaUtil.  I modeled the computeURL and
>>computerParam methods of the RequestUtils class when I built the methods
>>
>for
>
>>the EcmaUtil.
>>
>>The LinkTag class that I wrote extends the BaseHandlerTag under the
>>org.apache.struts.taglib.html package of struts jar.
>>
>>I know the code needs a bit of reworking to fit back in to the struts
>>framework. I stripped out the MessageReources for the most part and removed
>>some exception handling that will need to be included again.
>>
>>Anyways, if nobody has done this in the nightly or if it sounds like it
>>might be of use. Let me know and I will post the code,the tld and an
>>
>example
>
>>of it's usage.
>>
>>EXAMPLE OF USAGE:
>>
>>This tag works exactly like the struts html tag with expanded feature
>>outlined above:
>>
>><pwshtml:link forward="listings/detail/popup" function="popUpWin"
>>urlIndex="1" paramId="image" paramName="image">
>><img src="image.jpg"> some text</pwshtml:link>
>>
>>This code will produce the follwing html
>><a
>>href="javascript:popUpWin('/do/listings/detail/popup?image=NWMT203336.jpg')
>>
>"
>
>>><img src="image.jpg"></a>
>>>
>>Of course some of the elements are arbitrary to the values in your beans.
>>But you should be able to traverse the code and get the idea.
>>
>>Thanks in advance.
>>Brandon Goodin
>>Phase Web and Multimedia
>>P(406)862-2245
>>F(406)862-0354
>>http://www.phase.ws
>>[EMAIL PROTECTED]
>>
>>
>>
>>--
>>To unsubscribe, e-mail:
>>
><mailto:[EMAIL PROTECTED]>
>
>>For additional commands, e-mail:
>>
><mailto:[EMAIL PROTECTED]>
>
>>
>
>
>
>--
>To unsubscribe, e-mail:
><mailto:[EMAIL PROTECTED]>
>For additional commands, e-mail:
><mailto:[EMAIL PROTECTED]>
>
>
>
>--
>To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
>For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
>
>



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

Reply via email to