You can generate HTML even by concatenating of strings. Or you may use any of text template engines like simple JMTE(Java Minimal Template Engine) or more advanced like Velocity or StringTemplate. Using another template engine you could bravely state that you don't use JSP. Although I don't see much difference between JSP and other template engines, I mean this your requirement is kind of stupid.
Even better: don't use JSP use JSF 2! )