Meu Servlet:
package boleto;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.sql.SQLException;
import java.util.Vector;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jboleto.JBoleto;
import org.jboleto.JBoletoBean;
import db.ModelMain;
public class GeraBoleto extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 1L;
ModelMain con = new ModelMain();
public GeraBoleto()
{
super();
con.openConnection();
}
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
analizaBoleto(req, resp);
}
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
analizaBoleto(req, resp);
}
protected void analizaBoleto(HttpServletRequest req, HttpServletResponse resp) {
try {
montaBoleto(req,resp);
}catch (SQLException e) {
e.printStackTrace();
}
}
public void montaBoleto(HttpServletRequest req, HttpServletResponse resp) throws SQLException{
JBoletoBean jBoletoBean = new JBoletoBean();
jBoletoBean.setDataDocumento("31/05/2007");
jBoletoBean.setDataProcessamento("31/05/2007");
jBoletoBean.setCedente("KOBI SYSTEM LTDA ME");
jBoletoBean.setNomeSacado("Teste");
jBoletoBean.setEnderecoSacado("Rua teste");
jBoletoBean.setBairroSacado("XXXX");
jBoletoBean.setCidadeSacado("Rio de Janeiro");
jBoletoBean.setUfSacado("RJ");
jBoletoBean.setCepSacado("22753-501");
jBoletoBean.setCpfSacado("[telefone removido]");
jBoletoBean.setCarteira("57");
jBoletoBean.setLocalPagamento("ATE O VENCIMENTO, PREFERENCIALMENTE NA CAIXA ECONOMICA");
jBoletoBean.setLocalPagamento2("APOS O VENCIMENTO, SOMENTE NA CAIXA ECONOMICA");
Vector descricoes = new Vector();
descricoes.add("Hospedagem I - teste descricao1 - R$ 39,90");
descricoes.add("Manutencao - teste ricao2 - R$ 32,90");
descricoes.add("Sistema - teste ssssde descricao3 - R$ 45,90");
descricoes.add("Extra - teste de descricao4 - R$ 78,90");
jBoletoBean.setDescricoes(descricoes);
jBoletoBean.setInstrucao1("APOS O VENCIMENTO COBRAR MULTA DE 2%");
jBoletoBean.setInstrucao2("APOS O VENCIMENTO COBRAR R$ 0,50 POR DIA DE ATRASO");
jBoletoBean.setInstrucao3("Inclusao de mais uma linha");
jBoletoBean.setInstrucao4("");
jBoletoBean.setAgencia("0155");
jBoletoBean.setContaCorrente("13877");
jBoletoBean.setDvContaCorrente("4");
jBoletoBean.setCarteira("82"); //pode ser 80 ou 81 ou 82 (Confirmar com gerente)
jBoletoBean.setCodigoOperacao("870");
jBoletoBean.setCodigoFornecidoAgencia("00000324");
jBoletoBean.setDvCodigoFornecidoAgencia("1");
jBoletoBean.setNossoNumero("19525086",8);
jBoletoBean.setNoDocumento("987656123");
jBoletoBean.setValorBoleto("1.00");
jBoletoBean.setDataVencimento("02/10/2007");
JBoleto jBoleto = new JBoleto();
jBoleto.addBoleto(jBoletoBean,JBoleto.CAIXA_ECONOMICA);
String pasta = getServletContext().getRealPath("/relatorios/")+ "/";
String arqBoleto = "caixa.pdf";
jBoleto.writeToFile(pasta+arqBoleto);
File arquivo = new File(pasta+arqBoleto);
try {
download( arquivo.getName(), read( arquivo ), resp );
} catch (IOException e) {
e.printStackTrace();
}
}
//le o arquivo e retorno no formato byte
public static byte[] read( File file ) throws IOException {
byte[] content = null;
int fileLength = (int) file.length();
FileInputStream fileInput = null;
try {
fileInput = new FileInputStream(file);
BufferedInputStream bufferedInput = new BufferedInputStream(
fileInput);
content = new byte[fileLength];
bufferedInput.read(content, 0, fileLength);
bufferedInput.close();
} finally {
if (fileInput != null) {
fileInput.close();
}
}
return content;
}
//metodo que invoca o download do arquivo
public static void download( String filename, byte[] content,
HttpServletResponse response ) throws IOException {
response.addHeader( "Content-Disposition",
"attachment; filename=" + filename );
response.setContentType( "application/download" );
ServletOutputStream outStream = response.getOutputStream();
// envia o conteúdo do arquivo para o stream de resposta
try {
outStream.write( content );
outStream.flush();
} finally {
outStream.close();
}
}
}
Erro:
java.lang.NoClassDefFoundError: org/jboleto/JBoletoBean
at boleto.GeraBoleto.montaBoleto(GeraBoleto.java:54)
quando uso alguma classe contida numn .jar, que está importado corretamente ao buildpath, sempre da esse erro…
alguem pode ajudar?