当前位置: 代码迷 >> J2EE >> jsp关于表单取得数据出错
  详细解决方案

jsp关于表单取得数据出错

热度:94   发布时间:2016-04-21 22:17:26.0
jsp关于表单获得数据出错
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>My JSP 'request.jsp' starting page</title>
    
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">    
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->

  </head>
  
  <body>
    <%
    Enumeration<String> headerNames = request.getHeaderNames();
    while(headerNames.hasMoreElements())
    {
     String headerName = headerNames.nextElement();
     out.println(headerName + "-->" + request.getHeader(headerName) + "<br/>");
    }
    out.println("<br/>");
    
    request.setCharacterEncoding("utf-8");
    
    String name = request.getParameter("username");
    String gender = request.getParameter("gender");
    String[] color = request.getParameterValues("color");
    String country = request.getParameter("country");
    
     %>
     
     你的名字:<%=name %><br>
     你的性别:<%=gender %><br>
    喜欢的颜色: <%for( String c : color) {out.println(c + " ");} %>
     <br>
     来自的国家:<%=country %>
  </body>
</html>




错误:

严重: Servlet.service() for servlet [jsp] in context with path [/zyy] threw exception [An exception occurred processing JSP page /request.jsp at line 46

43:      
44:      浣犵殑鍚嶅瓧锛?%=name %><br>
45:      浣犵殑鎬у埆锛?%=gender %><br>
46:      <!-- 鍠滄?鐨勯?鑹诧細 <%for( String c : color) {out.println(c + " ");} %> -->
47:      <br>
48:      鏉ヨ嚜鐨勫浗瀹讹細<%=country %>
49:   </body>
jsp 表单

------解决方案--------------------
那个for循环加强有问题,最好能调试一下
------解决方案--------------------
for循环有问题
建议用Servlet+jsp的方式,不建议这样的方式,
Servlet获取值,然后再传给jsp
就像在Servlet中,
String name = request.getParameter("username");
request.setAttribute("name",name);

然后在jsp中只要
你的姓名:${name}

或者<%=request.getAttribute(name) %>获得也可以
------解决方案--------------------
用EL表达式比较简单呀
------解决方案--------------------
对了一个“}”
------解决方案--------------------
一开始就乱码了!
  相关解决方案