Foros del Web » Programación para mayores de 30 ;) » Java »

Imprimir en Java - Struts desde IE

Estas en el tema de Imprimir en Java - Struts desde IE en el foro de Java en Foros del Web. Saludos, tengo el siguiente problema:ç Desarrolle una aplicacion web con struts la cual tiene una funcionalidad de imprimir un documento usando datos de un bean, ...
  #1 (permalink)  
Antiguo 30/01/2010, 00:15
 
Fecha de Ingreso: septiembre-2009
Ubicación: Lima
Mensajes: 12
Antigüedad: 14 años, 7 meses
Puntos: 0
Imprimir en Java - Struts desde IE

Saludos, tengo el siguiente problema:ç

Desarrolle una aplicacion web con struts la cual tiene una funcionalidad de imprimir un documento usando datos de un bean, cuando lo probé en mi ordenador, es decir como localhost, no hubo problemas el documento se imprimía.

Pero al subir la aplicacion a la web la funcion de imprimir no funciona.

Aqui les adjunto el codigo de la clase que imprime el documento:

Código:
package com.megabus.print;

import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.print.*;
import java.text.SimpleDateFormat;
import java.util.Date;

import com.megabus.bean.Boleto;

	public class BoletoPrint implements Printable{
		
		private final static int POINTS_PER_INCH = 72;
		public Boleto bol;

		public BoletoPrint(Boleto boleto) {
			
			super();
			
			this.bol = boleto;
			
			PrinterJob printJob = PrinterJob.getPrinterJob();
			printJob.setPrintable(this);
			
				try {
					printJob.setCopies(1);
					printJob.print();					
				} catch (Exception PrinterException) {
					PrinterException.printStackTrace();
					System.out.println("PRINTER EXCEPTION...!!!");
				}
		
		} 
		
		public int print(Graphics g, PageFormat pf, int pagina){
			
			if (pagina==0) {
				
			      Graphics2D g2d = (Graphics2D) g;

			      g2d.translate(pf.getImageableX(), pf.getImageableY());

			      g2d.setPaint(Color.black);

			      Date fechaActual = new Date();
			      SimpleDateFormat formato = new SimpleDateFormat("dd-MM-yy");
			      String cadenaFecha = formato.format(fechaActual);
			      
			      String nombreApellido = bol.getApellidos()+" "+bol.getNombres();  String dni = bol.getDni();
			      String origen = bol.getOrigen(); 									String destino = bol.getDestino();
			      String horaSalida = bol.getHoraSalida(); 							String fecha = cadenaFecha;
			      String asiento = bol.getAsiento(); 								String precio = bol.getPrecio();
			      
			      Font titleFont = new Font("helvetica", Font.PLAIN, 11);
			      g2d.setFont(titleFont);
			      
			      g2d.drawString(nombreApellido, (int) 30, (int) 80); g2d.drawString(dni, (int) 250, (int) 80);
			      g2d.drawString(origen, (int) 30, (int) 110); g2d.drawString(destino, (int) 250, (int) 110);
			      g2d.drawString(horaSalida, (int) 30, (int) 140); g2d.drawString(fecha, (int) 230, (int) 140);
			      g2d.drawString(asiento, (int) 30, (int) 160); g2d.drawString(precio, (int) 250, (int) 160);
			      
			      g2d.drawString(nombreApellido, (int) 350, (int) 80);
			      g2d.drawString(origen, (int) 360, (int) 100);
			      g2d.drawString(destino, (int) 360, (int) 120);
			      g2d.drawString(fecha, (int) 380, (int) 140);
			      g2d.drawString(asiento, (int) 395, (int) 155);
			      g2d.drawString(precio, (int) 395, (int) 170);

			      return (PAGE_EXISTS);

				
			} else {
				  return (NO_SUCH_PAGE);
			}
		}

		
	}


Y bueno lo unico que hacia cuando probaba la aplicacion en mi ordenador era hacer un:

BoletoPrint b = new BoletoPrint(boleto); //Donde "boleto" es el bean con los datos a imprimir

esta linea de codigo esta ubicada en el action correspondiente y se ejecuta luego de que recibe la confirmacion de que el registro de los datos se realizo correctamente...

No se por que no imprime cuando accedo, a la aplicacion ya colgada, desde el IE.

Por favor alguien que me ayude...!!!

Etiquetas: struts
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:38.