Chamar impressão sem usar jreport de forma basica

[b] Awe pessoal o meu caso é o seguinte, eu tenhu uma telinha de caixa e estou com problema pra pegar a lista de produtos vendida, e mandar pra impressao direto sem exportar para pdf ou txt.

Ele chama a impressao porem nao imprime nada!
E como eu pego todos os item da jlist sem precisar selecionar?
Quem poder me ajudar desde ja agradeço![/b]

String Item =(String)jList1.getSelectedValue();
   String textoimp=Item;
        INPUT_STREAM docFlavor;
        SimpleDoc documentoTexto;
        PrintService impressora;
// /n/r para novas linhas e /f para fim da pagina
try{
InputStream prin = new ByteArrayInputStream(textoimp.getBytes()); 
docFlavor = DocFlavor.INPUT_STREAM.AUTOSENSE;
documentoTexto = new SimpleDoc(prin, docFlavor, null); 
impressora = PrintServiceLookup.lookupDefaultPrintService(); // pega a //impressora padrao
PrintRequestAttributeSet printerAttributes = new HashPrintRequestAttributeSet();
printerAttributes.add(new JobName("Impressao", null)); 
printerAttributes.add(MediaSizeName.ISO_A4); // informa o tipo de folha
DocPrintJob printJob = impressora.createPrintJob(); 
try{ 
printJob.print(documentoTexto, (PrintRequestAttributeSet)printerAttributes); //tenta imprimir
} 
catch(PrintException e){
JOptionPane.showMessageDialog(null, "Não foi possível realizar a impressão !!", "Erro", JOptionPane.ERROR_MESSAGE); // mostra //mensagem de erro
} 
prin.close();
}
catch(Exception e){
}