| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/01/2010 14:09:11
|
warley
Java Ninja
![[Avatar]](/images/avatar/868b7df964b1af24c8c0a9e43a330c6a.png)
Membro desde: 16/03/2004 18:46:25
Mensagens: 266
Localização: Vitória - ES
Offline
|
Olá a todos...
Pessoal estou criando um relatório que possui um subreport.
Basicamente eu tenho uma lista de objetos e em cada objeto eu tenho uma outra lista de objetos.
Vejam o código:
No meu relatório pricipal eu tenho 3 filds : nome (do tipo String), matrícula (do tipo String) e listaExtratos (do tipo java.util.List).
No meu subreport eu coloquei apenas um fild que é do tipo String e coloquei o connection type como "use datasource expression" e em Data Source Expression eu coloquei $F{listaExtratos}.
Quando eu rodo o relatório acontede o seguinte erro:
Alguêm sabe o motivo do erro?
Obrigado.
This message was edited 1 time. Last update was at 14/01/2010 14:39:33
|
Ninguém é tão grande que não possa aprender, nem tão pequeno que não possa ensinar
Já me perguntaram: "O porquê que tem que ser em Java?"
Eu respondi: "Por quê não pode ser?"
- SCWCD 1.4
- SCJP 5.0
- SCJA 1.0 |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/01/2010 14:14:20
|
fabiozoroastro
GUJ Master
![[Avatar]](/images/avatar/d28a3097fa7cf63ad01c4f328314e2f2.jpg)
Membro desde: 15/05/2006 16:23:01
Mensagens: 1262
Offline
|
Isso ocorre na hora de compilar seu relatório?
|
[]'s
..."Apenas sorria!"
Twitter
Blog
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/01/2010 14:17:40
|
warley
Java Ninja
![[Avatar]](/images/avatar/868b7df964b1af24c8c0a9e43a330c6a.png)
Membro desde: 16/03/2004 18:46:25
Mensagens: 266
Localização: Vitória - ES
Offline
|
O erro ocorre quando eu executo o relatório.
|
Ninguém é tão grande que não possa aprender, nem tão pequeno que não possa ensinar
Já me perguntaram: "O porquê que tem que ser em Java?"
Eu respondi: "Por quê não pode ser?"
- SCWCD 1.4
- SCJP 5.0
- SCJA 1.0 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/01/2010 14:46:54
|
warley
Java Ninja
![[Avatar]](/images/avatar/868b7df964b1af24c8c0a9e43a330c6a.png)
Membro desde: 16/03/2004 18:46:25
Mensagens: 266
Localização: Vitória - ES
Offline
|
Pessola consegui!!!
Segue a solução:
A minha classe BeneficiarioTO possui os seguintes atribusto:
private String matricula;
private String nome;
List<ExtratoTO> listaExtratos;
No IReport eu mapiei os dois primeiro com String e o atributo listaExtratos como java.util.List.
Agora o pulo do gato: Inseri o subreport e coloquei as seguintes propriedades:
connection type: use datasource
data souce expression: new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{listaExtratos})
No subrepostes eu coloquei os atritutos contidos no meu objeto ExtratoTO com os mesmo data types.
E funcionou!
Obrigado e um abraço para todos.
|
Ninguém é tão grande que não possa aprender, nem tão pequeno que não possa ensinar
Já me perguntaram: "O porquê que tem que ser em Java?"
Eu respondi: "Por quê não pode ser?"
- SCWCD 1.4
- SCJP 5.0
- SCJA 1.0 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 31/03/2010 21:15:06
|
thiagocg
Virtual Machine Man
![[Avatar]](/images/avatar/e22c686bc771d5872150738b15f3e533.jpg)
Membro desde: 08/04/2006 11:07:07
Mensagens: 541
Localização: Campo Grande - MS
Offline
|
Olá warley, cara, revivendo este seu post, estou conseguindo gerar o relatorio seguindo o que vc passou neste post, so não to conseguindo pegar dinamicamente o subrelatorio para exibição, quando seto na mão o caminho absoluto do arquivo ai funciona legal, mas quando tento por o contexto da minha aplicação web ele não encontra o .jasper e ele esta la sim.
Como vc fez pra pegar dinamicamente o subrelatorio???
[]'s
|
________________________________
Thiago Araujo da Silva
Analista de Sistemas
Tecnólogo em Processamento de Dados (Estácio - CG/MS)
Especialista em Desenvolvimento de Aplicações em Java (Uniderp - CG/MS)
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 31/03/2010 21:49:32
|
Andre Brito
JWizard
Membro desde: 21/07/2007 17:44:31
Mensagens: 2485
Localização: Paraná
Offline
|
Pelo que eu pude entender você quer pegar o Jasper pelo contexto, pegar o path dele e mandar pro relatório principal. É isso? Se for isso, você pode criar um parâmetro dentro do relatório, colocar esse parâmetro como caminho pro subrelatório e, quando for executar a aplicação, pegar no contexto, obter o path e setar o parâmetro.
|
Como organizar o GUJ.
Meu Twitter.
Meu blog.
Future proofing means making code easy to change, not trying to anticipate every possible way your code might need to change. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/04/2010 09:17:46
|
thiagocg
Virtual Machine Man
![[Avatar]](/images/avatar/e22c686bc771d5872150738b15f3e533.jpg)
Membro desde: 08/04/2006 11:07:07
Mensagens: 541
Localização: Campo Grande - MS
Offline
|
Olá Andre, mesmo eu setando manualmente ou pegando o contexto pelo faces, ele não consegue achar o subrelatorio, e sim eu estou passando o caminho dele por um parametro do relatorio principal, o que é estranho pois o sub relatorio esta no mesmo diretorio que o relatorio principal (/meuContexto/relatorios) e este é encontrado na pasta do contexto normalmente. E para o subrelatorio eu estou tendo de setar o caminho absoluto da pasta que contem o arquivo.
Obrigado pela ajuda!
[]'s
|
________________________________
Thiago Araujo da Silva
Analista de Sistemas
Tecnólogo em Processamento de Dados (Estácio - CG/MS)
Especialista em Desenvolvimento de Aplicações em Java (Uniderp - CG/MS)
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/04/2010 12:36:02
|
Andre Brito
JWizard
Membro desde: 21/07/2007 17:44:31
Mensagens: 2485
Localização: Paraná
Offline
|
Humm... Estranho.
Se o sub está na mesma pasta em que o relatório principal, você só precisa colocar o nome do Jasper no parâmetro (no próprio iReport mesmo). Dá uma olhada se ele muda no XML isso também... Eu fiz algumas vezes e passei algumas horas até descobrir que não estava alterando no xml.
|
Como organizar o GUJ.
Meu Twitter.
Meu blog.
Future proofing means making code easy to change, not trying to anticipate every possible way your code might need to change. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/04/2010 14:02:35
|
thiagocg
Virtual Machine Man
![[Avatar]](/images/avatar/e22c686bc771d5872150738b15f3e533.jpg)
Membro desde: 08/04/2006 11:07:07
Mensagens: 541
Localização: Campo Grande - MS
Offline
|
No ireport eu utilizo um parametro que passa o caminho do subrelatorio, acho q é o padrão do ireport quando vc cria um subrelatorio, pois ele mesmo criou esse parametro pra mim quando criei o subrelatorio. Quanto ao "xml" que vc se refere seria o ".jrxml" ???
Mais uma vez obrigado pela ajuda!
[]'s
|
________________________________
Thiago Araujo da Silva
Analista de Sistemas
Tecnólogo em Processamento de Dados (Estácio - CG/MS)
Especialista em Desenvolvimento de Aplicações em Java (Uniderp - CG/MS)
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/04/2010 10:57:03
|
Andre Brito
JWizard
Membro desde: 21/07/2007 17:44:31
Mensagens: 2485
Localização: Paraná
Offline
|
Sim, o jrxml.
Se todos estiver em /home/user/app/reports (todos os jaspers, eu quero dizer), no seu relatório só deve ter o nome dos subrelatórios. Mais nada. Não precisa de parâmetro, nem nada. Você só precisa usar parâmetros quando os reports estão em lugares diferentes (ou podem mudar... quando você coloca num ear, por exemplo).
|
Como organizar o GUJ.
Meu Twitter.
Meu blog.
Future proofing means making code easy to change, not trying to anticipate every possible way your code might need to change. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 11/05/2010 10:40:14
|
lazaropj
JavaGuru
![[Avatar]](/images/avatar/3a7903fcebdcf15c702766488ede0488.jpg)
Membro desde: 29/10/2009 11:05:04
Mensagens: 244
Localização: Brasilia - DF
Offline
|
Revivendo novamente...
No relatorio principal, vc falou q colocou FIELDS né... Mas assim, vc alimentou esse fields como ?
Pq se vc não colocar uma fonte de dado, ele não compila
ele fala assim:
Field not found: "nomeDoField"
Tentei trocar. No lugar de TextField, eu coloquei Parameters. Assim no Ireport ele compila, mas o relatorio fica todo em branco quando executo a aplicação.
Tem com vc me ajudar?
abraço.
|
Lazaro Jr.
Java4all
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 11/05/2010 10:53:12
|
thiagocg
Virtual Machine Man
![[Avatar]](/images/avatar/e22c686bc771d5872150738b15f3e533.jpg)
Membro desde: 08/04/2006 11:07:07
Mensagens: 541
Localização: Campo Grande - MS
Offline
|
Olá Lazaro, os Fields são realmente necessarios pois eles representam a sua coleção que estiver sendo passada ao relatorio em tempo de execução, talves o que possa estar acontecendo é vc estar inserindo um field não declarado no seu relatorio, ou mesmo se for em tempo de execução em sua coleção o objeto que estiver sendo passado deve possuir uma correspondencia entre cada field e uma propriedade de seu objeto.
[]'s
|
________________________________
Thiago Araujo da Silva
Analista de Sistemas
Tecnólogo em Processamento de Dados (Estácio - CG/MS)
Especialista em Desenvolvimento de Aplicações em Java (Uniderp - CG/MS)
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 11/05/2010 11:06:42
|
lazaropj
JavaGuru
![[Avatar]](/images/avatar/3a7903fcebdcf15c702766488ede0488.jpg)
Membro desde: 29/10/2009 11:05:04
Mensagens: 244
Localização: Brasilia - DF
Offline
|
Mas velho... se eu colocar o field na mão, o Ireport não gera o .jasper
E estou passo o .jasper pro aplicação...
Devo então passar o .jrxml e mandar ele compilar o jasper??
daí ele vai pegar o field e atriduir ao campo nome da minha classe..
será q é isso ?
|
Lazaro Jr.
Java4all
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 11/05/2010 11:14:18
|
thiagocg
Virtual Machine Man
![[Avatar]](/images/avatar/e22c686bc771d5872150738b15f3e533.jpg)
Membro desde: 08/04/2006 11:07:07
Mensagens: 541
Localização: Campo Grande - MS
Offline
|
Lazaro, vc esta utilizando o ireport certo?
Voce consegue compilar e rodar a partir de sua aplicação sem adicionar o subrelatorio? Isto usando o Field?
Vamos tentar eliminar as coisas aos poucos...rsrsrs
[]'s
|
________________________________
Thiago Araujo da Silva
Analista de Sistemas
Tecnólogo em Processamento de Dados (Estácio - CG/MS)
Especialista em Desenvolvimento de Aplicações em Java (Uniderp - CG/MS)
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 11/05/2010 11:17:11
|
lazaropj
JavaGuru
![[Avatar]](/images/avatar/3a7903fcebdcf15c702766488ede0488.jpg)
Membro desde: 29/10/2009 11:05:04
Mensagens: 244
Localização: Brasilia - DF
Offline
|
Não consigo, pois passo para a minha aplicação o .jasper
E se eu coloco no Ireport, os fields e tento compilar para gerar o jasper ele fala q o field não foi encontrado...
=/
|
Lazaro Jr.
Java4all
|
|
|
 |
|
|