一尘不染

如何将变量的值从Java类传递到jsp页面

jsp

我有2个名为Admin.java和的文件index.jsp

Admin.java通过函数我找回评为varible的价值res。该变量需要传递到JSP页面。

Admin.java是,C:\Users\praveen\workspace\SemanticWeb\src\controller而中index.jspC:\Users\praveen\workspace\SemanticWeb\WebContent

Admin.java 的代码是:

public Admin() 
{
  super();
}

  protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException 
 {

    if (action.equals("login")) 
    {
        String userName="";
        String password="";

        userName = request.getParameter("username");
        password = request.getParameter("password");

        response.setCharacterEncoding("UTF-8");

        SemanticSearch semsearch = new SemanticSearch(request.getSession());
        semsearch.loadData(REALPATH + RDFDATASOURCEFILE1);

        String res=semsearch.searchForUser(userName, password);
        System.out.println("The value of res been passed is "+res);

        request.setAttribute("rest", res);

        return;
     }

index.jsp 的代码是

function login(user, pass) 
{

  $.ajax({
    type:"GET",
    url: "Admin?action=login",
    dataType: "text",
    data: { username: user, password: pass },
    success: function(response){

    }

function(response)
{
 ......
}

我需要访问res传递的值Admin.java。我无法在Internet上为其代码获得任何适当的帮助。请有人可以帮我这个忙。


阅读 756

收藏
2020-06-08

共1个答案

一尘不染

根据您的代码,

request.setAttribute("rest", res);

您不应将其设置为请求属性。设置请求属性仅在转发到JSP文件时才有用。您需要自己直接将其写入响应中。替换为

response.getWriter().write(res);

这样,它将最终出现在响应主体中,并可以response在JS函数中用作变量。

2020-06-08