Gerar boleto da Caixa com jboleto

10 respostas
L

Ola pessoal

peguei um exemplo para cria boleto e da esse erro … ainda nao consegui resolver …

Baixei o Bopebo-03-Litio-geracaoguia-versaoavaliacao-2011-04-14.

peço ajuda … a galera !

import java.io.File;
import java.io.IOException;
import java.math.BigDecimal;
import java.util.Date;
import br.com.nordestefomento.jrimum.bopepo.BancoSuportado;
import br.com.nordestefomento.jrimum.bopepo.Boleto;
import br.com.nordestefomento.jrimum.bopepo.view.BoletoViewer;
import br.com.nordestefomento.jrimum.domkee.comum.pessoa.endereco.CEP;
import br.com.nordestefomento.jrimum.domkee.comum.pessoa.endereco.Endereco;
import br.com.nordestefomento.jrimum.domkee.comum.pessoa.endereco.UnidadeFederativa;
import br.com.nordestefomento.jrimum.domkee.financeiro.banco.febraban.Agencia;
import br.com.nordestefomento.jrimum.domkee.financeiro.banco.febraban.Carteira;
import br.com.nordestefomento.jrimum.domkee.financeiro.banco.febraban.Cedente;
import br.com.nordestefomento.jrimum.domkee.financeiro.banco.febraban.ContaBancaria;
import br.com.nordestefomento.jrimum.domkee.financeiro.banco.febraban.NumeroDaConta;
import br.com.nordestefomento.jrimum.domkee.financeiro.banco.febraban.Sacado;
import br.com.nordestefomento.jrimum.domkee.financeiro.banco.febraban.SacadorAvalista;
import br.com.nordestefomento.jrimum.domkee.financeiro.banco.febraban.TipoDeTitulo;
import br.com.nordestefomento.jrimum.domkee.financeiro.banco.febraban.Titulo;
import br.com.nordestefomento.jrimum.domkee.financeiro.banco.febraban.Titulo.EnumAceite;


/**

 * <p>

 * Exemplo de codigo para geracao de um boleto simples.
 * </p>
* <p>
 * Utiliza o Banco Bradesco como exemplo, ja que possui um implementacao simples.
 * </p>
 * 
 * @author <a href="http://gilmatryx.googlepages.com/">Gilmar P.S.L</a>
 * @author <a href="mailto:[email removido]">Misael Barreto</a>
 * @author <a href="mailto:[email removido]">Rômulo Augusto</a>
 * 
 * @since 0.2
 * 
 * @version 0.2
 */

public class MeuPrimeiroBoleto {



        public static void main(String[] args) {
			try {

                /*
                 * INFORMANDO DADOS SOBRE O CEDENTE.
                 */

                Cedente cedente = new Cedente("PROJETO JRimum", "00.000.208/0001-00");

                /*

                 * INFORMANDO DADOS SOBRE O SACADO.

                 */

                Sacado sacado = new Sacado("JavaDeveloper Pronto Para Ferias", "[CPF removido]");



                // Informando o endereco do sacado.
                Endereco enderecoSac = new Endereco();
                enderecoSac.setUF(UnidadeFederativa.RN);
                enderecoSac.setLocalidade("Natal");
                enderecoSac.setCep(new CEP("59064-120"));
                enderecoSac.setBairro("Grande Centro");
                enderecoSac.setLogradouro("Rua poeta dos programas");
                enderecoSac.setNumero("1");
                sacado.addEndereco(enderecoSac);


                /*

                 * INFORMANDO DADOS SOBRE O SACADOR AVALISTA.

                 */

                SacadorAvalista sacadorAvalista = new SacadorAvalista("JRimum Enterprise", "00.000.000/0001-91");



                // Informando o endereco do sacador avalista.
                Endereco enderecoSacAval = new Endereco();
                enderecoSacAval.setUF(UnidadeFederativa.DF);
                enderecoSacAval.setLocalidade("Brasilia");
                enderecoSacAval.setCep(new CEP("59000-000"));
                enderecoSacAval.setBairro("Grande Centro");
                enderecoSacAval.setLogradouro("Rua Eternamente Principal");
                enderecoSacAval.setNumero("001");
                sacadorAvalista.addEndereco(enderecoSacAval);



                /*

                 * INFORMANDO OS DADOS SOBRE O TITULO.

                 */

                

                // Informando dados sobre a conta bancaria do titulo.
                ContaBancaria contaBancaria = new ContaBancaria(BancoSuportado.CAIXA_ECONOMICA_FEDERAL.create());
//				CAIXA_ECONOMICA_FEDERAL   -  BANCO_BRADESCO
                contaBancaria.setNumeroDaConta(new NumeroDaConta(123456, "0"));
                contaBancaria.setCarteira(new Carteira(30));
                contaBancaria.setAgencia(new Agencia(1234, "1"));
                

                Titulo titulo = new Titulo(contaBancaria, sacado, cedente, sacadorAvalista);
                titulo.setNumeroDoDocumento("123456");
                titulo.setNossoNumero("[telefone removido]");
                titulo.setDigitoDoNossoNumero("5");
                titulo.setValor(BigDecimal.valueOf(0.23));
                titulo.setDataDoDocumento(new Date());
                titulo.setDataDoVencimento(new Date());
                titulo.setTipoDeDocumento(TipoDeTitulo.DM_DUPLICATA_MERCANTIL);
                titulo.setAceite(EnumAceite.A);
                titulo.setDesconto(new BigDecimal(0.05));
//                titulo.setDeducao(BigDecimal.ZERO);
   // [color=red]aqui da erro tambem[/color]
//                titulo.setMora(BigDecimal.ZERO);
//                titulo.setAcrecimo(BigDecimal.ZERO);
//                titulo.setValorCobrado(BigDecimal.ZERO);
		
//		titulo.setDataDoDocumento("01/09/2009");
//		titulo.setDataDoVencimento("18/09/2009");
//		titulo.setAceite(EnumAceite.N);



                /*

                 * INFORMANDO OS DADOS SOBRE O BOLETO.

                 */

                Boleto boleto = new Boleto(titulo);

                boleto.setLocalPagamento("Pagavel preferencialmente na Rede X ou em " +
                                "qualquer Banco ate o Vencimento.");
                boleto.setInstrucaoAoSacado("Senhor sacado, sabemos sim que o valor " +
                                "cobrado nao e o esperado, aproveite o DESCONTAO!");
                boleto.setInstrucao1("PARA PAGAMENTO 1 ate Hoje nao cobrar nada!");
                boleto.setInstrucao2("PARA PAGAMENTO 2 ate Amanha Nao cobre!");
                boleto.setInstrucao3("PARA PAGAMENTO 3 ate Depois de amanha, OK, nao cobre.");
                boleto.setInstrucao4("PARA PAGAMENTO 4 ate 04/xx/xxxx de 4 dias atras COBRAR O VALOR DE: R$ 01,00");
                boleto.setInstrucao5("PARA PAGAMENTO 5 ate 05/xx/xxxx COBRAR O VALOR DE: R$ 02,00");
                boleto.setInstrucao6("PARA PAGAMENTO 6 ate 06/xx/xxxx COBRAR O VALOR DE: R$ 03,00");
                boleto.setInstrucao7("PARA PAGAMENTO 7 ate xx/xx/xxxx COBRAR O VALOR QUE VOCE QUISER!");
                boleto.setInstrucao8("APOS o Vencimento, Pagavel Somente na Rede X.");


                /*

                 * GERANDO O BOLETO BANCARIO.

                 */

                // Instanciando um objeto "BoletoViewer", classe responsavel pela
                // geracao do boleto bancario.
                BoletoViewer boletoViewer = new BoletoViewer(boleto);


                // Gerando o arquivo. No caso o arquivo mencionado sera salvo na mesma
                // pasta do projeto. Outros exemplos:
                // WINDOWS: boletoViewer.getAsPDF("C:/Temp/MeuBoleto.pdf");
                // LINUX: boletoViewer.getAsPDF("/home/temp/MeuBoleto.pdf");
                File arquivoPdf = boletoViewer.getPdfAsFile("C:/MeuPrimeiroBoleto.pdf");


                // Mostrando o boleto gerado na tela.
                mostreBoletoNaTela(arquivoPdf);



			}
			catch (Exception e) { 
				System.out.println("Erro ... "+e.toString());
			}



        }



        /**

         * Exibe o arquivo na tela.

         * 

         * @param arquivoBoleto

         */

        private static void mostreBoletoNaTela(File arquivoBoleto) {
               java.awt.Desktop desktop = java.awt.Desktop.getDesktop();
                try {
                        desktop.open(arquivoBoleto);
                } catch (IOException e) {
                        e.printStackTrace();
                }
        }


}


10 Respostas

A

Seu erro parece erro de CLASSPATH, conferio se o Bopebo esta setado corretamente no classpath? ou derrepente era bom testar no netbeans ou eclipse

G

Olá Lindberg!

Primeiro:

1- Você vai gerar guias de arrecadação/recebimento?

Pelo seu código parece que não, parece que vc quer apenas gerar um boleto simples.

2- A versão,… então aconselho a baixar a ultima versão 0.2.3-SNAPSHOT:

http://jrimum.org/jrimum/wiki/Projeto/Download

Essas são as versões mais recentes referentes a Boletos.

Quanto ao seu erro, o pessoal da lista do projeto jrimum pode te ajudar, dá um pulo lá:

https://groups.google.com/forum/?hl=pt#!forum/jrimum-community

Dica: quando postar lá, coloque o erro gerado e a versão da lib que vc está usando.

Mas para adiantar… Na seção de download tem as dependências são declaradas:

O erro diz que vc não tem o “Apache Commons Lang” em seu classpath. Então certifique-se de ter todas as dependências resolvidas.

Boa sorte!

L

Ola gilmatryx, amaico

obg pela ajuda …

gilmatryx a versao 0.2.3 estar com as correções de codigo de barras para SIGCB da CAIXA ?

vou verificar e ajustar estas faltas …

L

Ola gilmatryx

Fiz o dever de casa mas o erro continua …

vou tentar o forum jrimum …

  • Se ve puder mostrar demo pra mim, ficaria muito feliz …

  • Estou estudando a api Bopepo no site, mas não encontrei a sintax, acho que estar desatualizado.

valeu a dica, obg

R

Se é o mesmo erro, as dependências não foram colocadas no classpath.
Confere aí teu caminho do classpath pra saber se o compilador tá achando os JARs mesmo!

Valeu

L

conferi varias vezes novamente … e nada

baixei a verxao 0.2.3, da o mesmo erro

  • acho que falta alguma coisa na sintax
L

boa tarde pessoal

quando vou executar no prompt da outro erro

L

ta dificil,

A

Estranho coloquei sua classe no netbeans, baixei o bopebo, e tive o seguinte erro “Caused by: java.lang.ClassNotFoundException: org.apache.commons.lang.StringUtils”, mas la na pagina no bopepo diz que os pre-requisitos seriam ter as bibliotrecas: Itext, Apache CommonsLang e ApacheLog4j, baixei todas elas e continua o erro acima. Não fiz mais teste por falta de tempo.

L

Bom dia amaica

enviei uma mensagem para jrimum, para ver se consigo.

é mas um dia chegarei lá …

Criado 25 de novembro de 2011
Ultima resposta 5 de dez. de 2011
Respostas 10
Participantes 4