Имея исключение. Spring 3 с пакетом Spring Tool Suite, Tomcat 7 и Maven - PullRequest
0 голосов
/ 29 сентября 2011

Я новичок в Spring 3. Я недавно установил Eclipse Indigo, Spring Tool Suite. Использование Spring Tool Suite «Spring Template -> Spring MVC project». Я создал приложение Hello world.

При запуске приложения. Это дает исключение.

java.lang.LinkageError: loader constraint violation: when resolving interface method "javax.servlet.jsp.JspApplicationContext.getExpressionFactory()Ljavax/el/ExpressionFactory;" the class loader (instance of org/apache/jasper/servlet/JasperLoader) of the current class, org/apache/jsp/index_jsp, and the class loader (instance of org/apache/catalina/loader/StandardClassLoader) for resolved class, javax/servlet/jsp/JspApplicationContext, have different Class objects for the type javax/el/ExpressionFactory used in the signature
org.apache.jsp.index_jsp._jspInit(index_jsp.java:31)
org.apache.jasper.runtime.HttpJspBase.init(HttpJspBase.java:49)
org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:181)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:370)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:389)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:333)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

Что не так с настройкой

Ответы [ 3 ]

1 голос
/ 12 октября 2011

это потому, что шаблон создан для Tomcat 6.0 с JSP 2.1, а Tomcat 7.0 работает с JSP 2.2.Как вы можете видеть на этой странице: http://tomcat.apache.org/whichversion.html.

Я пытаюсь изменить jsp jar для 2.2 в pom.xml и добавить el-api 2.2.но это не достаточно.Я не нахожу окончательной проблемы.

Наконец, я решил использовать кота 6.

С уважением

1 голос
/ 29 сентября 2011

Удалить все el-api.jar из WEB-INF/lib

Если вы работаете из среды IDE, у вас должна быть максимальная область действия el-api.jar с provided. Даже с этим это может все еще потерпеть неудачу, потому что среда IDE иногда не принимает во внимание область. Я думаю, что плагин m2e-wtp должен это исправить.

0 голосов
/ 18 сентября 2012

У меня была такая же проблема, и я решил ее, отредактировав POM, изменив версию jsp-api с 2.1 на 2.2

    <dependency>
        <groupId>javax.servlet.jsp</groupId>
        <artifactId>jsp-api</artifactId>
        <version>2.2</version>  <!-- 2.1 for Tomcat 6, 2.2 for Tomcat 7 -->
        <scope>provided</scope>
    </dependency>
...