j2me e banco

alguem poderia me dizer, pq quando estou retornando essa consulta do banco, ela esta vindo cheia de caracteres como horizontal tab, line feed, carriege return.


<%@ page isELIgnored="false" %>
<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<sql:query dataSource="jdbc:odbc:WebAcademico, sun.jdbc.odbc.JdbcOdbcDriver,," var="con">
	
	SELECT DISTINCT (seme_Periodo)
	FROM (tblSemestre INNER JOIN tblTurma ON tblSemestre.seme_CodSemestre = tblTurma.turm_CodSemestre) INNER JOIN (tblAluno INNER JOIN tblTurmaAlunos ON tblAluno.alun_CodAluno = tblTurmaAlunos.talu_CodAluno) ON tblTurma.turm_CodTurma = tblTurmaAlunos.talu_CodTurma
	WHERE (((tblAluno.alun_Matricula)='${param.matricula}'));
				
</sql:query>

<c:forEach items="${con.rows}" var="linha" varStatus="status">
	<c:out value="${linha.seme_Periodo}" />				
</c:forEach>

e esse e o codigo que pego o resultado da jsp acima. esse codigo e parte de uma classe j2me

public void run(){
				
		StringBuffer buf = null;
		DataInputStream dis = null;
		HttpConnection con = null;
		String array[] = null;
				
		try{
									
			url += "&id=2";
																		
			con = (HttpConnection) Connector.open(url);
				
			con.setRequestMethod(HttpConnection.GET);
			
			dis = con.openDataInputStream();
			
			int ch;
			buf = new StringBuffer();
			
			int y = 0;
						
			while((ch = dis.read()) != -1){
				//if(ch != 9 && ch != 10 && ch != 13){
				
					//buf.append((char) ch);
					System.out.println(++y);
				//}
			}
						
			dis.close();
			con.close();				
		}		
		catch(IOException io){}
}

Cara primeiramente da um select no banco. Bom se funcionou blz saca ??? Mas tudo bem você já dever ter feito isso. Garante que os dados retornados não contenham retorno de linha e estas coisas saca pois se ele tiver o caracter > e você tentar escrever ele deve dar pau ou então retorno de carro não deve ser interpretado.
Então so abraço ve ae .