我在模态中有以下形式:
<div id="sazModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="sazModalLabel" aria-hidden="true">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3 id="sazModalLabel">Upload a Test</h3>
</div>
<div class="modal-body">
<form method=POST id='sazForm' class="form-horizontal" action="upload.jsp" enctype='multipart/form-data'>
<div class="control-group">
<label class="control-label" for="inputEmail">Email</label>
<div class="controls">
<input name="email" type="text" id="inputEmail" placeholder="Email">
</div>
</div>
<div class='control-group'>
<label class='control-label' for='inputHost'>Test Server</label>
<div class='controls'>
<input name="hstnme" type='text' id='inputHost' placeholder='Hostname'>
</div>
</div>
<div class='control-group'>
<label class='control-label' for='inputPort'>Port Number</label>
<div class='controls'>
<input name="port" type='text' id='inputPort' placeholder='Port'>
</div>
</div>
<div class="control-group">
<label class="control-label" for="fileUploadButton">Saz File</label>
<div class="controls">
<input name="saz" type="file" id="fileUploadButton" placeholder="Saz File"/>
</div>
</div>
<div id='modalfooter'>
<input class="btn btn-success" type='submit' id='goButton' value="Go!"/>
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
</div>
</form>
</div>
</div>
我想让它发送到以下jsp(upload.jsp):
<%@ page import="java.io.*,java.util.*, javax.servlet.*"%>
<%@ page import="javax.servlet.http.*"%>
<%@ page import="org.apache.commons.fileupload.*"%>
<%@ page import="org.apache.commons.fileupload.disk.*"%>
<%@ page import="org.apache.commons.fileupload.servlet.*"%>
<%@ page import="org.apache.commons.io.output.*"%>
<%
System.out.println(request.getParameter("hstnme"));
Enumeration<String> paramNames = request.getParameterNames();
while(paramNames.hasMoreElements()) {
String paramName = (String)paramNames.nextElement();
System.out.print(paramName + " : ");
String paramValue = request.getHeader(paramName);
System.out.println(paramValue);
}
%>
我遇到了参数没有正确过来的问题。我的 System.out 说:
null
就是这样。它显然没有得到其他输入(电子邮件、hstnme 和端口)。null 来自第一个 .getParameter("hstnme")
我认为主机名可能会以某种方式受到保护,所以我将其更改为 hstnme,但没有运气。我还注意到,当我使用 commons.fileupload 时,所有四个参数都被制成 FileItems,但它们的值不会一起发送。
如何将表单中的参数传递给 jsp 并正确检索它们?