V|Raptor 3.5.1 - URIs dinamicas | lista no parameter path

73 views
Skip to first unread message

Vinicius Alves Maia

unread,
May 22, 2013, 11:47:56 AM5/22/13
to caelum-...@googlegroups.com
Olá, 

Alguem saberia me dizer se é possível criar uma uri dinamica, aonde uma dos elementos da URI é um item de uma lista de um Objeto ?

Exemplo:

[code]
@Path("/pesquisa/item/por/idSubIntem/{item.algoString}/{item.lista[0].idSubItem}/{pagina}")
public void pesquisaFarmaciaPorPosicaoGeografica (Item item, Integer pagina) {...}
[/code]


Carlos Alberto Junior Spohr Poletto

unread,
May 22, 2013, 11:52:25 AM5/22/13
to caelum-...@googlegroups.com
Acho que não rola não Vinicius...como você pensou que ficaria a sua URI ?

O VRaptor lhe atende se você precisar fazer um dinamismo na URI, exemplo:

/produtos/{categoria.id}/{subCategoria.id}/lista-tudo/




--
You received this message because you are subscribed to the Google Groups "caelum-vraptor" group.
To unsubscribe from this group and stop receiving emails from it, send an email to caelum-vrapto...@googlegroups.com.
To post to this group, send email to caelum-...@googlegroups.com.
Visit this group at http://groups.google.com/group/caelum-vraptor?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.
 
 



--
Atenciosamente,
Carlos Alberto Junior Spohr Poletto

Carlos Alberto Junior Spohr Poletto

unread,
May 22, 2013, 11:53:20 AM5/22/13
to caelum-...@googlegroups.com
Esqueci de comentar, que se for para uma navegação você pode fazer um método Next e Previous ...igual o que tem nas navegações do Wordpress, simples e eficiente.


2013/5/22 Carlos Alberto Junior Spohr Poletto <carlos...@gmail.com>

Vinicius Maia

unread,
May 22, 2013, 12:01:05 PM5/22/13
to caelum-...@googlegroups.com
@Carlos imaginei algo semelhante ao submeter um form.

Mapeado no vraptor

a chamada ficaria assim 

.../pesquisa/3/pipoca

isso poderia me retornar um lista de todos os subItens que tem pipoca que pertencem a um determinado Item.

Lucas Cavalcanti

unread,
May 22, 2013, 12:08:42 PM5/22/13
to caelum-vraptor
Vinicius, vc tentou executar isso que vc tá perguntando?

o vraptor trata o parametro da url como se fossem parametros de formulário. As mesmas regras se aplicam.

mas é meio estranho fazer isso...


2013/5/22 Vinicius Maia <vmai...@gmail.com>

Vinicius Maia

unread,
May 22, 2013, 12:23:55 PM5/22/13
to caelum-...@googlegroups.com
@Lucas tentei sim.


13:39:14,687 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/autorizeFarmaServices]] (MSC service thread 1-2) Exception starting filter vraptor: java.lang.IllegalArgumentException: Parameters paths are invalid: [view, beneficiario.cpf, beneficiario.cartao, beneficiario.planos[0].plano_codigo] for method public void br.com.orizon.farma.autorize.services.controller.BeneficioController.pesquisaBeneficio(EnumTipoView , Beneficiario)
at br.com.caelum.vraptor.http.route.DefaultTypeFinder.getParameterTypes(DefaultTypeFinder.java:53) [vraptor-3.5.1.jar:]
at br.com.caelum.vraptor.http.route.DefaultRouteBuilder.addParametersInfo(DefaultRouteBuilder.java:187) [vraptor-3.5.1.jar:]
at br.com.caelum.vraptor.http.route.DefaultRouteBuilder.is(DefaultRouteBuilder.java:175) [vraptor-3.5.1.jar:]
at br.com.caelum.vraptor.http.route.PathAnnotationRoutesParser.registerRulesFor(PathAnnotationRoutesParser.java:101) [vraptor-3.5.1.jar:]
at br.com.caelum.vraptor.http.route.PathAnnotationRoutesParser.rulesFor(PathAnnotationRoutesParser.java:75) [vraptor-3.5.1.jar:]
at br.com.caelum.vraptor.ioc.ResourceHandler.handle(ResourceHandler.java:59) [vraptor-3.5.1.jar:]
at br.com.caelum.vraptor.ioc.guice.GuiceProvider.executeStereotypeHandlers(GuiceProvider.java:109) [vraptor-3.5.1.jar:]
at br.com.caelum.vraptor.ioc.guice.GuiceProvider.start(GuiceProvider.java:98) [vraptor-3.5.1.jar:]
at br.com.caelum.vraptor.VRaptor.init(VRaptor.java:108) [vraptor-3.5.1.jar:]
at br.com.caelum.vraptor.VRaptor.init(VRaptor.java:102) [vraptor-3.5.1.jar:]
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:447) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3269) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardContext.start(StandardContext.java:3865) [jbossweb-7.0.13.Final.jar:]
at org.jboss.as.web.deployment.WebDeploymentService.start(WebDeploymentService.java:90) [jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) [rt.jar:1.6.0_45]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) [rt.jar:1.6.0_45]
at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_45]
Caused by: java.lang.NullPointerException
at br.com.caelum.vraptor.http.route.DefaultTypeFinder.getParameterTypes(DefaultTypeFinder.java:51) [vraptor-3.5.1.jar:]
... 18 more

13:39:14,703 ERROR [org.apache.catalina.core.StandardContext] (MSC service thread 1-2) Error filterStart
13:39:14,703 ERROR [org.apache.catalina.core.StandardContext] (MSC service thread 1-2) Context [/autorizeFarmaServices] startup failed due to previous errors
13:39:14,718 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-2) MSC00001: Failed to start service jboss.web.deployment.default-host./autorizeFarmaServices: org.jboss.msc.service.StartException in service jboss.web.deployment.default-host./autorizeFarmaServices: JBAS018040: Failed to start context
at org.jboss.as.web.deployment.WebDeploymentService.start(WebDeploymentService.java:95)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) [rt.jar:1.6.0_45]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) [rt.jar:1.6.0_45]
at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_45]



Estrutura  de teste
Beneficiario.List<Plano>.plano_codigo


Esse erro ocorre quando inicio o Jboss 7.1

Com form não tentei , porem a versão 3.0.* eu uso e funciona nos formulários.

Realmente é meio estranho, porem é uma tentativa de reutilizar estruturas e não precisar ficar dando setts


Lucas Cavalcanti

unread,
May 22, 2013, 12:25:56 PM5/22/13
to caelum-vraptor
existe o setter setPlano_codigo?

Vinicius Maia

unread,
May 22, 2013, 12:30:02 PM5/22/13
to caelum-...@googlegroups.com
@Lucas sim sim.


[code]

private String plano_codigo;
private String plano_nome;
public String getPlano_codigo() {
return plano_codigo;
}
public void setPlano_codigo(String plano_codigo) {
this.plano_codigo = plano_codigo;
}

public String getPlano_nome() {
return plano_nome;
}
public void setPlano_nome(String plano_nome) {
this.plano_nome = plano_nome;
}
[/code]


2013/5/22 Lucas Cavalcanti <lucasm...@gmail.com>

Lucas Cavalcanti

unread,
May 22, 2013, 12:36:17 PM5/22/13
to caelum-vraptor
Meio fora da convenção do Java, mas tudo bem ;)

é... acho que não vai funcionar desse jeito mesmo =/ isso pq o VRaptor tenta descobrir qual é o tipo do parametro da url, para fazer regexes... se vc colocar :.+ no final talvez funcione:
{beneficiario.planos[0].plano_codigo:.+}

Vinicius Maia

unread,
May 22, 2013, 12:48:13 PM5/22/13
to caelum-...@googlegroups.com
@Lucas , infelizmente não foi com o {beneficiario.planos[0].plano_codigo:.+} 

Se eu utilizar a convenção {beneficiario.planos[0].planoCodigo}  é pra funcionar ?

Lucas Cavalcanti

unread,
May 22, 2013, 12:52:22 PM5/22/13
to caelum-vraptor
o problema é a lista no meio do caminho mesmo...

em todo caso é meio estranho isso estar na URL desse jeito


2013/5/22 Vinicius Maia <vmai...@gmail.com>

Vinicius Maia

unread,
May 22, 2013, 1:01:04 PM5/22/13
to caelum-...@googlegroups.com
@Lucas de boa.  Eu recebo um plano e me viro.

Muito obrigado pela atenção !!

xP

vlw
Reply all
Reply to author
Forward
0 new messages