Hello.

There was a bug (105695) that was fixed in 1.2.6 of struts. Basically, if your application is the root application, the following:

        <html:link action="/MyAction">

would yield the following html:

        <a href="//MyAction.do">

The 2 slashes were a problem.  This bug, I believe has been fixed.

My problem is with the following 2 scenarios:

        html:link page
        html:img page

I think these may have been overlooked with the fix to 105695. I think I may have fixed them, though. I'm not sure how to submit the fixes, though.

Here are diff outputs for the 3 files (TagUtils.java, ImageTag.java, and ImgTag.java):

TagUtils.java

436,442c436
<                 String contextPath = request.getContextPath();
<
< // Avoid setting two slashes at the beginning of an action:
<                 //  the length of contextPath should be more than 1
< // in case of non-root context, otherwise length==1 (the slash)
<                 if (contextPath.length() > 1) url.append(contextPath);
<
---
>                 url.append(request.getContextPath());
453,459c447
<             String contextPath = request.getContextPath();
<
< // Avoid setting two slashes at the beginning of an action:
<             //  the length of contextPath should be more than 1
< // in case of non-root context, otherwise length==1 (the slash)
<             if (contextPath.length() > 1) url.append(contextPath);
<
---
>             url.append(request.getContextPath());



ImageTag.java:
220,231c220
<
<             String contextPath = request.getContextPath();
<             StringBuffer rv = new StringBuffer();
<
< // Avoid setting two slashes at the beginning of an action:
<             //  the length of contextPath should be more than 1
< // in case of non-root context, otherwise length==1 (the slash)
<             if (contextPath.length() > 1) rv.append(contextPath);
<
<             rv.append(pageValue);
<
<             return rv.toString();
---
>             return (request.getContextPath() + pageValue);
259,270c248
<
<             String contextPath = request.getContextPath();
<             StringBuffer rv = new StringBuffer();
<
< // Avoid setting two slashes at the beginning of an action:
<             //  the length of contextPath should be more than 1
< // in case of non-root context, otherwise length==1 (the slash)
<             if (contextPath.length() > 1) rv.append(contextPath);
<
<             rv.append(pageValue);
<
<             return rv.toString();
---
>             return (request.getContextPath() + pageValue);



ImgTag.java
551,562c551
<
<             String contextPath = request.getContextPath();
<             StringBuffer rv = new StringBuffer();
<
< // Avoid setting two slashes at the beginning of an action:
<             //  the length of contextPath should be more than 1
< // in case of non-root context, otherwise length==1 (the slash)
<             if (contextPath.length() > 1) rv.append(contextPath);
<
<             rv.append(pageValue);
<
<             return rv.toString();
---
>             return (request.getContextPath() + pageValue);
587,598c576
<
<             String contextPath = request.getContextPath();
<             StringBuffer rv = new StringBuffer();
<
< // Avoid setting two slashes at the beginning of an action:
<             //  the length of contextPath should be more than 1
< // in case of non-root context, otherwise length==1 (the slash)
<             if (contextPath.length() > 1) rv.append(contextPath);
<
<             rv.append(pageValue);
<
<             return rv.toString();
---
>             return (request.getContextPath() + pageValue);




Also, please let me know if I'm exhibiting improper "list etiquette". I'm kinda new to this. :\

Thanks, folks.
tb

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

Reply via email to