On Tue, 17 Sep 2002, Erik Beijnoff wrote: > But then when it should be printed... The page variable myUrl is > printed in the <a/> elements href attribute with href=’<c:out > value="${myUrl}"/>’!?!? > > I mean this isn't even correct xml in any way. Even if the <c:out> > would have been just plain text, which it isn't, it still quite ugly. > But it's even worse, as far as I know "<" isn't even allowed in an > attribute, even less so trying to nest an xml document element > hierarchy within it!
Indeed, the syntax isn't valid XML. However, documents that produce web pages -- or even XML documents -- need not be authored in XML. If you're comfortable with the syntax and don't need to parse the input document, there's nothing wrong with <a href="<c:out value="${myUrl}"/>"/> This turns into <a href="http:///." /> at request-time, so all the client sees is valid HTML (or XML if that's how you've written your page). Still, the syntax is indeed awkward. There are a number of potential solutions: * You can author an JSP page in the XML syntax and use CDATA to indicate that "<a href=" and "/>" are simply text. * In JSP 2.0, you'll be able to write <a href="${myUrl}" /> which is valid XML. * In JSP 2.0, you'll also be able to construct the <a> element manually using tags in the "jsp" namespace, much as you'd do in XSLT. As an side, note that you should really output URLs with <c:url>, not <c:out> -- but that doesn't address the syntax you're pointing out. > So what I'm asking is this: is there any other (better) way to perform > this action, perhaps with a tag <myTag:hyperLink value="${myUrl}"/> or > something like that. But shouldn't this really have been in the spec? > Any opinions? We really couldn't have added this to JSTL, since one of the goals was to avoid tying JSTL to HTML in particular. Instead, we adopted a longer-term view, realizing that the problems would be fixed automatically under JSP 2.0. To put it another way, this is really a JSP issue, not a JSTL issue, and it's fixed in the upcoming version of JSP. Thanks for the great comments about JSTL! It's great to hear you're finding the spec useful. Best, -- Shawn Bayern JSTL reference-implementation lead "JSTL in Action" http://www.jstlbook.com =========================================================================== To unsubscribe: mailto [EMAIL PROTECTED] with body: "signoff JSP-INTEREST". For digest: mailto [EMAIL PROTECTED] with body: "set JSP-INTEREST DIGEST". Some relevant FAQs on JSP/Servlets can be found at: http://archives.java.sun.com/jsp-interest.html http://java.sun.com/products/jsp/faq.html http://www.esperanto.org.nz/jsp/jspfaq.jsp http://www.jguru.com/faq/index.jsp http://www.jspinsider.com