luehe       2002/10/12 11:55:30

  Modified:    jasper2/src/share/org/apache/jasper/compiler
                        TagLibraryInfoImpl.java Validator.java
               jasper2/src/share/org/apache/jasper/resources
                        messages.properties
  Log:
  Fixed 13553: Jasper incorrectly generating a translation error if a
  tag has both a TEI and variable declarations.
  
  Revision  Changes    Path
  1.17      +5 -13     
jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagLibraryInfoImpl.java
  
  Index: TagLibraryInfoImpl.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/TagLibraryInfoImpl.java,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- TagLibraryInfoImpl.java   9 Oct 2002 18:25:39 -0000       1.16
  +++ TagLibraryInfoImpl.java   12 Oct 2002 18:55:29 -0000      1.17
  @@ -381,8 +381,7 @@
        variableVector.copyInto(tagVariableInfos);
   
           TagExtraInfo tei = null;
  -
  -        if (teiclass != null && !teiclass.equals(""))
  +        if (teiclass != null && !teiclass.equals("")) {
               try {
                   Class teiClass = ctxt.getClassLoader().loadClass(teiclass);
                   tei = (TagExtraInfo) teiClass.newInstance();
  @@ -408,14 +407,7 @@
                                     Logger.WARNING
                                     );
               }
  -
  -        // JSP.C1: It is a (translation time) error for an action that
  -        // has one or more variable subelements to have a TagExtraInfo
  -        // class that returns a non-null object.
  -
  -        if (tei != null && variableVector.size() != 0) {
  -            err.jspError("jsp.warning.teiclass.is.nonnull", teiclass);
  -        }
  +     }
   
           TagInfo taginfo = new TagInfo(name, tagclass, bodycontent,
                                         info, this, 
  
  
  
  1.41      +14 -3     
jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java
  
  Index: Validator.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Validator.java,v
  retrieving revision 1.40
  retrieving revision 1.41
  diff -u -r1.40 -r1.41
  --- Validator.java    9 Oct 2002 17:41:13 -0000       1.40
  +++ Validator.java    12 Oct 2002 18:55:29 -0000      1.41
  @@ -791,6 +791,17 @@
            }
   
            TagData tagData = new TagData(tagDataAttrs);
  +
  +         // JSP.C1: It is a (translation time) error for an action that
  +         // has one or more variable subelements to have a TagExtraInfo
  +         // class that returns a non-null object.
  +         TagExtraInfo tei = tagInfo.getTagExtraInfo();
  +         if (tei != null && tei.getVariableInfo(tagData) != null
  +                 && tagInfo.getTagVariableInfos() != null) {
  +             err.jspError("jsp.error.non_null_tei_and_var_subelems",
  +                          n.getName());
  +         }
  +
            n.setTagData(tagData);
            n.setJspAttributes(jspAttrs);
   
  
  
  
  1.46      +2 -2      
jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties
  
  Index: messages.properties
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/resources/messages.properties,v
  retrieving revision 1.45
  retrieving revision 1.46
  diff -u -r1.45 -r1.46
  --- messages.properties       9 Oct 2002 20:21:52 -0000       1.45
  +++ messages.properties       12 Oct 2002 18:55:30 -0000      1.46
  @@ -132,7 +132,7 @@
   jsp.warning.unknown.element.in.attribute=Warning: Unknown element {0} in attribute
   jsp.error.more.than.one.taglib=More than one taglib in the TLD: {0}
   jsp.warning.teiclass.is.null=Could not load TagExtraInfo class {0}: {1}
  -jsp.warning.teiclass.is.nonnull=variable subelement defined in TLD when 
TagExtraInfo class {0} is non-null
  +jsp.error.non_null_tei_and_var_subelems=Tag {0} has one or more variable 
subelements and a TagExtraInfo class that returns a non-null object
   jsp.error.parse.error.in.TLD=Parse Error in the tag library descriptor: {0}
   jsp.error.unable.to.open.TLD=Unable to open the tag library descriptor: {0}
   jsp.buffer.size.zero=Buffer size <= 0
  
  
  

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

Reply via email to