I appreciate the answers I recieved, but I am going to go a head and answer my own question (though I am open to more feedback).
It appears that JSTL does provide a basic way of creating lists through strings. The following will create a comma separated list (of sorts) and store it in the page scope.
<c:set var="colors" scope="page" value="red,green,blue,orange"/>
This list can then be looped over using the following
<c:forEach var="color" items="${colors}">
<LI>${color} <br/>
</c:forEach>
This does not require use of the split function, and is handled automatically in the loop. While ',' is the default delim. I think this is pretty clean and will handle most cases for the UI.
I do not like the idea of building UI related lists int servlet, as that seems to violate MVC more than putting in a simple scriplet, but the above seems to work, and the split function should work well also if needed.