Skip to content

Commit f0a9c1b

Browse files
committed
Fixing UploadServlet in test environment to conform to servlet-api 3.1
1 parent 48260ad commit f0a9c1b

File tree

2 files changed

+12
-7
lines changed

2 files changed

+12
-7
lines changed

java/client/test/org/openqa/selenium/environment/webserver/JettyAppServer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ public JettyAppServer(String hostName) {
117117
addServlet(defaultContext, "/basicAuth", BasicAuth.class);
118118
addServlet(defaultContext, "/generated/*", GeneratedJsTestServlet.class);
119119

120-
addFilter(defaultContext, MultiPartFilter.class, "/upload", DispatcherType.REQUEST);
120+
//addFilter(defaultContext, MultiPartFilter.class, "/upload", DispatcherType.REQUEST);
121121

122122
listenOn(getHttpPort());
123123
listenSecurelyOn(getHttpsPort());

java/client/test/org/openqa/selenium/environment/webserver/UploadServlet.java

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,19 @@
1717

1818
package org.openqa.selenium.environment.webserver;
1919

20+
import org.seleniumhq.jetty9.server.Request;
21+
2022
import java.io.File;
2123
import java.io.FileInputStream;
2224
import java.io.IOException;
2325
import java.io.InputStream;
2426

27+
import javax.servlet.MultipartConfigElement;
2528
import javax.servlet.ServletException;
2629
import javax.servlet.http.HttpServlet;
2730
import javax.servlet.http.HttpServletRequest;
2831
import javax.servlet.http.HttpServletResponse;
32+
import javax.servlet.http.Part;
2933

3034
/**
3135
* A simple file upload servlet that just sends back the file contents to the client.
@@ -34,23 +38,24 @@
3438
*/
3539
public class UploadServlet extends HttpServlet {
3640

41+
private static final MultipartConfigElement MULTI_PART_CONFIG = new MultipartConfigElement(System.getProperty("java.io.tmpdir"));
42+
3743
@Override
3844
protected void doPost(HttpServletRequest request,
3945
HttpServletResponse response)
4046
throws ServletException, IOException {
4147
response.setContentType("text/html");
4248
response.setStatus(HttpServletResponse.SC_OK);
4349

44-
File file = (File) request.getAttribute("upload");
45-
file.deleteOnExit();
50+
request.setAttribute(Request.__MULTIPART_CONFIG_ELEMENT, MULTI_PART_CONFIG);
51+
Part upload = request.getPart("upload");
4652

47-
int length = (int) file.length();
48-
byte[] buffer = new byte[length];
53+
byte[] buffer = new byte[(int) upload.getSize()];
4954
InputStream in = null;
5055
String content;
5156
try {
52-
in = new FileInputStream(file);
53-
in.read(buffer, 0, length);
57+
in = upload.getInputStream();
58+
in.read(buffer, 0, (int) upload.getSize());
5459
content = new String(buffer, "UTF-8");
5560
} finally {
5661
if (in != null) {

0 commit comments

Comments
 (0)