Why do the JSTL tags show up in my document?
You probably forgot the taglib directive. Without the directive, the JSP engine doesn't recognize the tags as custom tags. Instead, the JSP engine just writes them out as part of the document.
Why can't the JSP engine find the JSTL tags?
Make sure that all the required JAR files are in the Web application's WEB-INF directory. If you are using Tomcat, you can put them in the common/lib directory underneath the main Tomcat directory.
I am using Struts and it provides many of the same capabilities as JSTL, which should I use?
There is no reason why you can't use both, but in the interest of code maintenance, if the Struts tags provide all the capabilities you need, stick with them.