mirror of
https://github.com/apache/struts.git
synced 2026-08-07 07:37:20 +00:00
703ba48e90
The volatile keyword on non-primitive fields (HttpSession, Set) triggers Sonar rule S3077 because volatile only guarantees reference visibility, not thread-safety of object contents. Since all field accesses are already protected by synchronized(this), the volatile keyword is redundant - synchronization already provides both visibility (happens-before) and atomicity guarantees. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Struts 2 Core
This is a core of the Apache Struts framework and all other modules depend on it. It requires Java 8 at minimum and a Servlet container supporting Java Servlet API 3.1 at least.
Installation
Just drop this plugin into WEB-INF/lib folder or add it as Maven dependency