Asher,

A few questions...

What do you put in the text box on the form and what output do you see?

Are you really using "<form act="/tests/utf.jsp" method=post>" or do you mean
<form action="/tests/utf.jsp" method=post>?

When I did my test I copied your UTF-8 character form the bugzilla report and
pasted into the text box. I was seeing question marks in the output until I
added the <[EMAIL PROTECTED] pageEncoding="UTF-8"%> The test was on XP (as per the bug
report) and I assume you used IE as the browser.

The URI encoding is a red herring in this case. Because you are using post it is
only the request encoding that matters.

The full text of my test JSP is below.

Mark

<%@ page language="java" import="java.lang.*,java.util.*" %>
<%@ page pageEncoding="UTF-8" %>
<html>
<body>
 
<form action="bug29900.jsp" method=post>
<input type=text name=source >
<input type=submit>
<form>
<p>
 
<%
request.setCharacterEncoding("UTF-8");

if(request.getParameter("source")!=null)
{ 
  out.println(request.getParameter("source").length()+"<p>");
 
  out.println(request.getParameter("source"));
 
  StringBuffer sb = new StringBuffer();
  for(int i=0; i<request.getParameter("source").length(); i++)
  {
    if(request.getParameter("source").charAt(i) == '&')
      sb.append("&");
    else
      sb.append(request.getParameter("source").charAt(i));
 
  }
  out.println("<p>"+ sb.toString());
}
%>
 
</body>
</html>

 

> -----Original Message-----
> From: Asher Tarnopolski [mailto:[EMAIL PROTECTED] 
> Sent: Sunday, July 04, 2004 6:25 PM
> To: [EMAIL PROTECTED]
> Subject: utf-8 with tomcat 5: second round 
> 
> hi folks, 
> i've published a question about it a couple of days ago, but 
> didn't get any responses.
> i've tried some things i found in bugzilla, but they didn't 
> help. so, i wanna try to get your help once more.
> once more about my problem: 
> i try to send utf-8 encoded parameters in POST body, but they 
> arrived encoded in ISO...
> this worked perfectly with tomcat 4.0.x. 
> from the info i've got from a developer at bugzilla i learned 
> that the difference between tc4.0 and tc5  
> that causes the change is actually in coyote http1.1 
> connector. there is an  attribute
> called useBodyEncodingForURI which was set to "true" in tc4, 
> but became "false" in tc5.
> setting it to "true" together with <%@ page 
> pageEncoding="UTF-8" %> and 
> <%request.setCharacterEncoding("UTF-8");%> will make the difference.
> i made the change, the jsp tags are in the code and coyote 
> settings look like this now:
> 
> <code>
> <!-- Define a non-SSL Coyote HTTP/1.1 Connector on port 8080 -->
>     <Connector port="8080"
>                maxThreads="150" minSpareThreads="25" 
> maxSpareThreads="75"
>                enableLookups="false" redirectPort="8443" 
> acceptCount="100"
>                debug="0" connectionTimeout="20000"
>                useBodyEncodingForURI="true"
>                disableUploadTimeout="true" />
> </code>
> 
> but this doesn't help! another request to bugzilla didn't 
> help either, i was told that this is not a bug in tomcat,
> so they are not going to deal with the question. well, may be 
> it's not a tomcat bug, but it should be some kind of bug.
> any ideas?
> 
> my testing code comes here:
> 
> <code>
> 
> <[EMAIL PROTECTED] contentType="text/html; charset=utf-8"%>
> <[EMAIL PROTECTED] pageEncoding="utf-8"%>
> <html>
> <head>
> </head>
> <body>
>  
> <form act="/tests/utf.jsp" method=post>
> <input type=text name=source >
> <input type=submit>
> <form>
> <p>
>  
> <%
> request.setCharacterEncoding("UTF-8");
> 
> if(request.getParameter("source")!=null)
> { 
>   out.println(request.getParameter("source").length()+"<p>");
>  
>   out.println(request.getParameter("source"));
>  
>   StringBuffer sb = new StringBuffer();
>   for(int i=0; i<request.getParameter("source").length(); i++)
>   {
>     if(request.getParameter("source").charAt(i) == '&')
>       sb.append("&");
>     else
>       sb.append(request.getParameter("source").charAt(i));
>  
>   }
>   out.println("<p>"+ sb.toString());
> }
> %>
>  
> </body>
> </html>
> 
> 
> </code>
> 



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

Reply via email to