luehe 2002/12/16 08:13:28 Modified: jasper2/src/share/org/apache/jasper/compiler Generator.java Node.java Parser.java Log: Fixed 15364: The jsp:body action doesn't work as expected when used with the jsp:fallback action. Revision Changes Path 1.142 +5 -12 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java Index: Generator.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Generator.java,v retrieving revision 1.141 retrieving revision 1.142 diff -u -r1.141 -r1.142 --- Generator.java 12 Dec 2002 23:31:51 -0000 1.141 +++ Generator.java 16 Dec 2002 16:13:28 -0000 1.142 @@ -1458,15 +1458,8 @@ * Fallback */ if (n.getBody() != null) { - n.getBody().visit(new Node.Visitor() { - public void visit(Node.FallBackAction n) { - n.setBeginJavaLine(out.getJavaLine()); - out.printil("out.write(" + - quote(new String(n.getText())) + ");"); - out.printil("out.write(\"\\n\");"); - n.setEndJavaLine(out.getJavaLine()); - } - }); + visitBody(n); + out.printil("out.write(\"\\n\");"); } out.printil("out.write(" + quote("</NOEMBED></EMBED>") + ");"); 1.49 +5 -5 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Node.java Index: Node.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Node.java,v retrieving revision 1.48 retrieving revision 1.49 diff -u -r1.48 -r1.49 --- Node.java 13 Dec 2002 18:06:08 -0000 1.48 +++ Node.java 16 Dec 2002 16:13:28 -0000 1.49 @@ -682,8 +682,8 @@ */ public static class FallBackAction extends Node { - public FallBackAction(Mark start, String text, Node parent) { - super(text, start, parent); + public FallBackAction(Mark start, Node parent) { + super(start, parent); } public void accept(Visitor v) throws JasperException { 1.47 +7 -20 jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java Index: Parser.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler/Parser.java,v retrieving revision 1.46 retrieving revision 1.47 diff -u -r1.46 -r1.47 --- Parser.java 13 Dec 2002 15:44:39 -0000 1.46 +++ Parser.java 16 Dec 2002 16:13:28 -0000 1.47 @@ -1090,23 +1090,10 @@ * ) */ private void parseFallBack(Node parent) throws JasperException { - if( reader.matches( "/>" ) ) { - // No elements, don't create node. - } - else if( reader.matches( ">" ) ) { - Mark bodyStart = reader.mark(); - Mark bodyEnd = reader.skipUntilETag("jsp:fallback"); - if (bodyEnd == null) { - err.jspError(start, "jsp.error.unterminated", - "<jsp:fallback"); - } - new Node.FallBackAction(start, reader.getText(bodyStart, bodyEnd), - parent); - } - else { - err.jspError( reader.mark(), "jsp.error.unterminated", - "<jsp:fallback" ); - } + Mark bodyStart = reader.mark(); + Node fallBackNode = new Node.FallBackAction(start, parent); + parseOptionalBody(fallBackNode, "jsp:fallback", + JAVAX_BODY_CONTENT_TEMPLATE_TEXT); } /*
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>