Great!  Thanks for the info.  One problem, I can't seem to find this on the
Struts site.  Can you send me a URL?

Thanks,

JOHN

-----Original Message-----
From: Madel,Kurt [mailto:kmadel@;csmi.com]
Sent: Thursday, November 14, 2002 9:03 AM
To: 'Struts Users Mailing List'
Subject: RE: Struts Tags vs. JSTL


The nightly build has exactly what you are looking for in the contrib
folder.  Here is the readme:


 Struts-EL extension
 ===================

Introduction
------------

This subproject is an extension of the Struts tag library.  Each JSP custom
tag
in this library is a subclass of an associated tag in the Struts tag
library.
One difference is that this tag library does not use "rtexprvalues", it uses
the expression evaluation engine in the JSP Standard Tag Library (version
1.0)
to evaluate attribute values.

In addition, some of the Struts tags were not ported to this library, as it
was
determined that their functionality was entirely supplied by the JSTL.
These
particular Struts tags, and the reason for their non-porting will be
described
in the documentation for this library.

In order to fully understand the correct utilization of this library, you
must
understand the use and operation of the Struts tag library, and the use and
operation of the JavaServer Pages Standard Tag Library (hereafter called the
"JSTL"), along with the expression language (sometimes called the "EL") used
for evaluating attribute values.

Tag Mapping
-----------

In implementing the Struts-EL library, every Struts tag that provides a
feature
that is not covered by the JSTL (1.0) library is mapped into the Struts-EL
library.  This section reviews which Struts tags are NOT implemented in the
Struts-EL library, and which JSTL tags provide that feature.

Many of the non-porting decisions were based on the fact that the JSTL
expression language itself provides the same functionality.  In those cases,
in addition to a possible JSTL tag name, the symbol "EL" will be listed.

Bean Tag Library Tags NOT Implemented in Struts-EL
--------------------------------------------------

Struts Tag        JSTL Tag
----------        --------
cookie                          c:set, EL
define           c:set, EL
header                          c:set, EL
include          c:import
parameter         c:set, EL
write             c:out

Logic Tag Library Tags NOT Implemented in Struts-EL
--------------------------------------------------

Struts Tag        JSTL Tag
----------        --------
empty                                   c:if, c:when, EL
equal                                   c:if, c:when, EL
greaterEqual            c:if, c:when, EL
greaterThan                     c:if, c:when, EL
lessEqual                       c:if, c:when, EL
lessThan                                c:if, c:when, EL
notEmpty                                c:if, c:when, EL
notEqual                                c:if, c:when, EL
notPresent                      c:if, c:when, EL
present                         c:if, c:when, EL

Html Tag Library Tags NOT Implemented in Struts-EL
--------------------------------------------------

None (all of them were ported).

Attribute Mapping
-----------------

At this point of the implementation, there is only one change (to two
similar
tags) to the set of attributes between the Struts tags, and the Struts-EL
tags.
The "logic:match" and "logic:notMatch" tags have an additional attribute
named
"expr", which can take any value, and will be used as the value to compare
against, in addition to the choices of "cookie", "header",
"name"/"property",
and "parameter".

Usage Requirements
------------------

The Struts-EL tag library requires the use of the Struts tag library, and
the
Java Server Pages Standard Tag Library.  It is not necessary for JSP pages
using the Struts-EL tag library to also use the Struts tags or the JSTL
tags,
but the Struts and JSTL tag libraries need to be part of the application
utilizing the Struts-EL tag library.

This is because the Struts-EL tag classes are all subclasses of Struts tag
classes, and their implementation uses classes provided by the JSTL.

Kurt Madel
Programmer, CSMi
(703) 823-4300 ext. 170


-----Original Message-----
From: Hohlen, John [mailto:JHohlen@;erac.com] 
Sent: Thursday, November 14, 2002 9:58 AM
To: Struts-Help (E-mail)
Subject: Struts Tags vs. JSTL

My team is interested in using the JSTL as it offers several advantages
(standardization, container optimization, expression language, potential
future tools, etc.).  Until now, we've strictly been using the Struts custom
tags (and a few that we extended).

These are the guidelines I want to setup for our developers:
1) If a tag's functionality is duplicated in both the JSTL and Struts, use
the JSTL version.  In the long run, it will probably deprecate the Struts
tag.
2) For tags tied directly to the Struts framework (e.g. <html:errors>,
<html:javascript>, etc.), use the Struts version (for obvious reasons).

Does this make sense?  Have others done this?  One thing I was hoping to put
together for our team was a cross-reference of tags between the JSTL and the
Struts tag libraries.  This cross-reference would contain information about
which tags provide duplicate functionality, which tags are tied to the
Struts framework, etc.  Has anyone seen something like this?

Thanks,

JOHN

--
To unsubscribe, e-mail:
<mailto:struts-user-unsubscribe@;jakarta.apache.org>
For additional commands, e-mail:
<mailto:struts-user-help@;jakarta.apache.org>

--
To unsubscribe, e-mail:
<mailto:struts-user-unsubscribe@;jakarta.apache.org>
For additional commands, e-mail:
<mailto:struts-user-help@;jakarta.apache.org>

--
To unsubscribe, e-mail:   <mailto:struts-user-unsubscribe@;jakarta.apache.org>
For additional commands, e-mail: <mailto:struts-user-help@;jakarta.apache.org>

Reply via email to