Erro Vraptor 3.5 com o GlassFish 3.1

Galera,

estou tentando subir o blak project do Vraptor 3.5 com o GlassFish 3.1, usando a JDK 1.6.43 estou recebendo os seguintes erros abaixo, poderiam me ajudar?

Não sei por onde começar!

[code]GRAVE: Class [ Lorg/hibernate/validator/method/MethodValidator; ] not found. Error while loading [ class br.com.caelum.vraptor.validator.MethodValidatorCreator ]
GRAVE: Class [ Lorg/hibernate/validator/method/MethodValidator; ] not found. Error while loading [ class br.com.caelum.vraptor.validator.MethodValidatorCreator ]

GRAVE: log4j:ERROR log4j called after unloading, see http://logging.apache.org/log4j/1.2/faq.html#unload.
GRAVE: java.lang.IllegalStateException: Class invariant violation
at org.apache.log4j.LogManager.getLoggerRepository(LogManager.java:199)
at org.apache.log4j.LogManager.getLogger(LogManager.java:228)
at org.slf4j.impl.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:73)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:242)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:254)
at br.com.caelum.vraptor.validator.ValidatorCreator.(ValidatorCreator.java:40)
at sun.misc.Unsafe.ensureClassInitialized(Native Method)
at sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAccessorFactory.java:25)
at sun.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:122)
at java.lang.reflect.Field.acquireFieldAccessor(Field.java:918)
at java.lang.reflect.Field.getFieldAccessor(Field.java:899)
at java.lang.reflect.Field.get(Field.java:358)
at org.glassfish.web.loader.WebappClassLoader.clearReferences(WebappClassLoader.java:1835)
at org.glassfish.web.loader.WebappClassLoader.stop(WebappClassLoader.java:1664)
at org.glassfish.web.loader.WebappClassLoader.preDestroy(WebappClassLoader.java:1633)
at org.glassfish.deployment.common.DeploymentContextImpl.getClassLoader(DeploymentContextImpl.java:232)
at org.glassfish.deployment.common.DeploymentContextImpl.getClassLoader(DeploymentContextImpl.java:184)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:450)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:240)
at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:370)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$1.execute(CommandRunnerImpl.java:355)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:370)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1067)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1200(CommandRunnerImpl.java:96)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1247)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1235)
at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:465)
at com.sun.enterprise.v3.admin.AdminAdapter.service(AdminAdapter.java:222)
at com.sun.grizzly.tcp.http11.GrizzlyAdapter.service(GrizzlyAdapter.java:168)
at com.sun.enterprise.v3.server.HK2Dispatcher.dispath(HK2Dispatcher.java:117)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:234)
at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:822)
at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:719)
at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1013)
at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
at java.lang.Thread.run(Thread.java:662)[/code]

Quais os jars você tem no classpath?

todos que vieram no blank project só importei no eclipse e na versao anterior do vraptor era tranquilo nao tinha dado nenhum pau.

Copie os jars do bean validation para o web-inf/lib:

http://repo1.maven.org/maven2/org/hibernate/hibernate-validator/4.1.0.Final/hibernate-validator-4.1.0.Final.jar
http://repo1.maven.org/maven2/javax/validation/validation-api/1.0.0.GA/validation-api-1.0.0.GA.jar

Garcia,

obrigado por responder mais não de certo, continua o erro:


GRAVE: Class [ Lorg/hibernate/validator/method/MethodValidator; ] not found. Error while loading [ class br.com.caelum.vraptor.validator.MethodValidatorCreator ]
GRAVE: Class [ Lorg/hibernate/validator/method/MethodValidator; ] not found. Error while loading [ class br.com.caelum.vraptor.validator.MethodValidatorCreator ]

E alguns outros referentes ao lo4j.

[code]
GRAVE: log4j:ERROR log4j called after unloading, see http://logging.apache.org/log4j/1.2/faq.html#unload.
GRAVE: java.lang.IllegalStateException: Class invariant violation
at org.apache.log4j.LogManager.getLoggerRepository(LogManager.java:199)
at org.apache.log4j.LogManager.getLogger(LogManager.java:228)
at org.slf4j.impl.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:73)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:242)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:254)
at br.com.caelum.vraptor.validator.ValidatorCreator.(ValidatorCreator.java:40)
at sun.misc.Unsafe.ensureClassInitialized(Native Method)
at sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAccessorFactory.java:25)
at sun.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:122)
at java.lang.reflect.Field.acquireFieldAccessor(Field.java:918)
at java.lang.reflect.Field.getFieldAccessor(Field.java:899)
at java.lang.reflect.Field.get(Field.java:358)
at org.glassfish.web.loader.WebappClassLoader.clearReferences(WebappClassLoader.java:1835)
at org.glassfish.web.loader.WebappClassLoader.stop(WebappClassLoader.java:1664)
at org.glassfish.web.loader.WebappClassLoader.preDestroy(WebappClassLoader.java:1633)
at org.glassfish.deployment.common.DeploymentContextImpl.getClassLoader(DeploymentContextImpl.java:232)
at org.glassfish.deployment.common.DeploymentContextImpl.getClassLoader(DeploymentContextImpl.java:184)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:450)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:240)
at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:370)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$1.execute(CommandRunnerImpl.java:355)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:370)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1067)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1200(CommandRunnerImpl.java:96)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1247)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1235)
at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:465)
at com.sun.enterprise.v3.admin.AdminAdapter.service(AdminAdapter.java:222)
at com.sun.grizzly.tcp.http11.GrizzlyAdapter.service(GrizzlyAdapter.java:168)
at com.sun.enterprise.v3.server.HK2Dispatcher.dispath(HK2Dispatcher.java:117)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:234)
at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:822)
at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:719)
at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1013)
at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
at java.lang.Thread.run(Thread.java:662)

GRAVE: log4j:WARN No appenders could be found for logger (br.com.caelum.vraptor.config.BasicConfiguration).[/code]

Alguma idéia? Porque eu nem faço…

Vou fazer alguns testes aqui e te retorno.

Muito obrigado!!! Também estou tentando aqui.

dá uma olhada se o glassfish já não vem com um hibernate validator (ou outra implementação do bean validations) e, se tiver, remova o hibernate validator e a validations api do seu classpath.

Vlw Lucas vou dar uma olhada, mas o estranho que eu ja tinha o vraptor 3.4 funfando.

Você está usando a 3.1-Final ou alguma minor release?

Fiz alguns testes com o 3.1-Final. Ele possui uma versão antiga do hibernate-validator (jar bean-validator.jar dentro de /modules).

Você pode fazer um teste este cara? https://docs.google.com/file/d/0BzAtNXBAgQnedTJQbkZMcXU1Skk/edit?usp=sharing

Garcia,

eu tirei do meu classpath o hibernate-validator que vem no blank project, nem sei se deveria. Coloquei snapshot q vc me passou e deu o seguinte erro quando subi a app:

GRAVE: Class [ javax/validation/ParameterNameProvider ] not found. Error while loading [ class br.com.caelum.vraptor.validator.MethodValidatorFactoryCreator ]

GRAVE: Class [ javax/validation/ParameterNameProvider ] not found. Error while loading [ class br.com.caelum.vraptor.validator.MethodValidatorFactoryCreator ]

Não encontra essa interface, no validation-api nao tem ela msm, deveria?

Não é para remover o bean validation, mas sim apenas usar essa versao do vraptor que te mandei :slight_smile:

Já fiz isso e dá o seguinte erro:

Class [ javax/validation/ParameterNameProvider ] not found. Error while loading [ class br.com.caelum.vraptor.validator.MethodValidatorFactoryCreator ]
GRAVE: Class [ javax/validation/ParameterNameProvider ] not found. Error while loading [ class br.com.caelum.vraptor.validator.MethodValidatorFactoryCreator ]

Estranho, pois nos meus teste funcionaram ok.

Qual a versão exata do Glassfish você está usando? Quais as libs você tem no classpath?

Desisti, joguei no Tomcat 7…Depois vejo isso.

Valeu a ajuda hermanos!!!

Estou com o mesmo problema.
So baixei a 3.5.1 e importei no Netbeans. Msm erro.