I am working on a project in netbeans that when I launch it using the glassfish 3.1.2.Everything works fine.But when i call the /invite url which is mapped to following method
@RequestMapping(value = "/invite", method = RequestMethod.POST)
@ExceptionHandler(GenericException.class)
public ModelAndView create(@ModelAttribute(value = "preRegister") @Valid PreRegister preRegister, BindingResult result, HttpServletRequest request) {
mav = new ModelAndView();
validator.validate(preRegister, result);
List<Role> roleList = null;
if (result.hasErrors()) {
mav.setViewName("user_populate_create");
try {
roleList = roleDao.list();
} catch (Exception ex) {
logger.error("UserController: Unable to list Roles: ", ex);
throw new GenericException("UserController: Unable to list Roles: " + ex.getMessage());
}
if (roleList == null || roleList.isEmpty()) {
throw new GenericException("UserController: Unable to list Roles");
} else {
mav.addObject("roles", roleList);
}
} else {
String uuid = RandomUuid.generate();
preRegister.setUrlCode(uuid);
preRegister.setCreatedOn(Helper.rightNow());
List<PreRegister> p;
try {
p = preRegisterDao.findbyQuery("checkAvailability", preRegister.getLoginId());
if (p == null || p.isEmpty()) {
preRegisterDao.saveOrUpdate(preRegister);
} else {
throw new GenericException("User Email Id is Exist! try With another Email Id ");
}
} catch (Exception exception) {
exception.printStackTrace();
logger.error("Invite user: ", exception);
throw new GenericException("Exception :: " + exception.getMessage());
}
}
return mav;
}
Even the first line of method is not executed and gives me this stacktrace
java.lang.AbstractMethodError
at javax.persistence.Persistence$PersistenceUtilImpl.isLoaded(Unknown Source)
at org.hibernate.validator.engine.resolver.JPATraversableResolver.isReachable(JPATraversableResolver.java:61)
at org.hibernate.validator.engine.resolver.DefaultTraversableResolver.isReachable(DefaultTraversableResolver.java:131)
at org.hibernate.validator.engine.resolver.SingleThreadCachedTraversableResolver.isReachable(SingleThreadCachedTraversableResolver.java:46)
at org.hibernate.validator.engine.ValidatorImpl.isValidationRequired(ValidatorImpl.java:1242)
at org.hibernate.validator.engine.ValidatorImpl.validateConstraint(ValidatorImpl.java:448)
at org.hibernate.validator.engine.ValidatorImpl.validateConstraintsForDefaultGroup(ValidatorImpl.java:397)
at org.hibernate.validator.engine.ValidatorImpl.validateConstraintsForCurrentGroup(ValidatorImpl.java:361)
at org.hibernate.validator.engine.ValidatorImpl.validateInContext(ValidatorImpl.java:313)
at org.hibernate.validator.engine.ValidatorImpl.validate(ValidatorImpl.java:139)
at org.springframework.validation.beanvalidation.SpringValidatorAdapter.validate(SpringValidatorAdapter.java:86)
at org.springframework.validation.DataBinder.validate(DataBinder.java:692)
at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.doBind(HandlerMethodInvoker.java:807)
at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.resolveHandlerArguments(HandlerMethodInvoker.java:359)
at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:171)
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:426)
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:414)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:790)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:560)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:770)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1542)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:368)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:97)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:100)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:78)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:35)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:177)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:187)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:169)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:331)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
at com.sun.enterprise.v3.services.impl.ContainerMapper$AdapterCallable.call(ContainerMapper.java:317)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:195)
at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:849)
at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:746)
at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1045)
at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:228)
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:722)
I am using Spring MVC 3.0 Hibernate 3 and i have recently updated my jdk version from jdk6 to jdk7 and I am using IBM generic DAO. I searched hours on the internet about this but could not find the solution.
UPDATE : Jar files list which i used.
file: dwr.jar
file: gson-2.2.1.jar
file: javaee-api-6.0.jar
file: ejb3-persistence.jar
file: hibernate-annotations.jar
file: hibernate-commons-annotations.jar
file: hibernate-entitymanager.jar
file: hibernate-validator.jar
file: hibernate3.jar
file: persistence.jar
file: Jhove-final.jar
file: jhove-handler.jar
file: jhove-module.jar
file: jhove.jar
file: json-org.jar
file: json-taglib-0.4.1.jar
file: antlr-2.7.6.jar
file: antlr-runtime-3.0.jar
file: aspectjrt.jar
file: aspectjweaver.jar
file: commons-beanutils-1.8.0.jar
file: commons-collections-3.1.jar
file: commons-dbcp.jar
file: commons-digester-2.0.jar
file: dom4j-1.6.1.jar
file: ehcache-1.2.3.jar
file: javassist-3.9.0.GA.jar
file: jstl-1.2.jar
file: jta-1.1.jar
file: log4j-1.2.14.jar
file: mysql-connector-java-5.1.18-bin.jar
file: servlet-api-2.3.jar
file: slf4j-api-1.5.8.jar
file: slf4j-log4j12-1.5.8.jar
file: cas-client-core-3.1.10.jar
file: ldapsdk-4.1.jar
file: spring-ldap-core-1.3.0.RELEASE.jar
file: spring-security-acl-3.0.5.RELEASE.jar
file: spring-security-cas-client-3.0.5.RELEASE.jar
file: spring-security-config-3.0.5.RELEASE.jar
file: spring-security-core-3.0.5.RELEASE.jar
file: spring-security-ldap-3.0.5.RELEASE.jar
file: spring-security-openid-3.0.5.RELEASE.jar
file: spring-security-taglibs-3.0.5.RELEASE.jar
file: spring-security-web-3.0.5.RELEASE.jar
file: com.springsource.net.sf.cglib-2.2.0.jar
file: com.springsource.org.aopalliance-1.0.0.jar
file: com.springsource.org.apache.commons.logging-1.1.1.jar
file: com.springsource.org.apache.commons.pool-1.5.3.jar
file: com.springsource.org.aspectj.weaver-1.6.8.RELEASE.jar
file: org.springframework.aop-3.0.5.RELEASE.jar
file: org.springframework.asm-3.0.5.RELEASE.jar
file: org.springframework.aspects-3.0.5.RELEASE.jar
file: org.springframework.beans-3.0.5.RELEASE.jar
file: org.springframework.context-3.0.5.RELEASE.jar
file: org.springframework.context.support-3.0.5.RELEASE.jar
file: org.springframework.core-3.0.5.RELEASE.jar
file: org.springframework.expression-3.0.5.RELEASE.jar
file: org.springframework.instrument-3.0.5.RELEASE.jar
file: org.springframework.instrument.tomcat-3.0.5.RELEASE.jar
file: org.springframework.jdbc-3.0.5.RELEASE.jar
file: org.springframework.orm-3.0.5.RELEASE.jar
file: org.springframework.test-3.0.5.RELEASE.jar
file: org.springframework.transaction-3.0.5.RELEASE.jar
file: org.springframework.web-3.0.5.RELEASE.jar
file: org.springframework.web.servlet-3.0.5.RELEASE.jar
file: tiles-api-2.2.2.jar
file: tiles-compat-2.2.2.jar
file: tiles-core-2.2.2.jar
file: tiles-el-2.2.2.jar
file: tiles-extras-2.2.2.jar
file: tiles-freemarker-2.2.2.jar
file: tiles-jsp-2.2.2.jar
file: tiles-mvel-2.2.2.jar
file: tiles-ognl-2.2.2.jar
file: tiles-servlet-2.2.2.jar
file: tiles-servlet-wildcard-2.2.2.jar
file: tiles-template-2.2.2.jar
file: tiles-velocity-2.2.2.jar
file: UUID-Parser.jar
file: SafeCommons.jar
file: safe_commons_v2.jar
file: FileUtillsDoc.jar
file: SAFE_MS2_V1_FILEUTILLS.jar
file: jackson-annotations-2.0.4.jar
file: jackson-core-2.0.4.jar
file: jackson-databind-2.0.4.jar
file: jai_codec-1.1.3.jar
file: jai_core-1.1.3.jar
file: pdfbox-app-1.3.1.jar
file: sanselan-0.97-incubator.jar
file: jai_codec-1.1.3.jar
file: jai_core-1.1.3.jar
file: pdfbox-app-1.3.1.jar
file: sanselan-0.97-incubator.jar
java.lang.AbstractMethodError
is thrown when an application tries to call an abstract method. Normally, this error is caught by the compiler; this error can only occur at run time if the definition of some class has incompatibly changed since the currently executing method was last compiled.
Seems like this problem is due to version incompatibility in some of the jar file. I can not figure it from your code. Please check this thread.
This error occurs because an abstract method is called without actual implementation. It usually happens after some library is upgraded while some is not. The dependencies are missing somehow.
Hence please check whether all library upgrades complete successfully.
Here is a good example and demonstration on how an AbstractMethodError can occur.
I had this error from a cause not mentioned here.
I was using proguard and it obfuscated a class, which then led to the AbstractMethodError. Just had to keep that class in proguard.
This can occur in NetBeans while running Java 8 and implementing an interface using lambdas and then changing the interfaces signature.
Simple solution: run Clean and build (Shift+F11 is by default)*
Put a Breakpoint on the Exception (or the line where it is occurring) to find out which class/method exactly is causing the problem, then search your classpath for all occurrences of this class. If you have more than one version of a class on your classpath, remove the wrong one.
I also had the same issue in my case the problem was i have two .class files with same name in two different jar files.I excluded on of the jar file from pom.xml it started working!
I lost some time on this.
In pom.xml, for dependencies if you have set LATEST, it can be due to that, please specify the correct version no there, it is a best practice too
Aspectj version 1.7.3 will solve this issue .Please try it out
来源:https://stackoverflow.com/questions/12137073/abstract-method-error