2012-08-27 13 views
6

pracuję nad projektem w NetBeans, że kiedy go uruchomić przy użyciu GlassFish 3.1.2.Everything działa fine.But gdy zgłoszę url/invite który jest odwzorowany na następujące metodyStreszczenie Sposób Błąd

@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; 

    } 

Nawet pierwsza linia metody nie jest wykonywany i daje mi to 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) 

Używam MVC wiosny 3.0 Hibernacja 3 i ja niedawno zaktualizowana wersja mojego jdk z JDK6 do jdk7 i Używam IBM generic DAO. Szukałem godzin w internecie na ten temat, ale nie mogłem znaleźć rozwiązania.

AKTUALIZACJA: Lista plików jar, których użyłem.

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 

Odpowiedz

20

java.lang.AbstractMethodError jest generowany, gdy aplikacja próbuje wywołać metodę abstrakcyjną. Zwykle ten błąd jest przechwytywany przez kompilator; ten błąd może wystąpić tylko w czasie wykonywania, jeśli definicja jakiejś klasy zmieniła się niepoprawnie, ponieważ ostatnio wykonywana metoda była ostatnio kompilowana.

Wygląda na to, że ten problem wynika z niekompatybilności wersji w niektórych plikach jar. Nie mogę go odczytać z twojego kodu. Sprawdź this thread.

+0

Łącze do oryginalnej dokumentacji i odpowiedniego formatowania dla cytowania tekstu byłoby miłe. – morpheus05

+1

To był mój problem, różne wersje klas. Dziękuję Ci bardzo. –

+0

w moim przypadku wywołałem metodę poprzez zwrócony interfejs i przeoczyłem błąd kompilacji :) – kiedysktos

0

Umieść punkt przerwania w wyjątku (lub linii, w której występuje), aby dowiedzieć się, która klasa/metoda jest przyczyną problemu, a następnie wyszukaj ścieżkę klas dla wszystkich wystąpień tej klasy. Jeśli masz więcej niż jedną wersję klasy w swojej klasie, usuń niewłaściwą.

-1

AspectJ wersja 1.7.3 rozwiąże ten problem Zadawala go wypróbować

1

Może to nastąpić w NetBeans podczas uruchamiania Java 8 i wdrożenie interfejsu za pomocą lambdy a następnie zmieniając podpis interfejsów.

Proste rozwiązanie: uruchom Czyste i budować (Przesunięcie + F11 jest domyślnie) *

2

Ten błąd występuje, ponieważ streszczenie metoda jest wywoływana bez rzeczywistej realizacji. Zwykle dzieje się tak, gdy jakaś biblioteka zostanie uaktualniona, a inne nie. Brak zależności w jakiś sposób.

Dlatego sprawdź, czy wszystkie uaktualnienia biblioteki zakończono pomyślnie.

Here to dobry przykład i demonstracja na temat występowania zdarzenia AbstractMethodError.

+0

Niesamowita odpowiedź! Dzięki! –

0

Miałem ten błąd z przyczyny nie wymienionej tutaj.

Używałem proguarda i zaciemniłem klasę, która następnie doprowadziła do AbstractMethodError. Po prostu musiałem utrzymać tę klasę w progu.

Powiązane problemy