首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在不使用jsp的情况下将参数从java servlet传递到html表单

问如何在不使用jsp的情况下将参数从java servlet传递到html表单
EN

Stack Overflow用户
提问于 2014-05-20 19:46:51
回答 2查看 9.9K关注 0票数 0

我希望将一些参数从java传递到我的html表单中以供显示。我读过一些关于jsp的内容,但我想知道我是否可以直接使用这样的方法:

代码语言:javascript
复制
<script> var temp = "${param['CookieServlet0.First_Name']}"; </script>
<input type = "text" name = "First_Name" id = "First_Name" value = "temp" > <br>

其中First_Name是servlet CookieServlet0的一个参数。我知道代码示例是错误的,有什么方法可以修复它,这样我就不必使用jsp了吗?

编辑: ok,因为我没有办法从jsp开始,我检查了你们发送的关于JSTL的内容,我不需要它提供的附加信息,所以我尝试保持简单,因为我刚刚开始。所以我已经编写了下面的代码,但是我得到了java.lang.NullPointerException。这肯定是很明显的事情,但是我看不出我做了什么,wrong...all,我看过的教程使用了完全相同的命令.

java servlet :

代码语言:javascript
复制
 public void doGet( HttpServletRequest request,        // reaction to the reception of GET
                  HttpServletResponse response )
                  throws ServletException, IOException
   {

    String First_Name = request.getParameter("First_Name");
    String Last_Name = request.getParameter("Last_Name");
    String Phone_Number = request.getParameter("Phone_Number");
    String Address = request.getParameter("Address");

    PrintWriter output;
    Cookie cookies[];

    cookies = request.getCookies(); // get client's cookies

    if ( cookies.length != 0 ) {                                               
        String departure = cookies[0].getValue();
        String destination = cookies[1].getValue();

    }

    request.setAttribute("First_Name",First_Name);
    String strViewPage="formB.jsp";
    RequestDispatcher dispatcher = getServletContext().getRequestDispatcher(strViewPage);
    dispatcher.forward(request, response);
 }

formB.jsp

代码语言:javascript
复制
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<label for = "First Name"> First Name </label>
<input type = "text" name = "First_Name" id = "First1_Name" value = "${First_Name}" 
"> <br>
</body>
</html>
EN

回答 2

Stack Overflow用户

发布于 2014-05-20 19:53:32

不,除非您编写了自己的解析器/注入器,否则不能直接这样做。然而,使用bean会得到尽可能接近的结果。只需使用<jsp:useBean>并将html替换为bean的属性值。

google的快速搜索生成了这个站点,其中包含了关于如何使用bean和jsp:http://www.roseindia.net/jsp/simple-jsp-example/UsingBeanScopeApplication.shtml的示例。

如果您想使用JSTL,正如Luiggi所提到的,这里有一个很好的网站:http://www.journaldev.com/2090/jstl-tutorial-with-examples-jstl-core-tags

票数 0
EN

Stack Overflow用户

发布于 2015-09-29 01:54:36

试着使用:

代码语言:javascript
复制
RequestDispatcher dispatcher = request.getRequestDispatcher(strViewPage);

而不是:

代码语言:javascript
复制
RequestDispatcher dispatcher = getServletContext().getRequestDispatcher(strViewPage);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23768602

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档