Train on file upload servlet. Outcome: you have to use special tools to read uploaded file because request.getInputStream doesn't give you anything