Trying to upgrade to berth 8.1.5, launch is not possible using the JSTL <% @ taglib%> import of standard JSTL tags

My actual goal is to get

 <%@ page trimDirectiveWhitespaces=true %> 

work. I am currently running my web application with the prefix 7.4.2. As a random thing to try, I downloaded a newer version. At the same time, when I try to start my web application, I get this exception:

PWC6188: Absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved either in the web.xml file or in the jar files deployed with this application

I found many references to this, but no answer makes any sense to me. For what it's worth, I have an updated jstl jar file in my WEB-INF / lib directory (which, of course, works fine with the previous version of the gatekeeper, or at least I assume that I certainly don’t get it of this exception).

Structurally, there is nothing exotic in the .war file that I run, I don’t think, and it worked on Jetty (via the pier) for a long time. It also works in Tomcat and Resin, not modifiable. Thus, there is some critical difference between the version 7 prefix and version 8 (maybe Jetty itself is not sure), and I suspect the solution is something extremely simple; I just can't find him.

This is a v2.5 web application, so my taglib link looks like this:

 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 

edit Here is the web application tag from my web.xml (app one):

 <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" metadata-complete="false" version="2.5"> 
+4
source share
2 answers

If you use Java EE 7, you should use jpp namespaces, not java.sun, on some servers that they could support for compatibility, but since the new specifications for EE 7 and java are no longer part of the sun, they are removing it. if you are using Java ee 6, you should save it and not upgrade on the java ee 7 compilation server or check one that has these namespaces, if you want to use EE 7, then you have to change all your Namespaces. Mames namespaces is also a bad idea, as it can lead to duplication of identifier and all kinds of things.

+1
source

Just to support what rekiem87 wrote, here is the 3.1 header <web-app> that I used to run Jetty-Runner 9.2.3:

 <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> 

All I did was modify my web.xml to use this header and then restarted Jetty (using the new version) and it just worked.

0
source

All Articles