[Logo] Mentawai Forum - Mentawai Web Framework
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 
JBoleto  XML
Forum Index -> Comentários Gerais
Author Message
marciobarroso


[Avatar]

Joined: 15/01/2008 13:50:11
Messages: 22
Location: Barueri / SP / Brasil
Offline

Pessoal,

Já ví todos os exemplos que tem aqui no fórum do uso do JBoleto, mas para mim não esta funcionando.

Eu estou acrescentando esta funcionalidade a uma aplicação que já esta funcionando.

Minha action:
Code:
 public class GeraBoletoAction extends BaseAction {
 
 	public String execute() {
 
 		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("87524988753");
 
 		jBoletoBean.setCarteira("57");
 
 		jBoletoBean
 				.setLocalPagamento("ATE O VENCIMENTO, PREFERENCIALMENTE NO BANCO REAL ABN AMRO");
 
 		jBoletoBean
 				.setLocalPagamento2("APOS O VENCIMENTO, SOMENTE NO BANCO REAL ABN AMRO");
 
 		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("0957");
 
 		jBoletoBean.setContaCorrente("5003709");
 
 		jBoletoBean.setDvContaCorrente("6");
 
 		jBoletoBean.setNossoNumero("3020", 13);
 
 		jBoletoBean.setValorBoleto("35.00");
 
 		jBoletoBean.setDataVencimento("02/10/2007");
 
 		JBoleto jBoleto = new JBoleto();
 
 		jBoleto.addBoleto(jBoletoBean, JBoleto.BRADESCO);
 
 		this.output.setValue("stream", jBoleto.writeToByteArray());
 		this.output.setValue("contentLength", jBoleto.writeToByteArray().size());		
 		
 		return SUCCESS;
 	}
 
 }


Minha classe ApplicationManager
Code:
 public class ApplicationManager extends org.mentawai.core.ApplicationManager {
 	
 	@Override
 	public void loadActions() {
 	
 		// Configura o filter de autowiring
 		addGlobalFilter(SpringFilter.byName());
 		
 		ActionConfig ac = new ActionConfig("user", UserAction.class, "home");
 		ac.addConsequence(SUCCESS, new Forward("/site/user/index.jsp"));
 		ac.addConsequence(ERROR, new Forward("/site/user/error.jsp"));
 		addActionConfig(ac);
 		
 		ac = new ActionConfig("/gerarBoleto", GeraBoletoAction.class, "execute");
 		ac.addConsequence(SUCCESS, new StreamConsequence("application/pdf"));
 		addActionConfig(ac);
 		
 	}
 }


Stack
Code:
 14/04/2008 15:51:16 org.apache.catalina.core.AprLifecycleListener init
 INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Arquivos de programas\Java\jre1.6.0_03\bin;.;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\Arquivos de programas\Java\jre1.6.0_03\bin\client;C:\Arquivos de programas\Java\jre1.6.0_03\bin;C:\Arquivos de programas\PC Connectivity Solution\;C:\IBM\WebSphere MQ\Java\lib;c:\ruby\bin;C:\oracle\ora92\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Arquivos de programas\Java\jdk1.6.0_02\bin;C:\Arquivos de programas\Arquivos comuns\GTK\2.0\bin;C:\Arquivos de programas\cvsnt;C:\IBM\WebSphere MQ\bin;C:\IBM\WebSphere MQ\WEMPS\bin;C:\Marcio\_dev\CVSNT\;C:\CVSNT\;C:\Arquivos de programas\CVSNT\
 14/04/2008 15:51:16 org.apache.coyote.http11.Http11Protocol init
 INFO: Initializing Coyote HTTP/1.1 on http-8080
 14/04/2008 15:51:16 org.apache.catalina.startup.Catalina load
 INFO: Initialization processed in 665 ms
 14/04/2008 15:51:16 org.apache.catalina.core.StandardService start
 INFO: Starting service Catalina
 14/04/2008 15:51:16 org.apache.catalina.core.StandardEngine start
 INFO: Starting Servlet Engine: Apache Tomcat/6.0.14
 14/04/2008 15:51:17 org.apache.catalina.core.ApplicationContext log
 INFO: Initializing Spring root WebApplicationContext
 log4j:WARN No appenders could be found for logger (br.com.alphaville.boletos.commons.BaseDaoImpl).
 log4j:WARN Please initialize the log4j system properly.
 14/04/2008 15:51:19 org.apache.coyote.http11.Http11Protocol start
 INFO: Starting Coyote HTTP/1.1 on http-8080
 14/04/2008 15:51:20 org.apache.jk.common.ChannelSocket init
 INFO: JK: ajp13 listening on /0.0.0.0:8009
 14/04/2008 15:51:20 org.apache.jk.server.JkMain start
 INFO: Jk running ID=0 time=0/156  config=null
 14/04/2008 15:51:20 org.apache.catalina.startup.Catalina start
 INFO: Server startup in 3920 ms
 14/04/2008 15:51:20 org.apache.catalina.core.StandardWrapperValve invoke
 SEVERE: Servlet.service() for servlet Controller threw exception
 javax.servlet.ServletException: Could not find action for actionName: gerarBoleto
 	at org.mentawai.core.Controller.service(Controller.java:442)
 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
 	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
 	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
 	at java.lang.Thread.run(Unknown Source)
 
 


Alguém saberia me dizer onde esta o problema?

[]'s

Márcio Alves Barroso
Analista e Desenvolvedor
Cel.: 11 8674 2075
Gtalk : marciobarroso
Skype me : marcioalvesbarroso


Instrumentos Músicais
Computadores e Hardware
Automóveis
Sem nada para fazer?
Tem o que fazer, mas falta ânimo?
Nenhuma das alternativas acima
[Email] [WWW] [MSN]
IceW0lf


[Avatar]

Joined: 16/03/2006 08:33:38
Messages: 1546
Location: Brasília
Offline

O teu erro ta numa linha bem mais embaixo:

javax.servlet.ServletException: Could not find action for actionName: gerarBoleto


Tente chama-la assim:

app..../gerarBoleto.execute.mtw

Ps. quando vc for configurar o execute não precisa colocar na config da action ex:
action("/Home", HomeAction.class)
.on(SUCCESS, fwd("system/home.page"));

Leiber Wallace
Voixy ::: Soluções em Telecomunicações
marciobarroso


[Avatar]

Joined: 15/01/2008 13:50:11
Messages: 22
Location: Barueri / SP / Brasil
Offline

Eu sei ... a questão é que no desespero, tentei isso tb.

[]'s

Márcio Alves Barroso
Analista e Desenvolvedor
Cel.: 11 8674 2075
Gtalk : marciobarroso
Skype me : marcioalvesbarroso


Instrumentos Músicais
Computadores e Hardware
Automóveis
Sem nada para fazer?
Tem o que fazer, mas falta ânimo?
Nenhuma das alternativas acima
[Email] [WWW] [MSN]
IceW0lf


[Avatar]

Joined: 16/03/2006 08:33:38
Messages: 1546
Location: Brasília
Offline

sim, mas ta certo agora ou ainda tem problema ?

Leiber Wallace
Voixy ::: Soluções em Telecomunicações
marciobarroso


[Avatar]

Joined: 15/01/2008 13:50:11
Messages: 22
Location: Barueri / SP / Brasil
Offline

A action foi encontrada.

O problema agora esta sendo que o objeto stream não esta sendo encontrado pelo controller para renderizar o pdf.

Acho q este problema agora tem mais haver com o JBoleto q com o menta.

[]'s

Márcio Alves Barroso
Analista e Desenvolvedor
Cel.: 11 8674 2075
Gtalk : marciobarroso
Skype me : marcioalvesbarroso


Instrumentos Músicais
Computadores e Hardware
Automóveis
Sem nada para fazer?
Tem o que fazer, mas falta ânimo?
Nenhuma das alternativas acima
[Email] [WWW] [MSN]
marciobarroso


[Avatar]

Joined: 15/01/2008 13:50:11
Messages: 22
Location: Barueri / SP / Brasil
Offline

Resolvi fazendo o seguinte :

Na action:

Code:
 String filename = Calendar.getInstance().getTimeInMillis() + ".pdf";
 		
 		jBoleto.writeToFile(ApplicationManager.getRealPath() + File.separator + "temp" + File.separator + filename);
 		
 		try {
 			File file = new File(ApplicationManager.getRealPath() + File.separator + "temp" + File.separator + filename);
 			InputStream is = new FileInputStream(file);
 			this.output.setValue("stream", is);			
 			this.output.setValue("contentLength", file.length());
 			file.delete();
 		} catch (FileNotFoundException e) {
 			e.printStackTrace();
 		}
 


E o pdf foi renderizado numa boa.

[]'s

Márcio Alves Barroso
Analista e Desenvolvedor
Cel.: 11 8674 2075
Gtalk : marciobarroso
Skype me : marcioalvesbarroso


Instrumentos Músicais
Computadores e Hardware
Automóveis
Sem nada para fazer?
Tem o que fazer, mas falta ânimo?
Nenhuma das alternativas acima
[Email] [WWW] [MSN]
IceW0lf


[Avatar]

Joined: 16/03/2006 08:33:38
Messages: 1546
Location: Brasília
Offline

Cara,

Eu tenho uma aplicação teste do JBoleto que fiz a muuuuuuito tempo atráz, nas primeiras versões do menta.

Se precisar, só pedir...

Abraço.

Leiber Wallace
Voixy ::: Soluções em Telecomunicações
marciobarroso


[Avatar]

Joined: 15/01/2008 13:50:11
Messages: 22
Location: Barueri / SP / Brasil
Offline

Se você puder, me envie para eu dar uma analisada no fluxo da action.

Envia no meu e-mail: marciobarroso(arroba)gmail.com.

[]'s

Márcio Alves Barroso
Analista e Desenvolvedor
Cel.: 11 8674 2075
Gtalk : marciobarroso
Skype me : marcioalvesbarroso


Instrumentos Músicais
Computadores e Hardware
Automóveis
Sem nada para fazer?
Tem o que fazer, mas falta ânimo?
Nenhuma das alternativas acima
[Email] [WWW] [MSN]
ffrizzo


[Avatar]

Joined: 28/08/2007 00:17:35
Messages: 145
Offline

Se não for pedir muito.. Teria como enviar para mim tambem

ffrizzo at gmail.com

Fabiano Frizzo

Conheça o Projeto ACBr - Automação Comercial Brasil
Conheça o Projeto JACBr - Java Automação Comercial Brasil
Lupos


[Avatar]

Joined: 19/04/2007 11:53:00
Messages: 75
Offline

para mim também....

luposmf at gmail.com

Valeu.



RubemAzenha


[Avatar]
Joined: 30/06/2005 23:12:02
Messages: 472
Location: São Paulo, SP
Offline

Posta aqui como ficou a tua Action se não vai chover neguinho querendo que você mande o exemplo por e-mail


Mentawai Developer
[WWW] [MSN]
IceW0lf


[Avatar]

Joined: 16/03/2006 08:33:38
Messages: 1546
Location: Brasília
Offline

Bom,

Como disse este exemplo é bem antigo, e se não estou engando eu peguei no próprio forum do menta na época, portanto dúvidas ou sugestões postem nesse post ou localizem o original (se existir )

No ApplicationManager:

Code:
     ActionConfig ac;
 
     public void loadActions() {
         ac = new ActionConfig("/GerarBoleto", BoletoAction.class);
         ac.addConsequence(BoletoAction.SUCCESS, new StreamConsequence("application/pdf"));
         ac.addConsequence(BoletoAction.ERROR, new Forward("/error.jsp"));
         addActionConfig(ac);
     }
 



A BoletoAction:

Code:
 public class BoletoAction extends BaseAction {
 
 	public String execute() throws Exception {
 		 /* Sequencia de codigo retirada dos exemplos contidos no JBoleto */
 
 		JBoletoBean jBoletoBean = new JBoletoBean();
 
 		jBoletoBean.setDataDocumento("31/05/2006");
 	    jBoletoBean.setDataProcessamento("31/05/2006");
 
 	    jBoletoBean.setCedente("AINODE Solucoes");
 	        jBoletoBean.setCarteira("17");
 
 	        jBoletoBean.setNomeSacado("GtTurbo");
 	        jBoletoBean.setEnderecoSacado("Rua Araticum 951");
 	        jBoletoBean.setBairroSacado("Anil");
 	        jBoletoBean.setCidadeSacado("Rio de Janeiro");
 	        jBoletoBean.setUfSacado("RJ");
 	        jBoletoBean.setCepSacado("22753-501");
 	        jBoletoBean.setCpfSacado("87524988753");
 
 	        jBoletoBean.setLocalPagamento("ATE O VENCIMENTO, PREFERENCIALMENTE NO BANCO DO BRASIL");
 	        jBoletoBean.setLocalPagamento2("APOS O VENCIMENTO, SOMENTE NO BANCO DO BRASIL");
 
 	        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.setDataVencimento("10/06/2006");
 	        jBoletoBean.setInstrucao1("APOS O VENCIMENTO COBRAR MULTA DE 2%");
 	        jBoletoBean.setInstrucao2("APOS O VENCIMENTO COBRAR R$ 0,50 POR DIA DE ATRASO");
 	        jBoletoBean.setInstrucao3("");
 	        jBoletoBean.setInstrucao4("");
 
 	        jBoletoBean.setAgencia("3415");
 	        jBoletoBean.setContaCorrente("00543004"); //completar com zeros quando necessario
 
 	        jBoletoBean.setNumConvenio("1101354");
 	        jBoletoBean.setNossoNumero("0005963971",10);
 	        jBoletoBean.setValorBoleto("1.00");
 
 	        JBoleto jBoleto = new JBoleto();
 
 	        jBoleto.addBoleto(jBoletoBean,JBoleto.BANCO_DO_BRASIL);
 
 	        /* Ajuste para funcionar com o Mentawai */
 
 	        byte[] boleto = jBoleto.writeToByteArray().toByteArray();
 
 	        output.setValue("stream",boleto);
 
 	        //vide dica do saoj
 	        output.setValue("contentLength",boleto.length);
 
 	        return SUCCESS;
 	}
 
 }
 



Leiber Wallace
Voixy ::: Soluções em Telecomunicações
 
Forum Index -> Comentários Gerais
Go to:   
Powered by JForum 2.1.6 © JForum Team