<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
  <title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
<font size="-1"><font face="Verdana">Greetings,<br>
<br>
&nbsp; I've compiled MapServer from the CVS HEAD 4.9-dev (2006-07-28) and
I'm suposing the msIO_getStdoutBufferBytes is not working properly when
used in Java Mapscript. I've written a very simple example to explain
how it happens. Please take a look at it : <br>
<br>
</font></font>
<blockquote>
  <pre><font face="Lucida Console" size="-1">&nbsp; public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOExcept</font></pre>
  <pre><font face="Lucida Console" size="-1">&nbsp; {
&nbsp;&nbsp;&nbsp; PrintWriter p = resp.getWriter();
&nbsp;&nbsp;&nbsp; mapObj map = new mapObj("/home/maps/rs.wms.map");</font></pre>
  <pre><font face="Lucida Console" size="-1">&nbsp;&nbsp;&nbsp; OWSRequest reqOWS = new OWSRequest();
&nbsp;&nbsp;&nbsp; reqOWS.setParameter("SERVICE", "WMS");
&nbsp;&nbsp;&nbsp; reqOWS.setParameter("VERSION", "1.1.0");
&nbsp;&nbsp;&nbsp; reqOWS.setParameter("REQUEST", "GetCapabilities");&nbsp;
 </font></pre>
  <pre><font face="Lucida Console" size="-1">&nbsp;&nbsp;&nbsp; mapscript.msIO_installStdoutToBuffer();
&nbsp;&nbsp;&nbsp; map.OWSDispatch(reqOWS);&nbsp;
 </font></pre>
  <pre><font face="Lucida Console" size="-1">&nbsp;&nbsp;&nbsp; String contentType = mapscript.msIO_stripStdoutBufferContentType();
&nbsp;&nbsp;&nbsp; byte[] content = mapscript.msIO_getStdoutBufferBytes();
&nbsp;&nbsp;&nbsp; p.print(new String(content));</font></pre>
  <pre><font face="Lucida Console" size="-1">&nbsp; } </font></pre>
</blockquote>
<font face="Verdana" size="-1"><br>
The "byte[] content" stores the result of
msIO_stripStdoutBufferContentType and it has some garbage data at the
end. After the &gt; 0x3E we have an NL 0x0A and finally a EOF 0x00, BUT
the content doesn't stop at this point, there are more data after the
0x00 and the Java Mapscript can "see" it. That's a big problem, because
when this "content" is returned, the resulting XML is corrupted. Please
check this example bellow.</font><font size="-1"><font face="Verdana"><br>
</font></font><font size="-1"><font face="Verdana"><small><font
 face="Lucida Console"><br>
</font></small></font></font>
<blockquote>
  <pre>000018a0&nbsp; 20 20 20 20 20 20 20 20&nbsp; 20 3c 2f 4c 65 67 65 6e&nbsp; |&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/Legen|
000018b0&nbsp; 64 55 52 4c 3e 0a 20 20&nbsp; 20 20 20 20 20 20 3c 2f&nbsp; |dURL&gt;.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/|
000018c0&nbsp; 53 74 79 6c 65 3e 0a 20&nbsp; 20 20 20 3c 2f 4c 61 79&nbsp; |Style&gt;.&nbsp;&nbsp;&nbsp; &lt;/Lay|
000018d0&nbsp; 65 72 3e 0a 20 20 3c 2f&nbsp; 4c 61 79 65 72 3e 0a 3c&nbsp; |er&gt;.&nbsp; &lt;/Layer&gt;.&lt;|
000018e0&nbsp; 2f 43 61 70 61 62 69 6c&nbsp; 69 74 79 3e 0a 3c 2f 57&nbsp; |/Capability&gt;.&lt;/W|
000018f0&nbsp; 4d 54 5f 4d 53 5f 43 61&nbsp; 70 61 62 69 6c 69 74 69&nbsp; |MT_MS_Capabiliti|
00001900&nbsp; 65 73 3e 0a 00 14 00 00&nbsp; 00 14 00 00 00 14 00 00&nbsp; |es&gt;.............|
00001910&nbsp; 00 14 00 00 00 14 00 00&nbsp; 00 14 00 00 00 14 00 00&nbsp; |................|
00001920&nbsp; 00 14 00 00 00 14 00 00&nbsp; 00 14 00 00 00 14 00&nbsp;&nbsp;&nbsp;&nbsp; |...............|</pre>
</blockquote>
<small><font face="Verdana">Is it a known bug? I'm afraid this kind of
garbage can produce undesirable effects in WMS support. For this
simples example I can "manually" remove it but I'm not sure how to deal
with it in other cases. I'll be greatful if you could give me some
light.</font></small><br>
<br>
<br>
<font size="-1"><font face="Verdana">Best regards,</font></font><br>
<div class="moz-signature"><br>
-- <br>
<meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">
<title></title>
<font color="#000000" face="Verdana, Helvetica, Arial" size="1"><font
 color="#000000" size="2"><b>Jos&eacute; Vilson de Mello de Farias</b> </font><br>
<font color="#606060"><i><big>Analista de Sistemas<br>
</big></i></font></font><i style="color: rgb(96, 96, 96);"><font
 size="-2">SSE - Seguran&ccedil;a P&uacute;blica</font></i><br>
<font color="#000000" face="Verdana, Helvetica, Arial" size="1"><br>
<font color="#000080"><b>D&Iacute;GITRO TECNOLOGIA</b></font><br>
<font color="#000000"><b>E-mail:</b> </font><a
 href="mailto:vilson.farias@digitro.com.br%20"><font color="#606060">vilson.farias@digitro.com.br</font></a><br>
</font><font color="#000000" face="Verdana, Helvetica, Arial" size="1"><font
 color="#000000"><b>Messenger: </b></font></font><font color="#000000"
 face="Verdana, Helvetica, Arial" size="1"><a
 href="mailto:vilson.farias@digitro.com.br%20"><font color="#606060">vilsonfarias@hotmail.com</font></a></font><br>
<font color="#000000" face="Verdana, Helvetica, Arial" size="1"><!--<font color = #000000> <b>ICQ:</b></font>
<font color = #000000> 11866179</font><br>
!--><font
 color="#000000"><b></b></font><font color="#000000"><b>Site:</b></font>
<a href="http://www.digitro.com.br%20"><font color="#000000">www.digitro.com.br</font></a><a
 href="http://www.digitro.com.br%20"> </a></font>
</div>
</body>
</html>