从servlet检索null值到jsp

时间:2013-09-04 07:14:50

标签: java jsp servlets

我有2个jsp页面,第一个jsp将显示带有第二个jsp页面链接的图像。

<a href='/display.jsp?src=<c:out value="${photo.source}"/>'>

在显示servlet中,我有以下编码......

String srcLink = (String) req.getParameter("src");
    req.setAttribute("src", srcLink);
    getServletConfig().getServletContext().getRequestDispatcher("/display.jsp").forward(req, resp);
}

在我的第二个jsp(display.jsp)中,我有以下编码......

<img src="<%= request.getAttribute("src") %>" />

但是,当我在浏览器中查看时,它会显示为...

<img src="null" />

我有错误的步骤吗?

4 个答案:

答案 0 :(得分:0)

我猜,你遇到了语法错误。

<a href='/display.jsp?src=${photo.source}'>

答案 1 :(得分:0)

你可以尝试

<a href='/display.jsp?src=${photo.source} />

在你的第一个jsp页面中。

答案 2 :(得分:0)

我已更改为以下内容,但仍无效...

<a href='/display.jsp?src=${photo.source}'>

实际上我的第一个jsp页面上没有显示错误,因为我可以看到所有链接都正确显示。

经过多次尝试,我已经删除了显示servlet中的编码并将第二个jsp上的编码更改为...

<img src="<c:out value = "${param.src}" />" />

现在工作正常。感谢您的建议:)

答案 3 :(得分:-1)

无需将属性设置为request.setAttribute(),因为您正在使用RequestDispatcher。它将相同的请求转发给其他servlet / JSP。你可以使用request.getParameter

使用     的的request.getParameter( “SRC”)

代替

request.getAttribute(...)

所以显示servlet 中的代码如下所示:

    getServletConfig().getServletContext().getRequestDispatcher("/display.jsp").forward(req, resp);

并在 display.jsp 内,

<img src="<%= request.getParameter("src") %>" />

参考:http://www.jguru.com/faq/view.jsp?EID=206736