É que eu tenho 2 trechos do código na mesma situação: um paciente com uma lista de convênios e um médico com uma lista de especialidades. O erro é o mesmo. Aqui na thread eu usei o paciente como exemplo, mas mandei a stack errada mesmo. Segue a stack de quando eu crio o paciente (com o debug do Vraptor):
11:06:53,404 DEBUG [DefaultResourceTranslator] trying to access /novo-paciente
11:06:53,408 DEBUG [DefaultResourceTranslator] found resource [DefaultResourceMethod: PacienteController.cadastrar(Paciente, String)]
11:06:53,408 DEBUG [ToInstantiateInterceptorHandler] Invoking interceptor HibernateInterceptor
11:06:53,409 DEBUG [ToInstantiateInterceptorHandler] Invoking interceptor ExceptionHandlerInterceptor
11:06:53,410 DEBUG [ToInstantiateInterceptorHandler] Invoking interceptor FlashInterceptor
11:06:53,413 DEBUG [ToInstantiateInterceptorHandler] Invoking interceptor InstantiateInterceptor
11:06:53,413 DEBUG [ToInstantiateInterceptorHandler] Invoking interceptor DaoInterceptor
11:06:53,417 DEBUG [DefaultResult ] including attribute conveniosList: [Amil, Bradesco Saúde, Dix, Golden Cross, Unimed]
11:06:53,417 DEBUG [DefaultResult ] including attribute convenios: {Amil=false, Bradesco Saúde=false, Dix=false, Golden Cross=false, Unimed=false}
11:06:53,418 DEBUG [IogiParametersProvider] IogiParametersProvider is up
11:06:53,418 DEBUG [LazyInterceptorHandler] Invoking interceptor ParametersInstantiatorInterceptor
11:06:53,419 DEBUG [ParanamerNameProvider] Found parameter names with paranamer for PacienteController.cadastrar(Paciente, String) as [paciente, confirmarSenha]
11:06:53,419 DEBUG [ParanamerNameProvider] Found parameter names with paranamer for PacienteController.cadastrar(Paciente, String) as [paciente, confirmarSenha]
11:06:53,420 DEBUG [IogiParametersProvider] getParametersFor() called with parameters Parameters(Parameter(paciente.senha -> felipe), Parameter(paciente.email -> felipe@gmail.com), Parameter(paciente.sexo -> Masculino), Parameter(paciente.convenios[0] -> 3), Parameter(paciente -> ), Parameter(paciente.convenios[1] -> 5), Parameter(paciente.telefone -> (12) 3456-7890), Parameter(paciente.nome -> Felipe), Parameter(paciente.cpf -> 012.345.678-90), Parameter(paciente.celular -> (12) 34567-9005), Parameter(confirmarSenha -> felipe)) and targets [Target(name=paciente, type=class br.com.metamorfosevirtual.models.Paciente), Target(name=confirmarSenha, type=class java.lang.String)].
Jan 30, 2014 11:06:53 AM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [default] in context with path [/marque-agora] threw exception
br.com.caelum.vraptor.http.InvalidParameterException: Exception when trying to instantiate Target(name=paciente, type=class br.com.metamorfosevirtual.models.Paciente)
at br.com.caelum.vraptor.http.iogi.VRaptorInstantiator.handleException(VRaptorInstantiator.java:96)
at br.com.caelum.vraptor.http.iogi.VRaptorInstantiator.instantiate(VRaptorInstantiator.java:88)
at br.com.caelum.vraptor.http.iogi.VRaptorInstantiator.instantiate(VRaptorInstantiator.java:81)
at br.com.caelum.vraptor.http.iogi.IogiParametersProvider.instantiateOrAddError(IogiParametersProvider.java:80)
at br.com.caelum.vraptor.http.iogi.IogiParametersProvider.instantiateParameters(IogiParametersProvider.java:73)
at br.com.caelum.vraptor.http.iogi.IogiParametersProvider.getParametersFor(IogiParametersProvider.java:63)
at br.com.caelum.vraptor.interceptor.ParametersInstantiatorInterceptor.getParametersFor(ParametersInstantiatorInterceptor.java:132)
at br.com.caelum.vraptor.interceptor.ParametersInstantiatorInterceptor.intercept(ParametersInstantiatorInterceptor.java:86)
at br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:59)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.metamorfosevirtual.interceptors.DaoInterceptor.intercept(DaoInterceptor.java:36)
at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.caelum.vraptor.interceptor.InstantiateInterceptor.intercept(InstantiateInterceptor.java:48)
at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.caelum.vraptor.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:83)
at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.caelum.vraptor.interceptor.ExceptionHandlerInterceptor.intercept(ExceptionHandlerInterceptor.java:67)
at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.metamorfosevirtual.interceptors.HibernateInterceptor.intercept(HibernateInterceptor.java:30)
at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.caelum.vraptor.interceptor.ResourceLookupInterceptor.intercept(ResourceLookupInterceptor.java:69)
at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.caelum.vraptor.core.EnhancedRequestExecution.execute(EnhancedRequestExecution.java:44)
at br.com.caelum.vraptor.VRaptor$1.insideRequest(VRaptor.java:93)
at br.com.caelum.vraptor.ioc.guice.GuiceProvider.provideForRequest(GuiceProvider.java:82)
at br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: br.com.caelum.vraptor.VRaptorException: Unable to find converter for java.util.List
at br.com.caelum.vraptor.core.DefaultConverters.to(DefaultConverters.java:59)
at br.com.caelum.vraptor.http.iogi.VRaptorInstantiator$VRaptorTypeConverter.converterForTarget(VRaptorInstantiator.java:159)
at br.com.caelum.vraptor.http.iogi.VRaptorInstantiator$VRaptorTypeConverter.setPropertiesAfterConversions(VRaptorInstantiator.java:144)
at br.com.caelum.vraptor.http.iogi.VRaptorInstantiator$VRaptorTypeConverter.instantiate(VRaptorInstantiator.java:135)
at br.com.caelum.iogi.reflection.NewObject.setProperty(NewObject.java:57)
at br.com.caelum.iogi.reflection.NewObject.populateProperties(NewObject.java:51)
at br.com.caelum.iogi.reflection.NewObject.valueWithPropertiesSet(NewObject.java:41)
at br.com.caelum.vraptor.http.iogi.VRaptorInstantiator$VRaptorTypeConverter.setPropertiesAfterConversions(VRaptorInstantiator.java:146)
at br.com.caelum.vraptor.http.iogi.VRaptorInstantiator$VRaptorTypeConverter.instantiate(VRaptorInstantiator.java:135)
at br.com.caelum.iogi.MultiInstantiator.instantiate(MultiInstantiator.java:20)
at br.com.caelum.vraptor.http.iogi.VRaptorInstantiator.instantiate(VRaptorInstantiator.java:86)
... 50 more