2013-09-28 50 views
1

我正在編寫一個web應用程序,我想上傳一個文件到servlet。 我讀過,我可以使用ServletFileUpload.parseRequest(請求) 它在一臺計算機上工作。 但是當我嘗試其他計算機上運行的代碼我得到的功能需要的RequestContext一個錯誤:該功能可與HttpServletRequest的我看到的RequestContext功能在計算機上ServletFileUpload.parseRequest(RequestContext的)ServletFileUpload.parseRequest()想要RequestContext而不是HttpServletRequest請求

。但我不使用它

是否有另一種上傳文件到servlet的方法?

+0

你可以發佈代碼嗎?你確定你傳遞了一個HttpServletRequest?你確定你在兩臺機器上都使用相同的commons-fileupload庫嗎? –

回答

0

確保兩個環境中具有相同的Apache文件上傳罐子。我使用的commons-文件上傳-1.2.2,它有兩種方法

ServletFileUpload.parseRequest(HttpServletRequest的請求)和ServletFileUpload.parseRequest(RequestContext的上下文中)

+0

我該怎麼做?我該如何更換罐子? –

+0

所有依賴jar都位於您的web項目的WEB-INF/lib文件夾中 – duvo

3

你可以嘗試:

new ServletFileUpload().parseRequest(new ServletRequestContext(request)); 

此更改適用於最新的apache tomcat(至少在7.0.70,我正在使用)。

相關問題