Как передать переменную Java на другую страницу JSP, содержащую JavaScript? - PullRequest
0 голосов
/ 10 декабря 2018

мой класс java:

@RequestMapping(value = "/front", method = RequestMethod.GET) public String onemethod(@RequestParam String name, Model model) { String str = "something"; model.addAttribute("str", str); return "jsppage"; }

jsp page:

        var arrayCollection = ${str}

С этим кодом я получаю исключение 404 для Tomcat.Я не могу отправить переменную Java на другую страницу JSP.В этом случае будет полезна любая помощь.

1 Ответ

0 голосов
/ 10 декабря 2018

Хорошо, чтобы обернуть это:

2 варианта:

  1. добавить переменную к модели и получить к ней доступ непосредственно в JSP
  2. , сделать ее методом отдыха ивызов из ajax

Примеры:

Ad.1.:

Контроллер

import org.springframework.ui.Model;

@RequestMapping(value = "/front", method = RequestMethod.GET)
public String onemethod(Model model) throws IOException, ParseException {
    String str = "something";
    model.addAttribute("str", str);
    return "jsppage";
}

JSP ("jsppage")

var test = '${str}';

Ad.2.:

Контроллер

// just to show JSP
@RequestMapping(value = "/front", method = RequestMethod.GET)
public String onemethod() throws IOException, ParseException {
    return "jsppage";
}

// REST
@ResponseBody
@RequestMapping(value = "/rest", method = RequestMethod.GET)
public String secondmethod() {
    return "something";
}

JSP ("jsppage")

$.ajax({
    method : "get",
    url : "rest",
    dataType : 'text',
    success : function(data) {
        console.log(data);
    },
    error : function(e){
        console.log(e);
    }
});

Если вы также хотите отправить "имя"параметр, добавьте @ RequestParam String name в метод контроллера и вызовите ajax следующим образом:

$.ajax({
    method : "get",
    url : "rest",
    dataType : 'text',
    data : {"name" : "some name"},
    success : function(data) {
        console.log(data);
    },
    error : function(e){
        console.log(e);
    }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...