Gần đây tôi đã bắt đầu sử dụng JMeter để tải thử nghiệm webapp của tôi, cục bộ trên máy của tôi. Tôi có một trang jsp để tải lên hình ảnh. Các hình ảnh được xử lý bởi servlet của tôi. Khi tôi cố gắng quá trình này ngày hôm nay, tôi có ngoại lệ/lỗi sau:Tại sao tôi nhận được NoClassDefFoundError trên HttpServletRequest trỏ đến ServletFileUpload?
exception
javax.servlet.ServletException: Servlet execution threw an exception
root cause
java.lang.NoClassDefFoundError: javax/servlet/http/HttpServletRequest
org.apache.commons.fileupload.servlet.ServletFileUpload.isMultipartContent(ServletFileUpload.java:68)
spyder.servlets.imageProcessing.ImageProcessingServlet.uploadEditedImagesToDB(ImageProcessingServlet.java:527)
spyder.servlets.imageProcessing.ImageProcessingServlet.doPost(ImageProcessingServlet.java:153)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
Đây là mã từ servlet của tôi rằng ngoại lệ được đề cập đến -
boolean isPart = ServletFileUpload.isMultipartContent(req);
.... và có, Tôi đã đặt tất cả các câu lệnh import
cần thiết trong lớp học.
Tôi không thể nhớ việc thực hiện bất kỳ thay đổi nào đối với bất kỳ điều gì trên hệ thống của mình có thể gây ra sự cố này. Quá trình này luôn chạy mà không gặp bất kỳ vấn đề nào, vì vậy tôi không hiểu điều gì khiến nó thất bại như thế này. Nó khá ngẫu nhiên, tôi nghĩ, rằng nó thất bại sau khi tôi đã sử dụng JMeter ...
Cảm ơn bạn đã chỉ ra lỗi của tôi. Tôi đã loại bỏ các jars bên thứ 3 ra khỏi thư mục jre/lib/ext (tôi đã sao chép chúng trong đó), và sau khi khởi động lại (không cài đặt lại) của Tomcat, quá trình này sẽ được sao lưu và chạy như trước. – katura
Bạn được chào đón. – BalusC
cảm ơn giải quyết vấn đề thủy tinh của tôi quá! – beatrice