使用当前项目将java从java发送到js

时间:2016-08-15 11:58:22

标签: javascript spring

在提出这个问题之前,我已经阅读了论坛并尝试了很多论坛建议。我不知道,也许我不清楚或者可能是我申请当前项目的原因,但论坛上的答案在我的项目中不起作用

  • 爪哇:

     @RequestMapping(value = "/warehouseWhisky", method = {RequestMethod.GET, RequestMethod.POST})
     public ModelAndView viewAllWhiskyInWarehouse() {
    
    Iterable<WhiskyDTO> list = whiskyService.seeAllWhisky();
    String  email = receiveEmailFromSecurity.getEmail();
    System.out.println(email);
    ModelAndView modelAndView = new ModelAndView();
    modelAndView.addObject("viewAvailableWhisky", list);
    modelAndView.addObject("email", email);
    
    modelAndView.setViewName("whisky");
    return modelAndView;
    }
    

    这段代码正确,我用HTML字符串:

     <input type="button" id="someThingNew" th:value="${email}"/>
    

    enter image description here 但是我没有在js中收到这个参数:

      var nameUser = $("#someThingNew").val();
         console.log(nameUser);
    

2 个答案:

答案 0 :(得分:2)

我认为问题是由于电子邮件中的特殊字符引起的,例如&#39; @&#39;。换句话说,您无法使用@PathVariable(使用普通路由配置)发送电子邮件地址。您可以使用@PathVariable发送电子邮件,而不是@RequestParam,并将其作为查询参数发送。

答案 1 :(得分:0)

我认为第一种方法可能没问题 - 只是你调用了错误的URL。你的服务器映射是什么?我希望有类似的东西 -

  

http://localhost:8080/warname/warehouseWhisky/test@test.com

第二个问题是它的期望类似于以下 - 这就是为什么你得到500

@RequestMapping(value = "/warehouseWhisky/{email}")