I have a previous post about this from a little different view. I just got one thing to say. It is very important to ask the questions you ask! To know the strenghts and weaknesses of languages is very important to know, so you know when to choose a particular language.
Everything that is Text handling. Everything handling large amounts of data(mainly PDL). My favorite choice is Perl. Drawbacks. I just can't get my head around to a natural way of handling "events" in perl!
(IMHO)The only thing that Java is good at is forcing one to think OO. i.e. I like to handle graphics, sockets, threads with Java. It gets easier to think of things mentioned as objects. It has atleast made my life easier to grasp the concepts.