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 
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!!! 
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!
