2017-10-31 6 views
0

私は春のブート時に初心者です。私は春のブート+ JPAでアプリケーションを開発しています。私はjava.lang.NullPointerExceptionを取得しています。私はアプリケーションで最初にユーザーを検証し、ユーザーが正常に検証された場合、私はuserIdによってメニューを取得したい。 私はdaoImplファイルまたはサービスで問題が発生しているかどうかはわかりません。ここに私のコード - がIUserService.javaスプリングブートJPA daoは結果を取得するためにjava.lang.NullPointerExceptionを返します

LoginController.java

package com.msoft.crm.controllers; 

    import java.util.ArrayList; 
    import java.util.HashMap; 

    import javax.servlet.http.HttpServletRequest; 
    import javax.servlet.http.HttpSession; 

    import org.springframework.beans.factory.annotation.Autowired; 
    import org.springframework.stereotype.Controller; 
    import org.springframework.ui.Model; 
    import org.springframework.web.bind.annotation.RequestMapping; 
    import org.springframework.web.bind.annotation.RequestParam; 
    import org.springframework.web.servlet.ModelAndView; 

    import com.msoft.crm.services.IUserService; 
    import com.msoft.crm.entities.Login; 
    import com.msoft.crm.services.LoginService; 
    import com.msoft.crm.services.LoginServiceImpl; 

    @Controller 
    public class LoginController { 

    @Autowired 
    private IUserService userService; 

    @RequestMapping("/index") 
    public String showLoginPage(Model model){ 

     Login login = new Login(); 
     model.addAttribute("command", login); 

     return "login1"; 
    } 

    @RequestMapping("/validateLogin") 
    ModelAndView validateLogin(@RequestParam(required = true) String username, 
      @RequestParam(required = true) String password, ModelAndView modelAndView, HttpServletRequest request) { 

     HashMap<String, Object> hashMap = userService.validateLogin(username, password); 

     modelAndView.getModel().put("message", hashMap.get("message")); 
     modelAndView.setViewName((String) hashMap.get("page")); 
     if(hashMap.get("page").equals("index")) { 
      modelAndView.getModel().put("menuByRoleList", hashMap.get("menuByRoleList")); 
      modelAndView.getModel().put("sectionSet", hashMap.get("sectionSet")); 
      HttpSession session = request.getSession(false); 
      if(session != null) { 
       session.invalidate(); 
      } 
      session = request.getSession(true); 
      session.setAttribute("userId", hashMap.get("userId")); 
     } 
     System.out.println("controller out of first if "); 
     return modelAndView; 
    } 
    } 

ある

package com.msoft.crm.services; 

import java.util.HashMap; 
import java.util.List; 

import com.msoft.crm.entities.Users; 

public interface IUserService { 

    public List<Users> getAllUsers(); 

    public HashMap<String, Object> validateLogin(String username, String password); 

    public List<Users> getMenusByRole(long userId); 

    public int createUser(Users users,String logedInUserId); 

    public List<Users> getUserDetails(); 

    public int editUser(Users users); 

    public List<Users> checkUserNameAvail(String username); 

    public int sendEmailToNewUser(); 
} 

UserService.java

package com.msoft.crm.services; 

import java.util.HashMap; 
import java.util.LinkedHashSet; 
import java.util.List; 
import java.util.Set; 

import org.springframework.beans.factory.annotation.Autowired; 
import org.springframework.stereotype.Service; 

import com.msoft.crm.daos.UserDao; 
import com.msoft.crm.entities.Users; 

@Service 
public class UserService implements IUserService { 
@Autowired 
private UserDao userDao; 
@Override 
public List<Users> getAllUsers() { 
    return userDao.getAllUsers(); 
} 

@Override 
public HashMap<String, Object> validateLogin(String username, String password) { 
    HashMap<String, Object> hashMap = new HashMap<>(); 
    try { 
     List<Users> userList = userDao.validateLogin(username, password); 


     if(userList.isEmpty()) { 
      hashMap.put("page", "login"); 
      hashMap.put("message", "Username and password don't match."); 
     } else { 

      for (Users users : userList) { 

       if (users.getActiveInd().equals("0")) { 
        System.out.println("active ind if(service):"+users.getActiveInd()); 
        hashMap.put("page", "login"); 
        hashMap.put("message", "Your account is inactive. Please contact admin."); 
       } else { 
        System.out.println("active ind(service):"+users.getActiveInd()); 
        List<Users> menuByRoleList = userDao.getMenusByRole(users.getUserId()); 
        Set<Users> set = new LinkedHashSet<Users>(); 
        for (Users menu : menuByRoleList) { 
         Users sectionUser = new Users(); 
         sectionUser.setSectionIcon(menu.getSectionIcon()); 
         sectionUser.setSectionId(menu.getSectionId()); 
         sectionUser.setSectionName(menu.getSectionName()); 
         sectionUser.setSectionPosition(menu.getSectionPosition()); 
         set.add(sectionUser); 
        } 
        hashMap.put("menuByRoleList", menuByRoleList); 
        hashMap.put("sectionSet", set); 
        hashMap.put("page", "index"); 
        hashMap.put("message", "Welcome, " + users.getUsername()); 
        hashMap.put("userId", users.getUserId()); 
       } 
      } 
     } 


    } catch (Exception e) { 
     e.printStackTrace(); 
    } 

    return hashMap; 
} 

@Override 
public List<Users> getMenusByRole(long userId) { 
    return userDao.getMenusByRole(userId); 
} 
} 

UserDao.java

package com.msoft.crm.daos; 

import com.msoft.crm.entities.*; 

import java.util.List; 

public interface UserDao { 

    public List<Users> getAllUsers(); 

    public List<Users> validateLogin(String username, String password); 

    public List<Users> getMenusByRole(long l); 

    public int createUser(Users users,String logedInUserId); 

    public List<Users> getUserDetails(); 

    public int editUser(Users users); 

    public List<Users> checkUserNameAvail(String username); 

    public int sendEmailToNewUser(); 
} 
続いて10

UserDaoImpl.java

package com.msoft.crm.daos; 

import java.util.ArrayList; 
import java.util.HashMap; 
import java.util.List; 
import java.util.Map; 

//import javax.mail.MessagingException; 
//import javax.mail.internet.MimeMessage; 





import javax.persistence.EntityManager; 
import javax.persistence.PersistenceContext; 
import javax.persistence.Query; 

import org.springframework.beans.factory.annotation.Autowired; 
import org.springframework.jdbc.core.namedparam.MapSqlParameterSource; 
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate; 
import org.springframework.jdbc.core.namedparam.SqlParameterSource; 
//import org.springframework.mail.javamail.JavaMailSender; 
//import org.springframework.mail.javamail.MimeMessageHelper; 
import org.springframework.stereotype.Repository; 
import org.w3c.dom.ls.LSInput; 

import com.msoft.crm.entities.Users; 


@Repository("UserDao") 
public class UserDaoImpl implements UserDao { 



    @PersistenceContext 
    private EntityManager entityManager; 


// @Autowired 
// private JavaMailSender mailSender; 

    public String original,recipientAddress,firstName,userName; 
    @Override 
    public List<Users> getAllUsers() { 
     return new ArrayList<Users>(); 
    } 

    @Override 
    public List<Users> validateLogin(String username, String password) { 

     String hql = "from Users u where u.username = :p_username and u.userPassword = :p_password"; 

     Query q = entityManager.createQuery(hql); 
     q.setParameter("p_username", username); 
     q.setParameter("p_password", password); 

     List<Users> users = q.getResultList(); 

     System.out.println("users : " + users); 

     return users; 

    } 

    @Override 
    public List<Users> getMenusByRole(long userId) { 


     System.out.println("In get menus role user id : " + userId); 

     String hql = "select ur.role_id ,ur.role_name ,ur.speciality ,ms.section_id ,ms.section_name ,ms.section_position ,ms.section_icon ," 
       + "mi.menu_id ,mi.menu_name ,mi.menu_action ,mi.menu_position ,mi.parent_menu_id from MenuPrivileges mp ," 
       + "UserRoles ur ,MenuItems mi ,MenuSections ms " 
       + "inner join ur.role_id " 
       + "inner join mi.menu_id " 
       + "inner join ms.section_id " 
       + "where mi.active_ind = '1' and mp.visible_ind = '1' and " 
       + "mp.role_id = (select roleId from Users where userId = 3) order by ms.section_position asc"; 

     Query q = entityManager.createQuery(hql); 
     q.setParameter("user_id", userId); 

     List<Users> l = q.getResultList(); 
     System.out.println("l : " + l); 
     return l; 
    } 
    } 

がスタックtrace-

Hibernate: 


select 
     users0_.user_id as user_id1_5_, 
     users0_.aadhar_no as aadhar_n2_5_, 
     users0_.active_ind as active_i3_5_, 
     users0_.created_by_user_id as created_4_5_, 
     users0_.created_date_time as created_5_5_, 
     users0_.email as email6_5_, 
     users0_.fname as fname7_5_, 
     users0_.lname as lname8_5_, 
     users0_.login_status as login_st9_5_, 
     users0_.mname as mname10_5_, 
     users0_.mobile as mobile11_5_, 
     users0_.photo as photo12_5_, 
     users0_.role_id as role_id13_5_, 
     users0_.password as passwor14_5_, 
     users0_.username as usernam15_5_ 
    from 
     crm_users users0_ 
    where 
     users0_.username=? 
     and users0_.password=? 
active ind(service):1 
java.lang.NullPointerException 
    at org.hibernate.hql.internal.ast.HqlSqlWalker.createFromJoinElement(HqlSqlWalker.java:397) 
    at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.joinElement(HqlSqlBaseWalker.java:3912) 
    at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.fromElement(HqlSqlBaseWalker.java:3698) 
    at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.fromElementList(HqlSqlBaseWalker.java:3576) 
    at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.fromClause(HqlSqlBaseWalker.java:716) 
    at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.query(HqlSqlBaseWalker.java:572) 
    at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.selectStatement(HqlSqlBaseWalker.java:309) 
    at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.statement(HqlSqlBaseWalker.java:257) 
    at org.hibernate.hql.internal.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:262) 
    at org.hibernate.hql.internal.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:190) 
    at org.hibernate.hql.internal.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:142) 
    at org.hibernate.engine.query.spi.HQLQueryPlan.<init>(HQLQueryPlan.java:115) 
    at org.hibernate.engine.query.spi.HQLQueryPlan.<init>(HQLQueryPlan.java:76) 
    at org.hibernate.engine.query.spi.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:150) 
    at org.hibernate.internal.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:302) 
    at org.hibernate.internal.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:240) 
    at org.hibernate.internal.SessionImpl.createQuery(SessionImpl.java:1894) 
    at org.hibernate.jpa.spi.AbstractEntityManagerImpl.createQuery(AbstractEntityManagerImpl.java:291) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at org.springframework.orm.jpa.ExtendedEntityManagerCreator$ExtendedEntityManagerInvocationHandler.invoke(ExtendedEntityManagerCreator.java:347) 
    at com.sun.proxy.$Proxy75.createQuery(Unknown Source) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:298) 
    at com.sun.proxy.$Proxy75.createQuery(Unknown Source) 
    at com.msoft.crm.daos.UserDaoImpl.getMenusByRole(UserDaoImpl.java:93) 
    at com.msoft.crm.daos.UserDaoImpl$$FastClassBySpringCGLIB$$da03a52e.invoke(<generated>) 
    at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) 
    at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:738) 
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) 
    at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:136) 
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) 
    at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:673) 
    at com.msoft.crm.daos.UserDaoImpl$$EnhancerBySpringCGLIB$$995da1f4.getMenusByRole(<generated>) 
    at com.msoft.crm.services.UserService.validateLogin(UserService.java:44) 
    at com.msoft.crm.controllers.LoginController.validateLogin(LoginController.java:42) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205) 
    at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133) 
    at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:97) 
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827) 
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738) 
    at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85) 
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:967) 
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901) 
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970) 
    at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:661) 
    at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:742) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) 
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) 
    at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99) 
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) 
    at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:108) 
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) 
    at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:81) 
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) 
    at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197) 
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198) 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) 
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342) 
    at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799) 
    at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) 
    at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868) 
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1457) 
    at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) 
    at java.lang.Thread.run(Unknown Source) 

2017-10-31 16:03:15.250 ERROR 4224 --- [nio-8080-exec-8] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is java.lang.NullPointerException] with root cause 

java.lang.NullPointerException: null 
    at com.msoft.crm.controllers.LoginController.validateLogin(LoginController.java:47) ~[classes/:na] 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_144] 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:1.8.0_144] 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:1.8.0_144] 
    at java.lang.reflect.Method.invoke(Unknown Source) ~[na:1.8.0_144] 
    at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205) ~[spring-web-4.3.11.RELEASE.jar:4.3.11.RELEASE] 
    at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133) ~[spring-web-4.3.11.RELEASE.jar:4.3.11.RELEASE] 
    at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:97) ~[spring-webmvc-4.3.11.RELEASE.jar:4.3.11.RELEASE] 
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827) ~[spring-webmvc-4.3.11.RELEASE.jar:4.3.11.RELEASE] 
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738) ~[spring-webmvc-4.3.11.RELEASE.jar:4.3.11.RELEASE] 
    at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85) ~[spring-webmvc-4.3.11.RELEASE.jar:4.3.11.RELEASE] 
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:967) ~[spring-webmvc-4.3.11.RELEASE.jar:4.3.11.RELEASE] 
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901) ~[spring-webmvc-4.3.11.RELEASE.jar:4.3.11.RELEASE] 
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970) ~[spring-webmvc-4.3.11.RELEASE.jar:4.3.11.RELEASE] 
    at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872) ~[spring-webmvc-4.3.11.RELEASE.jar:4.3.11.RELEASE] 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:661) ~[tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846) ~[spring-webmvc-4.3.11.RELEASE.jar:4.3.11.RELEASE] 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:742) ~[tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) ~[tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) ~[tomcat-embed-websocket-8.5.20.jar:8.5.20] 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99) ~[spring-web-4.3.11.RELEASE.jar:4.3.11.RELEASE] 
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-4.3.11.RELEASE.jar:4.3.11.RELEASE] 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:108) ~[spring-web-4.3.11.RELEASE.jar:4.3.11.RELEASE] 
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-4.3.11.RELEASE.jar:4.3.11.RELEASE] 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:81) ~[spring-web-4.3.11.RELEASE.jar:4.3.11.RELEASE] 
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-4.3.11.RELEASE.jar:4.3.11.RELEASE] 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197) ~[spring-web-4.3.11.RELEASE.jar:4.3.11.RELEASE] 
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-4.3.11.RELEASE.jar:4.3.11.RELEASE] 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198) ~[tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) [tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478) [tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140) [tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80) [tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87) [tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342) [tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799) [tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) [tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868) [tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1457) [tomcat-embed-core-8.5.20.jar:8.5.20] 
    at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) [tomcat-embed-core-8.5.20.jar:8.5.20] 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [na:1.8.0_144] 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [na:1.8.0_144] 
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-embed-core-8.5.20.jar:8.5.20] 
    at java.lang.Thread.run(Unknown Source) [na:1.8.0_144] 
+0

Spring Data JPAを使用することをお勧めします。人々が助けるためにスタックトレースを共有してください。 – Avinash

+0

はい問題のstacktraceを追加しました。 –

+0

Entityクラスに '@ ManyToMany'アノテーションを追加しましたか? – hrdkisback

答えて

0

問題がgetMenusByRole方法でHQLであり、あなたが間違った構文を持っている、私はあなたがこのような複雑なクエリに対して単純なSQLを使用することをお勧め。

+0

SQL問合せを使用する方法、またはSQL問合せをHQLに変換する方法を教えてください。 –

+0

私はあなたの問題がこのクエリにあるとしか言えませんが、私はあなたのデータベース構造を知らないし、 'getMenusByRole'メソッドが返すべき正確なメソッドも私には明らかではありません。宣言からユーザのリストを返すべきですが、名前からはメニューのリストを返すべきです。あなたは最初にあなたのロジックを修正する必要があります。 –

関連する問題