2017-03-03 64 views
1

這是<form>的request.getParameter返回空值:servlet的

<form action="<%= request.getContextPath() %>/admin/company/add" id="add-form" name="add-form" method="post" enctype="multipart/form-data"> 
    <textarea class="form-control" name="name" placeholder="Name" ></textarea> 
    <textarea class="form-control" name="address" placeholder="Address" ></textarea> 
    <input class="form-control" name="contact_person" placeholder="Contact Person" type="text" > 
    <input class="form-control" name="email" placeholder="Epost" type="email" > 
    <input class="form-control" name="web" placeholder="Website url" type="text"> 
    <input class="form-control" name="phone" placeholder="Phone" type="text" > 
    <input class="form-control" placeholder="Telefax" name="telefax" type="text" > 
    <button type="submit" class="btn green btn-outline"><i class="fa fa-check"></i> Save</button> 
</form> 

我的HTML代碼,這是我在servlet的doPost()方法

CompanyEntity companyEntity = new CompanyEntity(); 
companyEntity.setAddress(request.getParameter("address")); 
companyEntity.setName(request.getParameter("name")); 
companyEntity.setEmail(request.getParameter("email")); 
companyEntity.setWeb(request.getParameter("web")); 
companyEntity.setContactPerson(request.getParameter("contact_person")); 
companyEntity.setPhone(request.getParameter("phone")); 
companyEntity.setTelefax(request.getParameter("telefax")); 

錯誤 - 所有值的實體代碼爲空

這裏有什麼錯誤,如何解決它。

我連讀什麼 link 1link2link3link4

+0

你太上傳文件中刪除enctype="multipart/form-data"? –

+0

no ... but enctype =「multpart/form-data」 –

+0

爲什麼不使用'application/x-www-form-urlencoded'? –

回答

3

你張貼形式multipart/form-data。由於它似乎沒有上傳任何文件,請將其更改爲application/x-www-form-urlencoded(或者將其完全刪除,因爲這是默認設置)。

或者,向您的應用程序添加某種多部分請求過濾器/包裝,以便處理多部分請求並提供對請求參數的訪問。

+0

好的意思是問題可能與enctype ...讓我檢查...對不起,遲到的響應 –

+0

它工作正常..謝謝 –

+0

我想我需要處理enctype =「multipart/form-data」 –

0

而在表單輸入的名稱是「傳真」,但你寫的

request.getParameter("telefax") 
+0

因爲,這很明顯不是他要求的問題的解決方案,評論就足夠了。編輯:Aaaaaand我只是承認,你需要更多的聲譽來評論。所以,沒關係... –

+0

是的,我需要更多的聲譽,這就是爲什麼我不能評論:( –