Java项目。 JspWriter的问题

我在工作中得到了一些旧的JSP Web项目,我试图导入到eclipse中。 我对java和eclipse的经验远非如此。

在其中一个jsp文件中我遇到错误:
导入javax.servlet.jsp.JspWriter无法解析

代码:

<%@ page import="org.apache.axiom.om.OMAbstractFactory, org.apache.axiom.om.OMElement, org.apache.axiom.om.OMFactory, org.apache.axiom.om.OMNamespace, org.apache.axis2.AxisFault, org.apache.axis2.Constants, org.apache.axis2.addressing.EndpointReference, org.apache.axis2.client.Options, org.apache.axis2.client.ServiceClient, org.apache.axis2.context.ConfigurationContext, org.apache.axis2.context.ConfigurationContextFactory, javax.servlet.ServletContext, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, javax.servlet.jsp.JspWriter,  

当然,在我引用JspWriter的任何其他地方,我都会遇到同样的错误。

我查看了Java Build Path,我有以下内容:
1)servlet-api.jar – C:\ Program Files …
2)耳库
3)JRE系统库(jdk1.6.0_25)
4)Web App库

我曾经为Apache Tomcat 6.0库提供了一个未绑定的项目,因此我删除了它。 我试图添加它但不能。 当我单击添加库>服务器运行时我得到一个新窗口说:“选择要添加到类路径的运行时”,但没有什么可以选择。

我安装了:用于Web开发人员的Eclipse Java EE IDE,安装了Apache Tomcat(6.0),最新版本的Ant和Windows 7 64位。

有任何想法吗?

谢谢。

导入javax.servlet.jsp.JspWriter无法解析

在Tomcat的情况下,它是jsp-api.jar文件的一部分。 但是,不要像在servlet-api.jar那样手动将此文件添加到构建路径中,这不是正确的方法! 它会使您的webapp无法移植到其他目标运行时(读取:servletcontainers)。 即你的webapp只与Tomcat 6.0兼容,但不与其他容器品牌/版本如Tomcat 7,Glassfish,JBoss AS等兼容。


我查看了Java Build Path,我有以下内容:

1)servlet-api.jar – C:\ Program Files …

删除这个。 它只会与您即将配置的任何目标运行时发生冲突。


我曾经为Apache Tomcat 6.0库提供了一个未绑定的项目,因此我删除了它。 我试图添加它但不能。 当我单击添加库>服务器运行时我得到一个新窗口说:“选择要添加到类路径的运行时”,但没有什么可以选择。

转到Eclipse中的Servers视图。 右键单击它并选择“ 新建” 。 选择适当的servletcontainer品牌和版本并完成向导。 现在你在Eclipse中有了一个目标运行时。

然后,在项目的属性中,转到Targeted Runtimes并在其中选择服务器。 没有别的事情需要做。 Eclipse将处理剩余的魔法。

也可以看看:

  • 如何在Eclipse项目中导入javax.servlet API?

javax.servlet.jsp.JspWriter不会出现在Tomcat发行版的servlet-api.jar中。 相反,它通常存在于jsp-api.jar文件中。

您应该将Apache Tomcat 6 Server Runtime重新绑定到项目的类路径中,以便Tomcat 6提供的所有JAR再次可用。 未绑定的Tomcat 6服务器运行时除了通知您已复制其类路径条目在原始Eclipse工作空间中有效或可能已有效的Eclipse项目之外,没有任何用途。

要将Apache Tomcat 6 Server重新引入项目的类路径,首先使用现有的Tomcat 6安装在Eclipse中定义Server Runtime。 稍后,将Server Runtime添加为项目构建路径中的库。

由于错误只有“javax.servlet.jsp.JspWriter”,我首先要去检查这个类实际存在于你放在项目类路径中的jar中。 此外,在Eclipse Java EE中创建具有所需方面的新动态Web项目并导入源文件也不是一个坏主意。