Summary: | SecurityException trying to access JNI classes in Drawboard example when running with SecurityManager | ||
---|---|---|---|
Product: | Tomcat 7 | Reporter: | Konstantin Kolinko <knst.kolinko> |
Component: | WebSocket | Assignee: | Tomcat Developers Mailing List <dev> |
Status: | RESOLVED FIXED | ||
Severity: | normal | ||
Priority: | P2 | ||
Version: | 7.0.82 | ||
Target Milestone: | --- | ||
Hardware: | PC | ||
OS: | All | ||
Attachments: | catalina.2017-10-02.log |
Description
Konstantin Kolinko
2017-10-02 11:40:05 UTC
AprServletOutputStream.java:135 is if (Status.APR_STATUS_IS_EAGAIN(-written)) { APR_STATUS_IS_EAGAIN is a method, not a constant, and thus Java tries to load the class. If I preload the Status class the issue does not happen. This is: to work-around this issue, add the following attribute to JreMemoryLeakPreventionListener configured in conf/server.xml: [[[ classesToInitialize="org.apache.tomcat.jni.Status" ]]] Fixed in 7.0.x for 7.0.83 onwards. |