If you declare a servlet as being single threaded, then the instance fields of the servlet are thread safe. I am not sure but I think the servlet container can create multiple instances of the servlet to respond to the requests. So the static fields will not be thread safe any ways. I don't know what the servlet spec says about this...
Surely, the container can create multiple instances, each servicing only one request. This makes the instance variables thread safe.
But the static variables are still thread unsafe.
Also, note that this multiple instance creation is not guaranteed by the spec. It is vendor dependent.
There are other ways to introduce thread-unsafety into a web app besides servlet instance methods, e.g. sessions and context attributes. That's why that interface is deprecated - it doesn't guarantee thread-safety.
Don't get me started about those stupid light bulbs.