javax.el.ELException: Failed to parse the expression 一个莫名的错误
开发时,环境为 win7 tomcat 6.x ,开发完成后放到服务器 centOS 7、 tomcat 8.x上测试,结果报了 org.apache.jasper.JasperException:javax.el.ELException: Failed to parse the expression [${((i.index)/4)%2 >= 1 }],百思不得其解,以为是tomcat版本的问题,就下载了 tomcat 7、8 来在win7下测试,结果还是没问题,正常访问。更加郁闷了、千万个草泥马在心里狂奔,Google。。。
最后终于找到了原因:在用el表达式时,最好不要像:((i.index)/4)%2 >= 1 不要把没有参与运算的 i.index 用单独的()来包着。改为这样 ${(i.index/4%2) >= 1 } 之后,代码就在服务器上欢快的跑起来了