回答您的問題:
問:您是否使用UploadReceiver.java從github.com/FineUploader/server-examples/tree/master/java?
這是一個基於Java的端點處理程序的起點。我的任何集成Fine Uploader的項目可能都有類似的代碼。也就是說,一個類處理請求,另一個解釋所有請求,另一個解析多部分編碼請求,這是Fine Uploader默認爲文件上傳發送的內容。所有這些類都適用於傳統端點。如果您使用Fine Uploader S3直接上傳到S3,那麼s3/S3Uploads類會更簡單一些,因爲上傳請求會直接發送到S3。
問:你可以與我們分享你的web.xml嗎?
我的任何一個集成Fine Uploader的Tapestry項目中使用的web.xml是不起眼的。我們在web.xml中註冊了ServletContextListener
,其中包括將servlet類映射到相對路徑。
例如,對於在web.xml此項:
<listener>
<listener-class>com.mydomain.SystemInit</listener-class>
</listener>
我們將有一個SystemInit
類實現ServletContextListener
。在那裏,我們將實現一個contextInitialized
方法給我們的精細上傳請求的servlet映射到這樣一個特定的路徑:
@Override
public void contextInitialized(ServletContextEvent sce)
{
ServletContext context = sce.getServletContext();
context.addServlet("FineUploaderReceiver", FineUploaderReceiver.class).addMapping("/uploads/*");
}
所以上面發送到路徑上的任何請求都打的類。在設置客戶端Fine Uploader選項時請牢記這一點。
在這個servlet/receiver中,我們將檢查路徑的末尾,確定我們正在處理的Fine Uploader請求的類型。