一个正常可用的maven工程在elipse中使用动态工程门面后启动/调试项目在tomcat等容器中启动正常,在浏览器中却报空指针异常,
org.apache.jasper.JasperException: java.lang.NullPointerException
org.apache.jasper.servlet.JspServletWrapper.handleJspException..................
主要是因为在maven工程中使用了以下依赖或之一,其在maven中是正常,因为其生命周期有指定值,不会打入发布包中,而在eclipse中因为只是简单指定了Maven Lib,插件只是简单将其复制到发布目录,而没有理会生命周期.所以就会与Servlet容器相冲突.解决:删除依赖/删除目录中的jar包或者使用maven插件调试.
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2.1-b03</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>