Dúvida em Streams

Ola Povo tudo blz!?!?

Seguinte tenho a classe:

import javax.xml.transform.*;
import javax.xml.transform.stream.*;

public class XMLTransformer {

	public static void transform(File xmlFile, File xsltFile) {
		if(!xmlFile.isFile()){
			throw new IllegalAccessError("O arquivo " + xmlFile.getName() + " não existente no local especificado. " + 
					xmlFile.getAbsolutePath());
		}else if(!xsltFile.isFile()){
			throw new IllegalAccessError("O arquivo " + xsltFile.getName() + " não existente no local especificado. " + 
					xsltFile.getAbsolutePath());
		}
		Source xmlSource = new StreamSource(xmlFile);
		Source xsltSource = new StreamSource(xsltFile);
		TransformerFactory transFact = TransformerFactory.newInstance();
		
		try {
			Templates cachedXSLT = transFact.newTemplates(xsltSource);
			Transformer trans = cachedXSLT.newTransformer();
			trans = transFact.newTransformer(xsltSource);
			trans.setOutputProperty(OutputKeys.ENCODING,"UTF-8");
			trans.setOutputProperty(OutputKeys.INDENT, "yes");
			trans.setOutputProperty(OutputKeys.METHOD, "html");
			trans.transform(xmlSource, new StreamResult());
		} catch (TransformerConfigurationException e) {
			e.printStackTrace();
		} catch (TransformerException e) {
			e.printStackTrace();
		}
	}
}

E gostaria de sugestões para fazer com que este método fosse capaz de retornar uma String pois não quero que a saída do conteudo do arquvio seja em system.out . Será que fui claro!??! Espero que sim!!!

Abraços e até mais,

Acho que assim já funcionaria:

trans.transform(xmlSource, new StreamResult(new File("saida.txt"));

Veja que na classe StreamResult existem outros construtores além deste.

Primeiro, agradeço pela intenção.

Só que é o seguinte, a minha intenção é que o método retorne uma String pois será essa String que irei exibir em uma página JSP, entende!?!?

A idéia, num futuro próximo, é transformar esta Classe que mostrei acima para um JavaBean e então setar as propriedades nome dos arquivos e depois dar um get na string que será o HTML gerado deste método.

Espero que ainda possam me ajudar. pois, por questão de desempenho, acredito que executar o método transform e depois contruir um string a partir da leitura de um arquivo texto tornaria o processo um tanto quanto lento.

Aguardo maiores informações…
Abraço,

Você pode pensar ao contrário. Em vez de você RETORNAR uma String, você pode RECEBER como parâmetro uma OutputStream que você pode passar, dentro de sua rotina, a um construtor de StreamResult. E a OutputStream pode ser, por exemplo, a saída do seu JSP.

Pô Kra, se desse para você colocar um trecho de código para exemplificar isso que você esta dizendo eu ficaria muito grato!!!

Abraço,