Advertisement
Guest User

Untitled

a guest
Mar 12th, 2017
143
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.46 KB | None | 0 0
  1. @Autowired
  2. private LoginDAO loginDAO;
  3.  
  4. @Repository("loginDAO")
  5.  
  6. DEBUG - Returning handler method [public java.lang.String com.accademics.web.controllers.LoginController.checkCredentials(com.accademics.web.models.LoginModel,org.springframework.validation.BindingResult)]
  7. DEBUG - Returning cached instance of singleton bean 'loginController'
  8. inside controller checkCredentials
  9. LoginModel [username=admin, password=password]
  10. service checking login of admin and password
  11. DEBUG - Resolving exception from handler [public java.lang.String com.accademics.web.controllers.LoginController.checkCredentials(com.accademics.web.models.LoginModel,org.springframework.validation.BindingResult)]: java.lang.NullPointerException
  12. DEBUG - Resolving exception from handler [public java.lang.String com.accademics.web.controllers.LoginController.checkCredentials(com.accademics.web.models.LoginModel,org.springframework.validation.BindingResult)]: java.lang.NullPointerException
  13. DEBUG - Resolving exception from handler [public java.lang.String com.accademics.web.controllers.LoginController.checkCredentials(com.accademics.web.models.LoginModel,org.springframework.validation.BindingResult)]: java.lang.NullPointerException
  14. DEBUG - Could not complete request
  15. java.lang.NullPointerException
  16. at com.accademics.data.services.LoginServiceImpl.checkCredentials(LoginServiceImpl.java:18)
  17. at com.accademics.web.controllers.LoginController.checkCredentials(LoginController.java:39)
  18. at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  19. at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  20. at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  21. at java.lang.reflect.Method.invoke(Unknown Source)
  22. at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
  23. at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133)
  24. at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:116)
  25. at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827)
  26. at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738)
  27. at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
  28. at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
  29. at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
  30. at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
  31. at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
  32. at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
  33. at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
  34. at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
  35. at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
  36. at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
  37. at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
  38. at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
  39. at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
  40. at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
  41. at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:108)
  42. at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
  43. at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
  44. at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
  45. at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:620)
  46. at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
  47. at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:349)
  48. at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:784)
  49. at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
  50. at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:802)
  51. at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1410)
  52. at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
  53. at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
  54. at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
  55. at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
  56. at java.lang.Thread.run(Unknown Source)
  57.  
  58. <?xml version="1.0" encoding="UTF-8"?>
  59. <beans xmlns="http://www.springframework.org/schema/beans"
  60. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  61. xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd">
  62.  
  63. <bean id="loginService" class="com.accademics.data.services.LoginServiceImpl"/>
  64.  
  65. </beans>
  66.  
  67. <?xml version="1.0" encoding="UTF-8"?>
  68. <beans xmlns="http://www.springframework.org/schema/beans"
  69. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
  70. xmlns:mvc="http://www.springframework.org/schema/mvc"
  71. xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd
  72. http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
  73. http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd">
  74.  
  75. <mvc:annotation-driven />
  76.  
  77. <context:component-scan base-package="com.accademics.web.controllers"></context:component-scan>
  78.  
  79. <bean id="viewResolver"
  80. class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  81. <property name="prefix" value="/WEB-INF/views/" />
  82. <property name="suffix" value=".jsp" />
  83. </bean>
  84.  
  85. <bean id="messageSource"
  86. class="org.springframework.context.support.ResourceBundleMessageSource">
  87. <property name="basename" value="messages"></property>
  88. </bean>
  89.  
  90. <mvc:resources location="/resources/" mapping="/resources/**"></mvc:resources>
  91.  
  92. </beans>
  93.  
  94. <form action='<spring:url value="/student/login"></spring:url>' method="post" autocomplete="on">
  95. <h1>Log in</h1>
  96. <p>
  97. <label for></label>
  98. </p>
  99. <p>
  100. <label for="username" class="uname" > Username </label>
  101. <input id="username" name="username" required="required" type="text" placeholder="Username"/>
  102. </p>
  103. <p>
  104. <label for="password" class="passwd"> Password </label>
  105. <input id="password" name="password" required="required" type="password" placeholder="Password" />
  106. </p>
  107. <p class="keeplogin">
  108. <input type="checkbox" name="saveLogin" id="saveLogin" value="saveLogin" />
  109. <label for="saveLogin">Keep me logged in</label>
  110. </p>
  111. <p class="login button">
  112. <input type="submit" value="Login" />
  113. </p>
  114. </form>
  115.  
  116. package com.accademics.web.controllers;
  117.  
  118. import javax.validation.Valid;
  119.  
  120. import org.springframework.beans.factory.annotation.Autowired;
  121. import org.springframework.context.MessageSource;
  122. import org.springframework.stereotype.Controller;
  123. import org.springframework.ui.Model;
  124. import org.springframework.validation.BindingResult;
  125. import org.springframework.web.bind.annotation.ModelAttribute;
  126. import org.springframework.web.bind.annotation.RequestMapping;
  127. import org.springframework.web.bind.annotation.RequestMethod;
  128.  
  129. import com.accademics.data.services.LoginService;
  130. import com.accademics.web.models.LoginModel;
  131.  
  132. @Controller
  133. @RequestMapping("/student")
  134. public class LoginController {
  135.  
  136. @Autowired
  137. public LoginService loginService;
  138.  
  139. @Autowired
  140. MessageSource messagesource;
  141.  
  142. @RequestMapping(value="/login", method=RequestMethod.GET)
  143. public String displayLogin(Model model){
  144. return "student_login";
  145. }
  146.  
  147. @RequestMapping(value="/login", method=RequestMethod.POST)
  148. public String checkCredentials(@Valid @ModelAttribute LoginModel loginModel, BindingResult result){
  149. System.out.println("inside controller checkCredentials");
  150. if(result.hasErrors()){
  151. return "student_login";
  152. }
  153. System.out.println(loginModel);
  154. boolean userExists = loginService.checkCredentials(loginModel.getUsername(), loginModel.getPassword());
  155. if(userExists){
  156. System.out.println("valid");
  157.  
  158. return "dashboard";
  159. }else{
  160. System.out.println("invalid");
  161. result.rejectValue("userName", "NotNull.login.invalidUser");
  162. return "student_login";
  163. }
  164.  
  165. }
  166. }
  167.  
  168. package com.accademics.data.services;
  169.  
  170. import org.springframework.beans.factory.annotation.Autowired;
  171. import org.springframework.stereotype.Service;
  172.  
  173. import com.accademics.web.DAO.LoginDAO;
  174.  
  175. @Service("loginService")
  176. public class LoginServiceImpl implements LoginService {
  177.  
  178. @Autowired
  179. private LoginDAO loginDAO;
  180.  
  181. @Override
  182. public boolean checkCredentials(String username, String password) {
  183. // TODO Auto-generated method stub
  184. System.out.println("service checking login of "+username+" and "+password);
  185. return loginDAO.checkCredentials(username, password);
  186. }
  187.  
  188. }
  189.  
  190. package com.accademics.web.DAO;
  191.  
  192. public interface LoginDAO {
  193.  
  194. public boolean checkCredentials(String username, String password);
  195.  
  196. }
  197.  
  198. package com.accademics.web.DAO;
  199.  
  200. import java.util.List;
  201.  
  202. import org.hibernate.Query;
  203. import org.hibernate.Session;
  204. import org.hibernate.SessionFactory;
  205. import org.springframework.beans.factory.annotation.Autowired;
  206. import org.springframework.beans.factory.annotation.Qualifier;
  207. import org.springframework.stereotype.Repository;
  208.  
  209.  
  210. @Repository("loginDAO")
  211. public class LoginDAOImpl implements LoginDAO {
  212.  
  213. @Autowired
  214. private SessionFactory sessionFactory;
  215.  
  216. protected Session getSession(){
  217. return sessionFactory.getCurrentSession();
  218. }
  219.  
  220. @Override
  221. public boolean checkCredentials(String username, String password) {
  222.  
  223. System.out.println("Checking login");
  224.  
  225. //HQL
  226. String hquery = "from student_credentials where student_credentials.username=? and student_credentials.password=?";
  227. boolean userFound = false;
  228. Session session = getSession();
  229. Query query = session.createSQLQuery(hquery);
  230. query.setParameter(0, username);
  231. query.setParameter(1, password);
  232.  
  233. List list = query.list();
  234.  
  235. if(!list.isEmpty()){
  236. userFound = true;
  237. }
  238.  
  239. session.close();
  240. return userFound;
  241.  
  242. }
  243.  
  244. }
  245.  
  246. NotNull.login.invalidUser = Invalid Username/Password
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement