costin 01/02/10 14:37:32 Modified: src/tests/webpages/WEB-INF test-tomcat.xml src/tests/webpages/params isParams.jsp Added: src/tests/webpages/params includeISParams.jsp Log: Added a JSP test: JSP includes a servlet that calls getInputStream, then getParameter(). The input stream should be able to read the body, the result of getParameter is not defined ( AFAIK ). Tomcat behavior is to return the query parameters ( the body is alredy consumed ) Revision Changes Path 1.20 +22 -1 jakarta-tomcat/src/tests/webpages/WEB-INF/test-tomcat.xml Index: test-tomcat.xml =================================================================== RCS file: /home/cvs/jakarta-tomcat/src/tests/webpages/WEB-INF/test-tomcat.xml,v retrieving revision 1.19 retrieving revision 1.20 diff -u -r1.19 -r1.20 --- test-tomcat.xml 2001/02/10 22:11:32 1.19 +++ test-tomcat.xml 2001/02/10 22:37:32 1.20 @@ -16,7 +16,7 @@ early tests. --> - <property name="revision" value="$Revision: 1.19 $" /> + <property name="revision" value="$Revision: 1.20 $" /> <property name="host" value="127.0.0.1" /> <property name="port" value="8080" /> <property name="outputType" value="text" /> @@ -244,6 +244,27 @@ <comment>RequestDispatcher - POST, include, BODY, params </comment> <httpRequest path="/test/servlet/params.RDIncludeISParams" + method="POST"> + <param name="a" value="k" type="GET" /> + <param name="c" value="l" type="GET"/> + <param name="a" value="m" type="POST"/> + <param name="b" value="n" type="POST"/> + </httpRequest> + <!-- BODY - read with IS, inside the included servlet --> + <responseMatch match="a=m&b=n" /> + + <responseMatch match="/include1:c = [ l ]" /> + <responseMatch match="/include1:a = [ b , k ]" /> + <responseMatch match="/include1:b = [ n ]" magnitude="false" /> + <responseMatch match="postInclude1:a = [ k ]" /> + <responseMatch match="postInclude1:c = [ l ]" /> + </httpClient> + + <!-- Fails in Tomcat3.2.x --> + <httpClient> + <comment>POST, JSP, include, BODY, params </comment> + <httpRequest + path="/test/params/includeISParams.jsp" method="POST"> <param name="a" value="k" type="GET" /> <param name="c" value="l" type="GET"/> 1.2 +11 -27 jakarta-tomcat/src/tests/webpages/params/isParams.jsp Index: isParams.jsp =================================================================== RCS file: /home/cvs/jakarta-tomcat/src/tests/webpages/params/isParams.jsp,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- isParams.jsp 2001/02/06 06:53:32 1.1 +++ isParams.jsp 2001/02/10 22:37:32 1.2 @@ -1,32 +1,16 @@ <% response.setContentType("text/plain"); - PrintWriter out = response.getWriter(); + PrintWriter outW = response.getWriter(); - InputStream in=request.getInputStream(); + ServletUtil.printBody( request, outW ); + outW.flush(); - out.println("START BODY: " ); - int c; - while( (c=in.read()) >= 0 ) { - out.write( (char)c ); - } - out.println(); - out.println("END BODY"); - - // Now get parameters - only query should be available :-) - Enumeration paramN=request.getParameterNames(); - - while( paramN.hasMoreElements() ) { - String name=(String)paramN.nextElement(); - String all[]=request.getParameterValues(name); - - out.print(name); - out.print(" = [ " ); - for( int i=0; i<all.length; i++ ) { - if( i>0 ) out.print( " , "); - out.print( all[i] ); - } - out.println( " ]"); - - } - out.println(request.getQueryString()); + String pi=(String)request. + getAttribute( "javax.servlet.include.path_info"); + if( pi==null ) pi=""; + ServletUtil.printParamValues( "", " ]", + pi + ":", " = [ ", + "", "", + " , ", + request, outW ); %> 1.1 jakarta-tomcat/src/tests/webpages/params/includeISParams.jsp Index: includeISParams.jsp =================================================================== <% response.setContentType("text/plain"); PrintWriter outW = response.getWriter(); // No parameter is read String uri="/servlet/params.InputStreamParams/include1?a=b"; outW.println("Calling RD.include for: " + uri); // The POST body should be available in the included // servlet - it should not be read before the first // getParameter. RequestDispatcher rd=request.getRequestDispatcher(uri); rd.include( request, response ); ServletUtil.printParamValues( "", " ]", "postInclude1:", " = [ ", "", "", " , ", request, outW ); %> --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]