Problema com Interceptor

227 views
Skip to first unread message

Lucas Nakano Perez

unread,
Feb 16, 2011, 1:40:36 PM2/16/11
to jav...@googlegroups.com
Boa tarde,

          Pessoal. Esse é meu primeiro de muitos e-mails que enviarei para o grupo...:) 

          Estou com problema no Interceptadores do JSF 2.0, vou descrever aqui abaixo como está a minha aplicação e mostrar também a exception:

          Dentro de src/META-INF/ tenho o arquivo beans.xml com o seguinte conteudo:

xsi:schemaLocation="
<interceptors>
<class>br.com.projeto.interceptor.EntityManagerInterceptor</class>
</interceptors>
</beans>

          Meu arquivo EntityManagerInterceptor.java está assim:

package br.com.projeto.interceptor;

import javax.inject.Inject;
import javax.interceptor.AroundInvoke;
import javax.interceptor.Interceptor;
import javax.interceptor.InvocationContext;
import javax.persistence.EntityManager;

@Transaction
@Interceptor
public class EntityManagerInterceptor {
private EntityManager entityManager;
@Inject
public EntityManagerInterceptor(EntityManager entityManager) {
this.entityManager = entityManager;
}

@AroundInvoke
public Object intercept(InvocationContext ctx) {
this.entityManager.getTransaction().begin();
Object result = null;
try {
result = ctx.proceed();
this.entityManager.getTransaction().commit();
} catch (Exception e) {
this.entityManager.getTransaction().rollback();
}
return result;
}
}


          E a exception que está sendo disparada é a seguinte:

16:31:16,942  WARN InterceptionTypeRegistry:50 - Class 'javax.ejb.PostActivate' not found, interception based on it is not enabled
16:31:16,945  WARN InterceptionTypeRegistry:50 - Class 'javax.ejb.PrePassivate' not found, interception based on it is not enabled
16:31:16,991  WARN InterceptorMetadataUtils:60 - Method getModels defined on class br.com.projeto.controller.ModelBean will not be used for interception, since it is not defined according to the specification. It is annotated with @javax.annotation.PostConstruct, but does not have a void return type
16:31:17,008  WARN InterceptorMetadataUtils:60 - Method getBrands defined on class br.com.projeto.controller.BrandBean will not be used for interception, since it is not defined according to the specification. It is annotated with @javax.annotation.PostConstruct, but does not have a void return type
16:31:17,021  WARN InterceptorMetadataUtils:60 - Method getCars defined on class br.com.projeto.controller.CarBean will not be used for interception, since it is not defined according to the specification. It is annotated with @javax.annotation.PostConstruct, but does not have a void return type
16/02/2011 16:31:17 org.apache.catalina.core.StandardContext listenerStart
GRAVE: Exception sending context initialized event to listener instance of class org.jboss.weld.environment.servlet.Listener
org.jboss.weld.exceptions.WeldException: javassist.util.proxy.ProxyObject.getHandler()
at org.jboss.weld.bean.proxy.ProxyFactory.getProxyClass(ProxyFactory.java:287)
at org.jboss.weld.bean.AbstractClassBean.createEnhancedSubclass(AbstractClassBean.java:673)
at org.jboss.weld.bean.AbstractClassBean.initEnhancedSubclass(AbstractClassBean.java:659)
at org.jboss.weld.bean.AbstractClassBean.initializeAfterBeanDiscovery(AbstractClassBean.java:354)
at org.jboss.weld.bean.ManagedBean.initializeAfterBeanDiscovery(ManagedBean.java:420)
at org.jboss.weld.bootstrap.BeanDeployment.doAfterBeanDiscovery(BeanDeployment.java:232)
at org.jboss.weld.bootstrap.BeanDeployment.afterBeanDiscovery(BeanDeployment.java:221)
at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:369)
at org.jboss.weld.environment.servlet.Listener.contextInitialized(Listener.java:270)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4600)
at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5097)
at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5092)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: org.jboss.weld.exceptions.WeldException: javassist.util.proxy.ProxyObject.getHandler()
at org.jboss.weld.bean.proxy.InterceptedSubclassFactory.addSpecialMethods(InterceptedSubclassFactory.java:370)
at org.jboss.weld.bean.proxy.InterceptedSubclassFactory.addMethods(InterceptedSubclassFactory.java:104)
at org.jboss.weld.bean.proxy.ProxyFactory.createProxyClass(ProxyFactory.java:387)
at org.jboss.weld.bean.proxy.ProxyFactory.getProxyClass(ProxyFactory.java:283)
... 16 more
Caused by: java.lang.NoSuchMethodException: javassist.util.proxy.ProxyObject.getHandler()
at java.lang.Class.getDeclaredMethod(Unknown Source)
at org.jboss.weld.bean.proxy.InterceptedSubclassFactory.addSpecialMethods(InterceptedSubclassFactory.java:364)
... 19 more
16/02/2011 16:31:17 org.apache.catalina.loader.WebappClassLoader loadClass
INFO: Illegal access: this web application instance has been stopped already.  Could not load com.mysql.jdbc.profiler.ProfilerEventHandlerFactory.  The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
java.lang.IllegalStateException
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1562)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1521)
at com.mysql.jdbc.ConnectionImpl.realClose(ConnectionImpl.java:4485)
at com.mysql.jdbc.ConnectionImpl.close(ConnectionImpl.java:1555)
at org.hibernate.connection.DriverManagerConnectionProvider.close(DriverManagerConnectionProvider.java:175)
at org.hibernate.connection.DriverManagerConnectionProvider.finalize(DriverManagerConnectionProvider.java:165)
at java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method)
at java.lang.ref.Finalizer.runFinalizer(Unknown Source)
at java.lang.ref.Finalizer.access$100(Unknown Source)
at java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)
16/02/2011 16:31:17 org.apache.catalina.loader.WebappClassLoader loadClass
INFO: Illegal access: this web application instance has been stopped already.  Could not load java.net.BindException.  The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
java.lang.IllegalStateException
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1562)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1521)
at com.mysql.jdbc.SQLError.createLinkFailureMessageBasedOnHeuristics(SQLError.java:1279)
at com.mysql.jdbc.exceptions.jdbc4.CommunicationsException.<init>(CommunicationsException.java:60)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:409)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1122)
at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3317)
at com.mysql.jdbc.MysqlIO.quit(MysqlIO.java:1668)
at com.mysql.jdbc.ConnectionImpl.realClose(ConnectionImpl.java:4461)
at com.mysql.jdbc.ConnectionImpl.cleanup(ConnectionImpl.java:1359)
at com.mysql.jdbc.ConnectionImpl.finalize(ConnectionImpl.java:2809)
at java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method)
at java.lang.ref.Finalizer.runFinalizer(Unknown Source)
at java.lang.ref.Finalizer.access$100(Unknown Source)
at java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)


          Pessoal, alguém já passou por este problema e conseguiu resolver de alguma forma? 
 
          Atenciosamente,

Lucas.

Lucas Nakano Perez

unread,
Feb 18, 2011, 8:46:09 AM2/18/11
to jav...@googlegroups.com
Pessoal, alguém pode me ajudar com o problema abaixo?

          Atenciosamente,

Lucas.
Reply all
Reply to author
Forward
0 new messages