Java - impresion java y linux

 
Vista:

impresion java y linux

Publicado por jarflo (3 intervenciones) el 13/08/2007 20:22:28
Tengo el siguiente problema debido a un problema con los driver en linux de una miniprinter no puedo utilizar cups para la impresion en java asi que lo tengo que hacer manualmente con echo cat y /dev/lp0 donde la salida en crudo seria por ejemplo "echo mensaje que quiero se imprima >> /dev/lp0" mi gran problema que tengo al crear el servidor de impresion es que me es imposible que el formato que me llegue de un cliente lo respete sin saltos de linea, por lo que pregunto sugerencias o soluciones dejo un codigo haber si es posible su ayuda

import java.net.*;
import java.io.*;

class servidorim{
public static void main( String args[] ) {

ServerSocket s = null;
DataInputStream sIn;
PrintStream sOut;
Socket cliente = null;
String texto,texto2,f;
int g;

//lectura de archivo de onfiguracion
try {
java.io.BufferedReader lec= new java.io.BufferedReader(new java.io.InputStreamReader(new java.io.FileInputStream("puerto.txt")));

f= lec.readLine();
g=Integer.parseInt(f);

System.out.println(g);
// Abrimos una conexión en el puerto 9999

try {
s = new ServerSocket(g);

} catch( IOException e ) {
System.out.println( e );
}
for(;;){
// Creamos el objeto desde el cual atenderemos y aceptaremos
// las conexiones de los clientes y abrimos los canales de
// comunicación de entrada y salida

try {

cliente = s.accept();
System.out.println(cliente);

sIn = new DataInputStream( cliente.getInputStream() );
sOut = new PrintStream( cliente.getOutputStream() );
System.out.println("me ha llegado una peticion");
// Cuando recibamos datos, los mandamos a imprimir pantalla e impresora

texto = sIn.readLine();
System.out.println(texto);
/*parte impresion*/
String s1 = new String( "echo " );
String s2 = new String( " >> /dev/lp0" );
texto2 = s1.concat( texto );
texto = texto2.concat (s2);
String[] command ={"sh","-c",texto};
Process childs = Runtime.getRuntime().exec(command);
//del for de arriba }

} catch( IOException e ) {
System.out.println( e );
}
}


} catch (IOException exc) {

System.err.println(exc);
System.out.println("Asegurar de tener archivo de configuracion correctamente");

}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:impresion java y linux

Publicado por jarflo (3 intervenciones) el 13/08/2007 22:44:15
Ya lo he corregido muchas gracias la situacion solo se trataba de insertar un delay para que le diera tiempo de impresion
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar