Tôi gặp sự cố lạ này với máy chủ tomcat 5.5 và tomcat 6.0. Tôi có hai ứng dụng web sẽ được cài đặt trên tomcat.Khi tomcat được khởi động, hai ứng dụng web này cũng được bắt đầu đồng thời nhưng đôi khi một ứng dụng web không khởi tạo được do lỗi init trong một ứng dụng ứng dụng khác đang gặp lỗi classnotfoundexception khi chạy. Trong tomcat 7.0, ứng dụng đang chạy tốt ngay cả khi ứng dụng khác không khởi tạo được.Lỗi phát hiện lỗi ClassNotFoundException trong Tomcat 5.5 và Tomcat 6.0
Sau khi gỡ lỗi, tôi đã biết có một bình chứa tên là crystal.jar nằm trong thư mục web-inf/lib của cả hai ứng dụng. Tôi đã chuyển jar vào thư mục chung/lib của tomcat sau đó nó bắt đầu hoạt động tốt. Tôi muốn biết lý do tại sao nó làm việc tốt trong tomcat 7,0 không trong phiên bản tomcat 5.x và tomcat 6.x. Có sự thay đổi nào trong kiến trúc tải lớp giữa các phiên bản này không?
Cảm ơn
EDIT1: Thư viện là ở vị trí của cả hai ứng dụng thư mục WEB-INF \ lib và họ không có sự phụ thuộc với các file DLL mở rộng. Bây giờ tôi đã đọc về kiến trúc lớp học tomcat 5.5 và biết rằng mọi ứng dụng web đều có trình nạp lớp riêng của nó. Các thư viện trong thư mục và thư mục lớp WEB-INF \ lib sẽ được nạp vào bộ nạp lớp này. Các thư viện được lưu trữ trong thư mục chung sẽ được đặt vào một trình nạp lớp được chia sẻ. Sau đó, thư viện này sẽ được tải một cách riêng biệt trong trình nạp lớp riêng biệt của ứng dụng web. Có ngay cả khi một ứng dụng web không khởi động được ứng dụng web khác sẽ hoạt động độc lập. Đó là lý do tại sao tôi cảm thấy lạ và cần phải điều tra furthur.
Vì vậy, bạn vừa tăng MaxPermSize, phải không? –