Discussion:
The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application
Gibran Castillo
2014-10-02 19:59:38 UTC
Permalink
I deployed donow62 Spring MVC app into Tomcat by placing donow62.xml file
in $CATALINA_HOME/conf/Catalina/localhost

The contents of donow62.xml are as follow:
<Context
docBase="/Users/gibranecastillo/Documents/workspace/CollegeLife/donow62/website"
reloadable="true"/>

They basically point to the website directory in the spring mvc project in
my eclipse workspace.

I looked at the Tomcat logs and it says donow62 deployed successfully. In
the "Tomcat Web Application Manager" I can see /donow62 listed there.

When I clicked on /donow62 it sends me to this URL
http://localhost:8080/donow62/ but instead of getting expected result and
the web page, I get HTTP Status 500 [see web browser log below]

My Spring MVC "donow62" app is using JSTL and it is in the classpath.
Using Eclipse on the donow62 project I created User Libraries that
reference all the dependencies for donow62. The SERVLET user library has
<> el-api.jar - /Library/Tomcat/apache-tomcat-8.0.12/lib/el-api.jar
<> jasper.jar - /Library/Tomcat/apache-tomcat-8.0.12/lib/jasper.jar
<> jasper-el.jar - /Library/Tomcat/apache-tomcat-8.0.12/lib/jasper-el.jar
<> jsp-api.jar - /Library/Tomcat/apache-tomcat-8.0.12/lib/jsp-api.jar
<> servlet-api.jar -
/Library/Tomcat/apache-tomcat-8.0.12/lib/servlet-api.jar
<> javax-servlet.jsp.jstl-1.2.1.jar -
/Users/gibranecastillo/Documents/java/servlet/javax-servlet.jsp.jstl-1.2.1.jar


The exception is basically saying that the donow62 app is missing the JSTL
dependency, the jar, any suggestions on how fix this are welcome.


HTTP Status 500 - The absolute uri: http://java.sun.com/jsp/jstl/core
cannot be resolved in either web.xml or the jar files deployed with this
application

*type* Exception report

*message* *The absolute uri: http://java.sun.com/jsp/jstl/core
<http://java.sun.com/jsp/jstl/core> cannot be resolved in either web.xml or
the jar files deployed with this application*

*description* *The server encountered an internal error that prevented it
from fulfilling this request.*

*exception*

org.apache.jasper.JasperException: The absolute uri:
http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml
or the jar files deployed with this application
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:56)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:278)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:76)
org.apache.jasper.compiler.TagLibraryInfoImpl.generateTldResourcePath(TagLibraryInfoImpl.java:242)
org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:124)
org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:411)
org.apache.jasper.compiler.Parser.parseDirective(Parser.java:469)
org.apache.jasper.compiler.Parser.parseElements(Parser.java:1428)
org.apache.jasper.compiler.Parser.parse(Parser.java:139)
org.apache.jasper.compiler.ParserController.doParse(ParserController.java:227)
org.apache.jasper.compiler.ParserController.parse(ParserController.java:100)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:199)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:356)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:336)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:323)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:564)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:391)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:335)
javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

*note* *The full stack trace of the root cause is available in the Apache
Tomcat/8.0.12 logs.*
------------------------------
Apache Tomcat/8.0.12
--
Thank you,
*Gibran E Castillo*
*iOS 7: 434.713.8095*
Christopher Schultz
2014-10-02 20:11:55 UTC
Permalink
Gibran,
Post by Gibran Castillo
I deployed donow62 Spring MVC app into Tomcat by placing
donow62.xml file in $CATALINA_HOME/conf/Catalina/localhost
The contents of donow62.xml are as follow: <Context
docBase="/Users/gibranecastillo/Documents/workspace/CollegeLife/donow62/website"
reloadable="true"/>
Post by Gibran Castillo
They basically point to the website directory in the spring mvc
project in my eclipse workspace.
What is the directory structure of ".../donow62/website"?
Post by Gibran Castillo
I looked at the Tomcat logs and it says donow62 deployed
successfully. In the "Tomcat Web Application Manager" I can see
/donow62 listed there.
When I clicked on /donow62 it sends me to this URL
http://localhost:8080/donow62/ but instead of getting expected
result and the web page, I get HTTP Status 500 [see web browser log
below]
My Spring MVC "donow62" app is using JSTL and it is in the
classpath. Using Eclipse on the donow62 project I created User
Libraries that reference all the dependencies for donow62. The
SERVLET user library has <> el-api.jar -
/Library/Tomcat/apache-tomcat-8.0.12/lib/el-api.jar <> jasper.jar -
/Library/Tomcat/apache-tomcat-8.0.12/lib/jasper.jar <>
jasper-el.jar -
/Library/Tomcat/apache-tomcat-8.0.12/lib/jasper-el.jar <>
jsp-api.jar - /Library/Tomcat/apache-tomcat-8.0.12/lib/jsp-api.jar
<> servlet-api.jar -
/Library/Tomcat/apache-tomcat-8.0.12/lib/servlet-api.jar <>
javax-servlet.jsp.jstl-1.2.1.jar -
/Users/gibranecastillo/Documents/java/servlet/javax-servlet.jsp.jstl-1.2.1.jar
The exception is basically saying that the donow62 app is missing the JSTL
Post by Gibran Castillo
dependency, the jar, any suggestions on how fix this are welcome.
Is the JSTL JAR file in
/Users/gibranecastillo/Documents/workspace/CollegeLife/donow62/website/WEB-INF/lib?
If not, you aren't actually using it.

Although I don't do it myself, Eclipse is pretty good at deploying web
applications to Tomcat itself: you shouldn't have to even create your
own context.xml file and fill it with data.

If you want to do everything manually (believe me, I understand), then
you'll need to make sure that your Eclipse project successfully builds
to a WAR-like structure which contains, among other things, a WEB-INF/
directory and all of the things that should be in there (like
lib/*.jar). If you don't do that, then you won't really be deploying a
web application... you'll effectively be mapping a directory on the
disk into a URL space and getting no other benefits.

- -chris
Gibran Castillo
2014-10-02 21:04:51 UTC
Permalink
To fix the problem I put the .jar files in tomcat's lib directory and it
works.... best way to do this is like you said to put the *.jar files in
the WEB-INF/lib directory, build the project as WAR and deploy the war file
in Tomcat .... Where do I place the .war file in Tomcat? in the
'webapps' directory?

On Thu, Oct 2, 2014 at 4:11 PM, Christopher Schultz <
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Gibran,
Post by Gibran Castillo
I deployed donow62 Spring MVC app into Tomcat by placing
donow62.xml file in $CATALINA_HOME/conf/Catalina/localhost
The contents of donow62.xml are as follow: <Context
docBase="/Users/gibranecastillo/Documents/workspace/CollegeLife/donow62/website"
reloadable="true"/>
Post by Gibran Castillo
They basically point to the website directory in the spring mvc
project in my eclipse workspace.
What is the directory structure of ".../donow62/website"?
Post by Gibran Castillo
I looked at the Tomcat logs and it says donow62 deployed
successfully. In the "Tomcat Web Application Manager" I can see
/donow62 listed there.
When I clicked on /donow62 it sends me to this URL
http://localhost:8080/donow62/ but instead of getting expected
result and the web page, I get HTTP Status 500 [see web browser log
below]
My Spring MVC "donow62" app is using JSTL and it is in the
classpath. Using Eclipse on the donow62 project I created User
Libraries that reference all the dependencies for donow62. The
SERVLET user library has <> el-api.jar -
/Library/Tomcat/apache-tomcat-8.0.12/lib/el-api.jar <> jasper.jar -
/Library/Tomcat/apache-tomcat-8.0.12/lib/jasper.jar <>
jasper-el.jar -
/Library/Tomcat/apache-tomcat-8.0.12/lib/jasper-el.jar <>
jsp-api.jar - /Library/Tomcat/apache-tomcat-8.0.12/lib/jsp-api.jar
<> servlet-api.jar -
/Library/Tomcat/apache-tomcat-8.0.12/lib/servlet-api.jar <>
javax-servlet.jsp.jstl-1.2.1.jar -
/Users/gibranecastillo/Documents/java/servlet/javax-servlet.jsp.jstl-1.2.1.jar
The exception is basically saying that the donow62 app is missing the JSTL
Post by Gibran Castillo
dependency, the jar, any suggestions on how fix this are welcome.
Is the JSTL JAR file in
/Users/gibranecastillo/Documents/workspace/CollegeLife/donow62/website/WEB-INF/lib?
If not, you aren't actually using it.
Although I don't do it myself, Eclipse is pretty good at deploying web
applications to Tomcat itself: you shouldn't have to even create your
own context.xml file and fill it with data.
If you want to do everything manually (believe me, I understand), then
you'll need to make sure that your Eclipse project successfully builds
to a WAR-like structure which contains, among other things, a WEB-INF/
directory and all of the things that should be in there (like
lib/*.jar). If you don't do that, then you won't really be deploying a
web application... you'll effectively be mapping a directory on the
disk into a URL space and getting no other benefits.
- -chris
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
Comment: GPGTools - http://gpgtools.org
iQIcBAEBCAAGBQJULbGLAAoJEBzwKT+lPKRYQ04P/AsAB5jVCEh4zH56W6zLSsui
NYOffS3QnNgVzpwh/JV+WOyCMXwrkuWNRSGlBnsniUM4Z5HrzebfYJm1EdsG2FsP
2KKeGltiLAXXHKj/10Lxh8Rv1Q+wFx4pTjwJIJmy0qwyS8mamzhhDY1DRalwQsuA
tbsrgw76v57ljjL7+99+RjZGnhoL6CNdjyOFTwArLMnsebD8WBIDf8hv1sS5HqQV
E/OkmXOxk3fSj7LzPMGH2X4QE1jxKcUTUUnESqU32vJ1xkMdBDVul64ihbh6CaT5
chmI+x6bsLT8CgOGwISlydVTG60BTV9mMpXW9TJ02unlB8wAsR7t9192wmhs/Qmz
ReyIlUJDnlHO5c0B7KmjQjlDWDjwpexef//W+AHFuWr5UMJO7hdIh0m0VUdb3Bv+
qqM18HH0q9t3TlvWvp89jvAhGqSOeYBGO+NU97kEwmlxq3Hu6+W3Fqf4TR6SjlEZ
MnlY3IO1ZMhpnWZuIfV/ff3YkF1EFqGToF7v//mxi8SufASxqIaPl9k5x8C4AkyN
VORR/zrAm370aemg7fUNOGfW8OBSO0KsJdDlW961ZwEWC8AuZpLlrm/sNtVZpc2T
Lqa9/njB6sKbfqOiUGtyvx6UWIYHguR4th86bV8jvUX/K85hOJQJRH/C5626oKsH
WTuwkQf5zzGoXbVFKD/t
=QaZn
-----END PGP SIGNATURE-----
---------------------------------------------------------------------
--
Thank you,
*Gibran E Castillo*
*iOS 7: 434.713.8095*
Christopher Schultz
2014-10-02 21:14:06 UTC
Permalink
Gibran,
Post by Gibran Castillo
To fix the problem I put the .jar files in tomcat's lib directory
and it works.... best way to do this is like you said to put the
*.jar files in the WEB-INF/lib directory, build the project as WAR
and deploy the war file in Tomcat .... Where do I place the .war
file in Tomcat? in the 'webapps' directory?
Yes, you would put the WAR file into Tomcat's webapps/ directory. If
you do that, you won't need the separate donow62.xml file.

- -chris
Post by Gibran Castillo
On Thu, Oct 2, 2014 at 4:11 PM, Christopher Schultz <
Gibran,
Post by Gibran Castillo
I deployed donow62 Spring MVC app into Tomcat by placing
donow62.xml file in $CATALINA_HOME/conf/Catalina/localhost
The contents of donow62.xml are as follow: <Context
docBase="/Users/gibranecastillo/Documents/workspace/CollegeLife/donow62/website"
reloadable="true"/>
Post by Gibran Castillo
Post by Gibran Castillo
They basically point to the website directory in the spring
mvc project in my eclipse workspace.
What is the directory structure of ".../donow62/website"?
Post by Gibran Castillo
I looked at the Tomcat logs and it says donow62 deployed
successfully. In the "Tomcat Web Application Manager" I can
see /donow62 listed there.
When I clicked on /donow62 it sends me to this URL
http://localhost:8080/donow62/ but instead of getting
expected result and the web page, I get HTTP Status 500 [see
web browser log below]
My Spring MVC "donow62" app is using JSTL and it is in the
classpath. Using Eclipse on the donow62 project I created
User Libraries that reference all the dependencies for
donow62. The SERVLET user library has <> el-api.jar -
/Library/Tomcat/apache-tomcat-8.0.12/lib/el-api.jar <>
jasper.jar -
/Library/Tomcat/apache-tomcat-8.0.12/lib/jasper.jar <>
jasper-el.jar -
/Library/Tomcat/apache-tomcat-8.0.12/lib/jasper-el.jar <>
jsp-api.jar -
/Library/Tomcat/apache-tomcat-8.0.12/lib/jsp-api.jar <>
servlet-api.jar -
/Library/Tomcat/apache-tomcat-8.0.12/lib/servlet-api.jar <>
javax-servlet.jsp.jstl-1.2.1.jar -
/Users/gibranecastillo/Documents/java/servlet/javax-servlet.jsp.jstl-1.2.1.jar
The exception is basically saying that the donow62 app is missing the JSTL
Post by Gibran Castillo
Post by Gibran Castillo
dependency, the jar, any suggestions on how fix this are
welcome.
Is the JSTL JAR file in
/Users/gibranecastillo/Documents/workspace/CollegeLife/donow62/website/WEB-INF/lib?
If not, you aren't actually using it.
Post by Gibran Castillo
Although I don't do it myself, Eclipse is pretty good at deploying
web applications to Tomcat itself: you shouldn't have to even
create your own context.xml file and fill it with data.
If you want to do everything manually (believe me, I understand),
then you'll need to make sure that your Eclipse project
successfully builds to a WAR-like structure which contains, among
other things, a WEB-INF/ directory and all of the things that
should be in there (like lib/*.jar). If you don't do that, then you
won't really be deploying a web application... you'll effectively
be mapping a directory on the disk into a URL space and getting no
other benefits.
-chris
---------------------------------------------------------------------
Gibran Castillo
2014-10-02 22:23:58 UTC
Permalink
Ok, thanks

On Thu, Oct 2, 2014 at 5:14 PM, Christopher Schultz <
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Gibran,
Post by Gibran Castillo
To fix the problem I put the .jar files in tomcat's lib directory
and it works.... best way to do this is like you said to put the
*.jar files in the WEB-INF/lib directory, build the project as WAR
and deploy the war file in Tomcat .... Where do I place the .war
file in Tomcat? in the 'webapps' directory?
Yes, you would put the WAR file into Tomcat's webapps/ directory. If
you do that, you won't need the separate donow62.xml file.
- -chris
Post by Gibran Castillo
On Thu, Oct 2, 2014 at 4:11 PM, Christopher Schultz <
Gibran,
Post by Gibran Castillo
I deployed donow62 Spring MVC app into Tomcat by placing
donow62.xml file in $CATALINA_HOME/conf/Catalina/localhost
The contents of donow62.xml are as follow: <Context
docBase="/Users/gibranecastillo/Documents/workspace/CollegeLife/donow62/website"
reloadable="true"/>
Post by Gibran Castillo
Post by Gibran Castillo
They basically point to the website directory in the spring
mvc project in my eclipse workspace.
What is the directory structure of ".../donow62/website"?
Post by Gibran Castillo
I looked at the Tomcat logs and it says donow62 deployed
successfully. In the "Tomcat Web Application Manager" I can
see /donow62 listed there.
When I clicked on /donow62 it sends me to this URL
http://localhost:8080/donow62/ but instead of getting
expected result and the web page, I get HTTP Status 500 [see
web browser log below]
My Spring MVC "donow62" app is using JSTL and it is in the
classpath. Using Eclipse on the donow62 project I created
User Libraries that reference all the dependencies for
donow62. The SERVLET user library has <> el-api.jar -
/Library/Tomcat/apache-tomcat-8.0.12/lib/el-api.jar <>
jasper.jar -
/Library/Tomcat/apache-tomcat-8.0.12/lib/jasper.jar <>
jasper-el.jar -
/Library/Tomcat/apache-tomcat-8.0.12/lib/jasper-el.jar <>
jsp-api.jar -
/Library/Tomcat/apache-tomcat-8.0.12/lib/jsp-api.jar <>
servlet-api.jar -
/Library/Tomcat/apache-tomcat-8.0.12/lib/servlet-api.jar <>
javax-servlet.jsp.jstl-1.2.1.jar -
/Users/gibranecastillo/Documents/java/servlet/javax-servlet.jsp.jstl-1.2.1.jar
The exception is basically saying that the donow62 app is missing the JSTL
Post by Gibran Castillo
Post by Gibran Castillo
dependency, the jar, any suggestions on how fix this are
welcome.
Is the JSTL JAR file in
/Users/gibranecastillo/Documents/workspace/CollegeLife/donow62/website/WEB-INF/lib?
If not, you aren't actually using it.
Post by Gibran Castillo
Although I don't do it myself, Eclipse is pretty good at deploying
web applications to Tomcat itself: you shouldn't have to even
create your own context.xml file and fill it with data.
If you want to do everything manually (believe me, I understand),
then you'll need to make sure that your Eclipse project
successfully builds to a WAR-like structure which contains, among
other things, a WEB-INF/ directory and all of the things that
should be in there (like lib/*.jar). If you don't do that, then you
won't really be deploying a web application... you'll effectively
be mapping a directory on the disk into a URL space and getting no
other benefits.
-chris
---------------------------------------------------------------------
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
Comment: GPGTools - http://gpgtools.org
iQIcBAEBCAAGBQJULcAeAAoJEBzwKT+lPKRY1+cQAMY1dP2G+IjwFLciEUkWRUZ0
AS9MmQZT6QJ4EtnAjBeby3Uv8So9XzWu4ZKYjUT4QLPntXFswnnkVNW3DKHNXxhq
uxHYLBhaZRTDYmHpkuNHdH5nX8Cil5wy7ToXqBPmTnY/DxDghjU6Vlzb19oWpkVM
HyM8Ky2CnGqoKtr0fTw8hOzpsi/2F9mgMM7j+cuWmMQoMKpAho8pc5UuBCSU55wG
JJgaTGf0UNsm9X6M4YB/ccsprskdJ1LEp8xou7uOi6geMCJ57sXDlTBSQAelXgyR
YrlH7vVE0rs1+8bdLnrMTK+eTNOTWgNFxEpH8gzsOy3J5PbfZPYN2SRL+r1Fmomx
QdjF7K1gRfCLBwG4fJuilkpwjPkUpFlCv4RFFrr6ZQjf1DSNzZgZ+9+LFgZ8Sxzb
ACXGFErutuFDYBod/HLXYwwX4LrlZ3KlAHV5C9MNQHQzJao33batHIak9S856yiv
ND/Xqm5V0IgTPEcjDwHGMV5/lkCJHJKzJBrbchBDJt7uR4tyvulCet508rmz6fVe
mGcK6jvd1Wi/6nOTULycv0Ufk55dHl/K8nBUi7xUYFz22Yo0cHmXtkcwnvAswmT2
cqjM2/Ypu4GPT4nGk8Txcick5rI+4Z42U00hn3h0mp0w75Wn7n3cAoiMWGyIn6s8
WRSSlu7KeT+EDzmINuko
=Knbb
-----END PGP SIGNATURE-----
---------------------------------------------------------------------
--
Thank you,
*Gibran E Castillo*
*iOS 7: 434.713.8095*
Loading...