Boleto Bancario Cobrebemx

Alguém tem algum exemplo de leitura do arquivo de retorno com o componente cobrebemx, estou tentando implementar aqui, só ta faltando o retorno, ele utiliza o jacob, e eu nao sou muito familiarizado com ele!!
Obrigado!

Olá pessoal, estou com o mesmo problema aqui!!!
tenho uma aplicação, e agora estou implementando o boleto nele, geração de arquivo remessa e retorno com o componente cobrebemx e jacob, e não estou conseguindo ler as ocorrências que estão no arquivo de retorno!

o site do cobrebemx tem exemplos de leitura do arquivo de retorno em outras linguagens, mas não sei como implementar isso em java!
alguém poderia dar uma ajuda :smiley:

Obrigado desde já!!!

Bom, não usei o cobrebemx…

Mas para geração de boletos utilizo o Bopepo e para arquivos remessa/retorno o Texgit, ambos do projeto JRimum:

Além de gerar um boleto padrão sem esforço algum… Se vc quiser personalizar o boleto, ele permite personalização através de templates PDFs.
Você pode usar o OpenOffice para desenhar o boleto e depois exportar para pdf. É simples.

Já o Texgit,… É show de bola! Basta mapear o arquivo bancário e ter a informação em objetos Java.

:arrow: Ver tutoriais de boleto.

:arrow: Projeto eclipse demo para Texgit.

O bom de tudo é que se você precisar de ajuda e tiver dúvidas, chega lá no grupo que tem suporte.

E lógico, é tudo open.

Valew gilmatryx acho q esse vai ser o meu componente!!
O melhor de tudo… 100% free!!! :smiley:

Resolvido, caso alguém tenha a mesma duvida segue ai!!

import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.Dispatch;
import com.jacob.com.Variant;


public class ExemploRetorno {
	public static void main(String[] args) {
		ActiveXComponent cbx = new ActiveXComponent("CobreBemX.ContaCorrente");
		
		// Monta arquivo de licença de teste para banco 104 carteira CR;
	    cbx.setProperty("ArquivoLicenca", "C:/workspace/Cobrebemx/Licenca/748-C.conf");
	    cbx.setProperty("CodigoAgencia", "1234-5");
	    cbx.setProperty("NumeroContaCorrente", "00000123-X");
	    cbx.setProperty("CodigoCedente", "123456");
	    cbx.setProperty("InicioNossoNumero", "00001");
	    cbx.setProperty("FimNossoNumero", "99999");
	    int proximoNN = Integer.parseInt(cbx.getProperty("InicioNossoNumero").toString()) + 15;
	     cbx.setProperty("ProximoNossoNumero", proximoNN);
	     
	     // Verifica se há algum erro no arquivo de licença;
	     if (cbx.getProperty("UltimaMensagemErro") == null){
	     System.out.print(cbx.getProperty("UltimaMensagemErro"));
	     }
	     
	     // Cria PadroesBoleto e PadroesBoletoImpresso;
	    // Dispatch PadroesBoleto = cbx.getProperty("PadroesBoleto").toDispatch();
	     Dispatch ArquivoRetorno = cbx.getProperty("ArquivoRetorno").toDispatch();
	     Dispatch.put(ArquivoRetorno, "Arquivo", "RETORNO.txt");
	     Dispatch.put(ArquivoRetorno, "Diretorio", "C:/workspace/Cobrebemx/Retorno/");
	     Dispatch.put(ArquivoRetorno, "Layout", "CNAB400");
	     cbx.invoke("CarregaArquivosRetorno");
	     
	     Dispatch OcorrenciasCobranca = cbx.getProperty("OcorrenciasCobranca").toDispatch();   
	     int count = (Dispatch.get(OcorrenciasCobranca, "Count")).getInt();
	     for (int i = 0; i < count ; ++ i) { 
		     Dispatch OcorrenciaCobranca = Dispatch.call(OcorrenciasCobranca, "Item", new Integer(i)). 
		     toDispatch(); 
		     System.out.println( 
		     Dispatch.get(OcorrenciaCobranca, "NossoNumero") + ": " + 
		     Dispatch.get(OcorrenciaCobranca, "CodigoOcorrencia") + ": " +
		     Dispatch.get(OcorrenciaCobranca, "DataOcorrencia")+ ": "+
		     Dispatch.get(OcorrenciaCobranca, "Pagamento")+ ": "+
		     Dispatch.get(OcorrenciaCobranca, "ValorPago")+ ": "+
		     Dispatch.get(OcorrenciaCobranca, "Agencia") + ": " +
		     Dispatch.get(OcorrenciaCobranca, "ContaCorrente") + ": " +	     
		     Dispatch.get(OcorrenciaCobranca, "CodigoCedente"));
		     
		     Dispatch MotivosOcorrencia = Dispatch.call(OcorrenciaCobranca, "MotivosOcorrencia").toDispatch();
		     int j = Dispatch.get(MotivosOcorrencia,"Count").getInt();
		     for(int l = 0; l< j ; l++ ){
		    	 Dispatch MotivoOcorrencia = Dispatch.call(MotivosOcorrencia, "Item", new Integer(l)).toDispatch();
		    	 System.out.println(
		    		Dispatch.get(MotivoOcorrencia, "Codigo") + ": " + 
		    		Dispatch.get(MotivoOcorrencia, "Descricao") 
		    	 );
		     }
		     } 
		     System.out.println(); 
	}	
}

gilmatryx valeu pela sua ajuda, mas o sincymaster ajudou no que eu precisava!

valeu sincymaster, era isso mesmo que eu precisa!