Ireport 3.7.4

31 respostas
E

Bem galera eu jah fiz vários topicos sobre IReport, resolvi várias duvidas porem a cada vez vai aparecendo mais e mais problemas.

Eu consegui abrir o relatorio por uma classe, passar os parametros e boa.
Eu estava utilizando o Ireport 1.2.5 ele estava abrindo de boa, porem eu precisava colocar 2 paginas, falaram pra mim utilizar o 3.7.4 estou utiulizando ele, mais quando eu pego o arquivo .JASPER que está na pasta do IReport e jogo no meu projeto.
Porem quando eu inicio a classe para abrir o relatorio ele dá o seguinte erro:

Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: cannot assign instance of net.sf.jasperreports.engine.base.JRBaseRectangle to field net.sf.jasperreports.engine.base.JRBasePen.penContainer of type net.sf.jasperreports.engine.JRPenContainer in instance of net.sf.jasperreports.engine.base.JRBasePen at java.io.ObjectStreamClass$FieldReflector.setObjFieldValues(ObjectStreamClass.java:2032) at java.io.ObjectStreamClass.setObjFieldValues(ObjectStreamClass.java:1212) at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1953) at java.io.ObjectInputStream.defaultReadObject(ObjectInputStream.java:480) at net.sf.jasperreports.engine.base.JRBasePen.readObject(JRBasePen.java:264) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351) at java.util.ArrayList.readObject(ArrayList.java:593) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1667) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1323) at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351) at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:88) at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:232) at avdesempenho.relatorio_avdesempenho.jButton2ActionPerformed(relatorio_avdesempenho.java:1161) at avdesempenho.relatorio_avdesempenho.access$200(relatorio_avdesempenho.java:32) at avdesempenho.relatorio_avdesempenho$3.actionPerformed(relatorio_avdesempenho.java:110) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242) at javax.swing.AbstractButton.doClick(AbstractButton.java:357) at javax.swing.plaf.basic.BasicRootPaneUI$Actions.actionPerformed(BasicRootPaneUI.java:191) at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1633) at javax.swing.JComponent.processKeyBinding(JComponent.java:2851) at javax.swing.KeyboardManager.fireBinding(KeyboardManager.java:267) at javax.swing.KeyboardManager.fireKeyboardAction(KeyboardManager.java:216) at javax.swing.JComponent.processKeyBindingsForAllComponents(JComponent.java:2928) at javax.swing.JComponent.processKeyBindings(JComponent.java:2920) at javax.swing.JComponent.processKeyEvent(JComponent.java:2814) at java.awt.Component.processEvent(Component.java:6040) at java.awt.Container.processEvent(Container.java:2041) at java.awt.Component.dispatchEventImpl(Component.java:4630) at java.awt.Container.dispatchEventImpl(Container.java:2099) at java.awt.Component.dispatchEvent(Component.java:4460) at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1850) at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:712) at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:990) at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:855) at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:676) at java.awt.Component.dispatchEventImpl(Component.java:4502) at java.awt.Container.dispatchEventImpl(Container.java:2099) at java.awt.Window.dispatchEventImpl(Window.java:2478) at java.awt.Component.dispatchEvent(Component.java:4460) at java.awt.EventQueue.dispatchEvent(EventQueue.java:599) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161) at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

Alguem pode me ajudar? eu to sofrendo de mais com o IReport.
E eu tenho que mudar os .JARS do IReport…
Porque os que estão no meu projeto é do 1.2.5, porem eu não acho os arquivos especificos lá na pasta do 3.7.4.

Eu acho que eu que to nubando.
Muito Obrigado. :slight_smile:

31 Respostas

W

Baixa a versão 3.7.4 do JasperReports em http://jasperforge.org/plugins/espnews/browse.php?group_id=102&news_id=235

E

Eu tenho a versão 3.7.4…

E agora ? :smiley:

A

Cara, eu tenho uma aplicação em Swing rodando relatórios feitos em iReports. Ainda uso uma versão beeeeeeeem mais antiga que essa sua aí, mas os .jar que estão no CLASSPATH do projeto são esses:

commons-beanutils-1.7.jar
commons-collections-2.1.jar
commons-digester-1.7.jar
commons-logging-1.0.2.jar
itext-1.3.1.jar
jasperreports-3.0.0.jar
poi-3.0.1-FINAL-20070705.jar

Todos encontrados na pasta /lib do iReport. Sugiro que procure aí no seu, os nomes dos pacotes deve ser os mesmos, mudando só o final que indica a versão.

Boa sorte aí e não desista do iReport. Quando pegares a manha de trabalhar com ele verás que é uma ferramenta muito bacana.

T

Eu ja passei por um problema parecido, utilizava o IREPORT 2.algumacoisa e qd mudei a versão para uma mais recente deu alguns problemas e não consegui rodar o relatorio, mas era uma versão só um pouco maior q eu usava 2.alguma_coisa.mais_alguma_coisa hj ainda abro esses mesmos arquivos na versão 3.alguma_alguma coisa, e td funciona normalmente.

Me desculpe pelos .algumacoisa, é q tenho esse projeto só no meu note e ta em casa e não me lembro as versões de cabeça!

Ja tentou abrir e recompilar esses .jasper?

Boa sorte cara, como ja falaram ai o IReport/Jasper realmente é uma otima ferramenta!

[]'s

E

Blz cvara, vou procurar aqui, o problema que na versão 1.2.5 tem a pasta lib com os arquivos especificados, já na outra versão eu não to conseguindo achar …

Eu tava utilizando a versão 1.2.5, só que eu não tava conseguindo fazer relatorio com 2 paginas, ai falaram pra baixar o 3.7.4, ai lá tem o break, e eu to querendo testar, mais não to conseguindo abrir o relatorio feito pela versão mais recente.
Vamos ver.

Qualquer coisa eu procuro aqui. xP

M

Quando vc abriu o ireport pela primeira vez ele não te deu a opção de importar das versões mais antigas, tente fazer isso talvez te ajude!

Att.

E
Obrigado pelas Dicas. Bem falera achei os .JARS, importei na biblioteca do meu projeto. Porem continua danto este erro aqui
xception in thread "AWT-EventQueue-0" java.lang.ClassCastException: cannot assign instance of net.sf.jasperreports.engine.base.JRBaseStaticText to field net.sf.jasperreports.engine.base.JRBaseLineBox.boxContainer of type net.sf.jasperreports.engine.JRBoxContainer in instance of net.sf.jasperreports.engine.base.JRBaseLineBox
        at java.io.ObjectStreamClass$FieldReflector.setObjFieldValues(ObjectStreamClass.java:2032)
        at java.io.ObjectStreamClass.setObjFieldValues(ObjectStreamClass.java:1212)
        at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1953)
        at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
        at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
        at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
        at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
        at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
        at java.util.ArrayList.readObject(ArrayList.java:593)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
        at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849)
        at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
        at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
        at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
        at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
        at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1667)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1323)
        at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
        at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
        at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
        at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
        at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
        at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
        at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:88)
        at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:232)
        at avdesempenho.relatorio_avdesempenho.jButton2ActionPerformed(relatorio_avdesempenho.java:1161)
        at avdesempenho.relatorio_avdesempenho.access$200(relatorio_avdesempenho.java:32)
        at avdesempenho.relatorio_avdesempenho$3.actionPerformed(relatorio_avdesempenho.java:110)
        at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
        at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
        at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
        at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
        at javax.swing.AbstractButton.doClick(AbstractButton.java:357)
        at javax.swing.plaf.basic.BasicRootPaneUI$Actions.actionPerformed(BasicRootPaneUI.java:191)
        at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1633)
        at javax.swing.JComponent.processKeyBinding(JComponent.java:2851)
        at javax.swing.KeyboardManager.fireBinding(KeyboardManager.java:267)
        at javax.swing.KeyboardManager.fireKeyboardAction(KeyboardManager.java:216)
        at javax.swing.JComponent.processKeyBindingsForAllComponents(JComponent.java:2928)
        at javax.swing.JComponent.processKeyBindings(JComponent.java:2920)
        at javax.swing.JComponent.processKeyEvent(JComponent.java:2814)
        at java.awt.Component.processEvent(Component.java:6040)
        at java.awt.Container.processEvent(Container.java:2041)
        at java.awt.Component.dispatchEventImpl(Component.java:4630)
        at java.awt.Container.dispatchEventImpl(Container.java:2099)
        at java.awt.Component.dispatchEvent(Component.java:4460)
        at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1850)
        at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:712)
        at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:990)
        at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:855)
        at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:676)
        at java.awt.Component.dispatchEventImpl(Component.java:4502)
        at java.awt.Container.dispatchEventImpl(Container.java:2099)
        at java.awt.Window.dispatchEventImpl(Window.java:2478)
        at java.awt.Component.dispatchEvent(Component.java:4460)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

Alguem sabe o que é ?

o Codigo que eu to utilizando pra abrir é esse aqui:
HashMap map = new HashMap();
         String arquivoJasper = "teste2.jasper";
			rel = JasperFillManager.fillReport(arquivoJasper, map, con1);
                } catch (JRException e) {
			JOptionPane.showMessageDialog(null,e.getMessage());
		}
 
        JasperPrint relat;
           try {
            relat = rel;
             JasperViewer.viewReport(relat, false);
             } catch (Exception e) {
              JOptionPane.showMessageDialog(null, "Erro: " + e.getMessage());
             }

Aguardo respostas!

A
T

porque nao trabalha com relatorio compilado?

utilize o relatorio ja compilado .jrxml
que talvez te polpe dores de cabeça

E

Ja tentei recompilar o .jasper

Você diz relatorio compilado, abrir o arquvio .jrxml???

ele continua dando o mesmo erro.

Isso ta me quebrando as pernas >.<.
O Foda se for aquivo compilado pela versão 1.2.5 ele abre, porem se for a do 3.7.4 ele dá esse erro…
e eu jah importei os .jars necessarios da pasta do 3.7.4.

Puta vida que foda O.o

E

Bem pessoal vou sair do trampo…
Amanha eu volto a olhar o topico, se alguem puder dar um explicação sobre isso.

Muito Obrigado! Até!

A

TheKill:
porque nao trabalha com relatorio compilado?

utilize o relatorio ja compilado .jrxml
que talvez te polpe dores de cabeça

Não seria o contrário? O arquivo .jrxml é o fonte… o compilado é o .jasper… que já é o que ele tá chamando no código dele.

eduardomelo: o que te sugeriram aí foi você pegar o fonte desse relatório que foi criado na versão 1.2.5 e abrir pelo iReport 3.7.4 e então recompilar, que ele vai ter que gerar um .jasper atualizado.

T

.jasper mesmo, só erro de digitação

E

Então cara eu jah fiz isso de recompilar ele no na versão mais nova ai fui lá na pasta e peguei o .jasper mais atualizado, porem dá aquele erro…
E também no ireport 1.2.5 eu consigo visualizar o relatorio, e no 3.7.4 eu não.
Tá estranho d++.
Tipo no meu relatorio todos os fileds são parametros.
tá tenso cara.

E

No caso quando eu dou preview ele não abre o relatorio em pdf.

T

porque nao refaz o relatorio na nova versão?

E

Vou refazer…

E

Bem eu fiz 1 simpes, e deu o mesmo erro.
Que joça cara!

E

Eu acho que eu to errando da hora de fazer o relatorio, porque sempre que eu crio um novo e dou preview ele manda mensagem Document Has no pages, e abre um pdf com 1 parte em branco só!.
Sei lá…
Ta dificil d+++

T

Se vc ta mandando APENAS parametros pelo HashMap para o relatorio o documento fica sem paginas, pq ele nao sabe de quantas paginas se trata o documento.

Faça uma Collection com 2 itens no Array e mande para o relatorio junto com o HashMap

T

exemplo:

ArrayList&lt;String&gt; numPaginas = new ArrayList&lt;String&gt;();
		numPaginas.add("");
		JRBeanCollectionDataSource ds = new JRBeanCollectionDataSource(
				numPaginas);
		try {
			JasperPrint jp = JasperFillManager.fillReport(jasper, HashMap, ds);
			JasperViewer.viewReport(jp, false);
E

Ok vou tentar aqui cara.

E

Então eu fiz o codigo que você me falou.

ArrayList<String> numPaginas = new ArrayList<String>();
          numPaginas.add("");
         JRBeanCollectionDataSource ds = new JRBeanCollectionDataSource(
         numPaginas);
         try {
             String arquivoJasper = "avDesempenho2.jasper";
         JasperPrint jp = JasperFillManager.fillReport(arquivoJasper, HashMap, ds);
          JasperViewer.viewReport(jp, false);  
            }catch(Exception ex){
                JOptionPane.showMessageDialog(null,"Erro!!");
            }

Porem ele dá esse erro aqui...

java.lang.ClassCastException: cannot assign instance of net.sf.jasperreports.engine.base.JRBaseStaticText to field net.sf.jasperreports.engine.base.JRBaseLineBox.boxContainer of type net.sf.jasperreports.engine.JRBoxContainer in instance of net.sf.jasperreports.engine.base.JRBaseLineBox

Se puder ir um pouco devagar...
Ok para passar parametros eu estava fazendo assim

try{   
         HashMap map = new HashMap();
         map.put("Nome", nome);
         map.put("Matricula", uti.getMatricula());
  String arquivoJasper = "avDesempenho2.jasper";
		rel = JasperFillManager.fillReport(arquivoJasper, map, con1);
                          JasperFillManager.fillReport(arquivoJasper, map, con);
                } catch (JRException e) {
			JOptionPane.showMessageDialog(null,e.getMessage());
		}
        JasperPrint relat;
           try {
            relat = rel;
             JasperViewer.viewReport(relat, false);
       
             } catch (Exception e) {
              JOptionPane.showMessageDialog(null, "Erro: " + e.getMessage());
             }

È assim que tá meu codigo basicamente.
Com o relatorio do 1.2.5 ele abre e manda os parametros de boa, porem com a versão atualizada ele não dá certo e eu mudei os .jars e etc...
E é esse mesmo que tá dando aquele erro.
Tem várias coisas que são iguais nos codigos.
Nessa parte eu to nubando ainda, porque é muito novo pra mim e eu to perdidão.

T

TheKill:
exemplo:

ArrayList&lt;String&gt; numPaginas = new ArrayList&lt;String&gt;(); numPaginas.add(""); JRBeanCollectionDataSource ds = new JRBeanCollectionDataSource( numPaginas); try { JasperPrint jp = JasperFillManager.fillReport(jasper, HashMap, ds); JasperViewer.viewReport(jp, false);

Tente isso.

E

Eu fiz isso cara, e dá esse erro aqui

java.lang.ClassCastException: cannot assign instance of net.sf.jasperreports.engine.base.JRBaseRectangle to field net.sf.jasperreports.engine.base.JRBasePen.penContainer of type net.sf.jasperreports.engine.JRPenContainer in instance of net.sf.jasperreports.engine.base.JRBasePen

:?:

T

entao vc fez algo errado, pq nao falei nada de JRBaseRectangle.

Se reparar eu uso JRBeanCollectionDataSource

E

isso ai seria o banco?
pq se quando eu coloco o objeto do meu metodo conexão, ele retorna aquele 1° erro que eu postei.

T

Amigao, não é por nada… mas de uma olhada em algum tutorial e tente entender o que o relatório faz…

Ficar supondo coisas é complicado, o seu erro nao condiz com oque eu pedi para vc fazer

E

Cara eu jah olhei alguns tutoriais…
Só que eu fiz o que você pediu.

Se não for pedir muito tem como você me enviar um exemplo seu de código e relatorio.
Que eu dou uma olhada e pronto.

Se puder, vou mandar uma msg Privada pra você com meu email.

Mutio OBrigado por Tudo.

[Tópico Finalizado]

T

Nao vai dar, se a noite sobrar um tempo eu lhe mando.

Estou em serviço

E

Ok obrigado por tudo…

Me desculpe o transtorno.

Criado 20 de outubro de 2010
Ultima resposta 21 de out. de 2010
Respostas 31
Participantes 6