maven+;防波堤,但el表达式不能正常工作

maven+;防波堤,但el表达式不能正常工作,el,maven-jetty-plugin,El,Maven Jetty Plugin,我使用maven+jetty插件(6.1.26),在jsp页面中,我编写了${title\u name}工作正常。但如果我写${title\u name==null?“default name”:title\u name},它会抛出如下异常: org.apache.jasper.JasperException:/WEB-INF/views/layout/header.jsp(13,9)PWC6038:“${header\u title==null?”defaultName“:header\u t

我使用maven+jetty插件(6.1.26),在jsp页面中,我编写了${title\u name}工作正常。但如果我写${title\u name==null?“default name”:title\u name},它会抛出如下异常: org.apache.jasper.JasperException:/WEB-INF/views/layout/header.jsp(13,9)PWC6038:“${header\u title==null?”defaultName“:header\u title}”包含无效表达式:javax.el.ELException:错误解析:${header\u title==null?”defaultName“:header\u title}” 位于org.apache.jasper.compiler.DefaultErrorHandler.jsperor(DefaultErrorHandler.java:78) 位于org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:373) 位于org.apache.jasper.compiler.ErrorDispatcher.jsperor(ErrorDispatcher.java:185) 位于org.apache.jasper.compiler.JspUtil.validateExpressions(JspUtil.java:649) 位于org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:752) 位于org.apache.jasper.compiler.Node$ELExpression.accept(Node.java:946) 位于org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2291) 位于org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2341) 位于org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2347) 位于org.apache.jasper.compiler.Node$Root.accept(Node.java:498) 位于org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2291) 位于org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2341) 位于org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:541) 位于org.apache.jasper.compiler.Node$IncludeDirective.accept(Node.java:647) 位于org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2291) 位于org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2341) 位于org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2347) 位于org.apache.jasper.compiler.Node$Root.accept(Node.java:498) 位于org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2291) 位于org.apache.jasper.compiler.Validator.validate(Validator.java:1853) 位于org.apache.jasper.compiler.compiler.generateJava(compiler.java:210) 位于org.apache.jasper.compiler.compiler.compile(compiler.java:435) 位于org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:608) 位于org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:360) 位于org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:486) 位于org.apache.jasper.servlet.JspServlet.service(JspServlet.java:380) 位于javax.servlet.http.HttpServlet.service(HttpServlet.java:820) 位于org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511) 位于org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:401) 位于org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) 位于org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) 位于org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766) 位于org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450) 位于org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:327) 位于org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)


但是上面的所有表达式在tomcat中都工作得很好,我该怎么办呢?

Jetty在其EL parsers版本中进行了更改,版本6.X应该使用glassfish或jboss EL parse。。。 从版本9开始,他们转向ApacheEL解析器

可能的解决办法:

将ApacheJasper和ElJars添加到项目中(糟糕的解决方法) 搬到9号码头,一切都会好起来的