I wouldn't take those points too seriously, as you obviously don't. Here's why:
- String operations in Java are slower than Perl. The language wasn't designed for string operations, and it hasn't been efficient with common operations. (For example, at least through 1.2, string concatenation was horribly slow, and the best way to do it was to create your own StringBuffer and manually put the strings together. Fun.)
- Java doesn't have built in regular expressions. (At least, they were available in add-on libraries last time I checked.) See the first point -- if it's built into the language and touted as something you'll regularly want to do, it's probably debugged and optimized. Are Java's add-in regex packages as powerful as those of Perl? Probably not.
- Java's just as interpreted as Perl is. Can you run a Java servlet without loading an interpreter (that would be the JVM)? If you compile it to native code, yes. Can you do that with servlets?
- Java applets are sandboxed. Are normal Java programs? (Not that I've encountered.) You can use Safe and opcode in Perl, as well as Taint mode to disable operations and even give errors when attempting something potentially dangerous.
- Threading wouldn't apply unless your web server is also threaded. Would it?
I'm not saying there aren't advantages to servlets and Java in general, but the pros presented above don't match my experience. The obvious disclaimer is that I haven't done Java in a year and a half, so things may have improved in that time.