![](/img/trans.png)
[英]How can I export to PDF in JasperReports 6.1: alternate of using JRPdfExporter.setParameter method
[英]How can I call setParameter in a request object?
這可能是由於我對JSP和JSTL的誤解和不完整信息造成的。 我有一個網頁,我有輸入元素,如
<input name="elementID" value="${param.elementID}"/>
當我嘗試保存表單時,我檢查該elementID和其他元素是否符合某些約束“numeric,less than XXX”。 如果他們沒有,我會顯示一條錯誤消息。 保存所有參數,用戶在修復錯誤后無需再次鍵入。
保存后,當我重定向到要編輯的對象的同一頁面時,我正在尋找設置參數的方法,如request.setParameter("elementID",..)
有沒有辦法做到這一點? 但是,我唯一能找到的是request.setAttribute
。
HTTP響應不支持傳遞參數。
JSP / Servelets允許您為此目的使用request.setAttribute
或session.setAttribute
。 在處理您重定向到的頁面時,這兩種方法都可用,所以基本上,你做得對...
此外,根據您的描述,您可能需要檢查客戶端驗證:在使用客戶端腳本(javascript)驗證表單之前,請不要提交表單
我必須將<%@ page isELIgnored="false"%>
到我的jsp中,以允許像${elementid}
這樣的代碼工作
在servlet處理表單之后(即將用戶輸入保存在數據庫中),讓servlet轉發(不重定向,因為那會丟失請求參數)對包含表單的同一個jsp的請求。 所以沒有必要設置params,因為servlet只是傳回同一個請求對象。
包含表單的jsp應該具有與此類似的輸入:
<form>
...
<input type="text" value="${elementid}"/>
...
</form>
語法$ {varname}是EL。 因此,如果elementid已經有一個值,那么該textfield將包含該值。 或者,如果您沒有使用EL和/或JSTL,則使用scriptlet(但這是非常不可取的,EL和/或JSTL應該是這樣的):
<form>
...
<input type="text" value="<%= request.getParameter("elementid") %>"/>
...
</form>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.