Я пытаюсь получить список пользователей Mongodb с ajax, он работает без ajax.Я сделал это с MySQL, и это сработало, поэтому я не понимаю, что не так с моим кодом.
Я могу отправить запрос, перейти к методу и вернуть List<User>
.Но когда я помещаю это в карту, я не могу получить эту карту как ответ в функции успеха.
Мой консольный вывод:
free.js:31 Uncaught TypeError: Cannot read property 'action' of null
at window.onmessage (free.js:31)
window.onmessage @ free.js:31
jquery.min.js:2 POST http://localhost:8080/UserManagementMongoDB/list 500
send @ jquery.min.js:2
ajax @ jquery.min.js:2
load @ submitedform:342
onload @ submitedform:25
submitedform:355 Uncaught ReferenceError: response is not defined
at Object.error (submitedform:355)
at u (jquery.min.js:2)
at Object.fireWith [as rejectWith] (jquery.min.js:2)
at k (jquery.min.js:2)
at XMLHttpRequest.<anonymous> (jquery.min.js:2)
Вот мой метод Контроллера
@RequestMapping(value="/list", method=RequestMethod.POST)
public @ResponseBody Map<String,Object> getAll(User user) {
Map<String,Object> map = new HashMap<String,Object>();
List<User> list = mainPageService.getAllUsers();
if (list != null){
map.put("status","200");
map.put("message","Data found");
map.put("data", list);
}else{
map.put("status","404");
map.put("message","Data not found");
}
return map;
}
И моя функция загрузки ajax
data = "";
load = function(){
$.ajax({
url:'list',
type:'POST',
success: function(response){
alert("Hello");
data = response.data;
$('.tr').remove();
for(i=0; i<response.data.length; i++){
$("#table").append("<tr class='tr'> <td> "+response.data[i].userName+" </td> <td> "+response.data[i].userSurname+" </td> <td> <a href='#' onclick= edit("+i+");> Edit </a> </td> </td> <td> <a href='#' onclick='delete_("+response.data[i].userId+");'> Delete </a> </td> </tr>");
}
},
error: function () {
alert(response);
}
});
Вот мои зависимости
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>UserManagementMongoDB</groupId>
<artifactId>UserManagementMongoDB</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>UserManagementMongoDB Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
<!-- Servlet Library -->
<!-- http://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>${javax.servlet-api.version}</version>
<scope>provided</scope>
</dependency>
<!-- Spring dependencies -->
<!-- http://mvnrepository.com/artifact/org.springframework/spring-core -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.framework.version}</version>
</dependency>
<!-- http://mvnrepository.com/artifact/org.springframework/spring-web -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.framework.version}</version>
</dependency>
<!-- http://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.framework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${spring.framework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-commons</artifactId>
<version>${spring.data.commons.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-mongodb</artifactId>
<version>${spring.data.mongodb.version}</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>${jstl.version}</version>
</dependency>
<!-- https://mvnrepository.com/artifact/net.tanesha.recaptcha4j/recaptcha4j -->
<dependency>
<groupId>net.tanesha.recaptcha4j</groupId>
<artifactId>recaptcha4j</artifactId>
<version>0.0.7</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.glassfish/javax.json -->
<dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.json</artifactId>
<version>1.1.2</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.10</version>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.3</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>${spring.framework.version}</version>
</dependency>
</dependencies>
<!-- Properties for the dependencies -->
<properties>
<java-version>1.7</java-version>
<!-- Spring properties -->
<spring.framework.version>5.0.9.RELEASE</spring.framework.version>
<spring.data.commons.version>1.12.1.RELEASE</spring.data.commons.version>
<spring.data.mongodb.version>1.10.6.RELEASE</spring.data.mongodb.version>
<!-- Other properties -->
<javax.servlet-api.version>3.1.0</javax.servlet-api.version>
<junit.version>4.12</junit.version>
<jstl.version>1.2</jstl.version>
</properties>
<build>
<finalName>ExampleWebApplication</finalName>
</build>
</project>
Я получаю 500 прямо сейчас, я просто не могу получить ответ на все, кроме того, что работает.Я могу отправить свои параметры с помощью ajax, просто не могу получить ресурсы карты
Код моей модели:
public class User {
@Id
private String userId;
private String userName;
private String userSurname;
private String phoneNo;
public User(String userId,String userName,String userSurname,String phoneNo) {
setUserId(userId);
setUserName(userName);
setUserSurname(userSurname);
setPhoneNo(phoneNo);
}
public User() {
// TODO Auto-generated constructor stub
}
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getUserSurname() {
return userSurname;
}
public void setUserSurname(String userSurname) {
this.userSurname = userSurname;
}
public String getPhoneNo() {
return phoneNo;
}
public void setPhoneNo(String phoneNo) {
this.phoneNo = phoneNo;
}
My Stacktrace:
ava.lang.Exception at com.kaan.springmvc.controller.MainPageController.getAll (MainPageController.java:117) в sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод) в sun.reflect.NativeMethodAccessorImpl.invoke (неизвестный источник) в sun.reflect.DelegatingMethodAccessorImpl.invoke (неизвестный источник) в java.lankehond (неизвестный источник (Unknown Source)) в org.springframework.web.method.support.InvocableHandlerMethod.doInvoke (InvocableHandlerMethod.java:209) в org.springframework.web.method.support.InvocableHandlerMethod.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle (ServletInvocableHandlerMethod.java:102) в org.springframework.web.servlet.mvc.method.annotation.weg.jap_Wareservlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal (RequestMappingHandlerAdapter.java:797) по адресу org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle (AbstractHandlerMethodAdapter.java:87) в org.springfsereserv.web991) по адресу org.springframework.web.servlet.DispatcherServlet.doService (DispatcherServlet.java:925) по адресу org.springframework.web.servlet.FrameworkServlet.processRequest (FrameworkServlet.java:974). Work.ralet.web.web.web.web.web.web.web.web..doPost (FrameworkServlet.java:877) в javax.servlet.http.HttpServlet.service (HttpServlet.java:660) в org.springframework.web.servlet.FrameworkServlet.service (FrameworkServlet.jav:axserv в java:8serv.http.HttpServlet.service (HttpServlet.java:741) в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:231) в org.apache.catalina.core.ApplicationFilterChain.hain.в org.apache.tomcat.websocket.server.WsFilter.doFilter (WsFilter.java:53) в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:193) в org.apache.catalina.core.ApplicationFilterChain.doFilg6 или в приложении ().apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:199) в org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:96) в org.apache.catheaseBevent.java: 490) в org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:139)в org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:92) в org.apache.catalina.valves.AbstractAccessLogValve.invoke (AbstractAccessLogValve.java:668) в org.apache.catalinainveve.core(StandardEngineValve.java:74) в org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:343) в org.apache.coyote.http11.Http11Processor.service (Http11Processor.java:40ap) в org.coyote.AbstractProcessorLight.process (AbstractProcessorLight.java:66) в org.apache.coyote.AbstractProtocol $ ConnectionHandler.process (AbstractProtocol.java:770) в org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.dopointNio (Nio.Java: 1415) в org.apache.tomcat.util.net.SocketProcessorBase.run (SocketProcessorBase.java:49) в java.util.concurrent.ThreadPoolExecutor.runWorker (неизвестный источник) в java.util.concurrent.ThreadPoerExec.выполнить (неизвестный источник) в org.apache.tomcat.util.threads.TaskThread $ WrappingRunnable.run (TaskThread.java:61) в java.lang.Thread.run (Неизвестный источник) Цитата