If you meant to return the string ReproduceError, then mark the return value with @ResponseBody.
On the other hand, if you've got a View called ReproduceError then perhaps your view resolver isn't configured properly?
EDIT: ok, looks like a rendering of the ReproduceError view is intended, but from the logfile it seems that the controller method isn't being hit.
Sorry, I'm not the type who runs random code I found on the internet! However, I can tell you that your edited post has already told me something - I don't think your method is being hit! I'm willing to look at the rest of your log file though, can you post that somewhere?
I added the answer to the end of my OP. I am also marking yours as the answer and +1 to thank you for looking into this. Separately, a zipped eclipse project is just a collection of folders and classes with some configs. In this case, the contents were so minimalistic that it would only have taken a few minutes to simply cut and paste files into a new project and to read each file rather than just blindly importing. But the problem is solved now anyway.