【问题标题】:Unable to compile servlet in jetty无法在码头编译 servlet
【发布时间】:2013-12-01 13:12:32
【问题描述】:

我有一个谷歌应用引擎连接项目(在 eclipse juno 中),它包含一个简单的 servlet 文件,但由于某种原因,当我运行项目时,相应的类文件没有在 WEB-INF/classes 文件夹中创建,在事实上,WEB-INF 中没有 classes 文件夹。因此我无法运行 servlet。如果有人能提出一些解决方案,我将不胜感激。

下面是我的 web.xml 文件->

<?xml version="1.0" encoding="utf-8" standalone="no"?><web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

 <servlet>
  <servlet-name>SystemServiceServlet</servlet-name>
  <servlet-class>com.google.api.server.spi.SystemServiceServlet</servlet-class>
  <init-param>
   <param-name>services</param-name>
   <param-value>com.queryname.DeviceInfoEndpoint,com.queryname.MessageEndpoint</param-value>
  </init-param>
   <servlet-name>QueryServiceServlet</servlet-name>
  <servlet-class>com.queryname.QueryTest</servlet-class>
 </servlet>
 <servlet-mapping>
  <servlet-name>SystemServiceServlet</servlet-name>
  <url-pattern>/_ah/spi/*</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
  <servlet-name>QueryServiceServlet</servlet-name>
  <url-pattern>/Query/*</url-pattern>
 </servlet-mapping>
</web-app>

我得到以下异常-->

WARNING: Failed startup of context com.google.appengine.tools.development.DevAppEngineWebAppContext@684528a3{/,C:\Users\User8\workspace\QueryName-AppEngine\war}
java.lang.IllegalStateException: No such servlet: QueryServiceServlet

问候, 劳拉。

【问题讨论】:

  • 您的意思是当您在 Eclipse 中“作为 Web 应用程序运行”时没有任何反应?
  • 当我点击“作为 Web 应用程序运行”时,服务器启动,然后正如我在 web.xml 中提到的我的 servlet 类(使用路径 com.),它无法找到类文件所以它抛出一个异常(找不到类)。
  • 你能告诉我们你的 web.xml 是什么样子吗?
  • 将你的 移到它们自己的 中,看看这是否能解决问题。目前它们位于 SystemServiceServlet 的 元素下。

标签: eclipse google-app-engine servlets jetty


【解决方案1】:

将您的&lt;servlet-name&gt;&lt;servlet-class&gt; 移动到他们自己的&lt;servlet&gt; 中,看看这是否能解决问题。目前它们位于SystemServiceServlet&lt;servlet&gt; 元素下。

【讨论】:

  • 我这样做了,现在我得到了一组新的错误-> -->警告:异常 java.lang.ClassNotFoundException: com.queryname.QueryTest -->com.google.appengine.tools。 development.ApiProxyLocalImpl 日志严重:javax.servlet.ServletContext 日志:不可用 javax.servlet.UnavailableException:com.queryname.QueryTest -->警告:上下文 com.google.appengine.tools.development.DevAppEngineWebAppContext@33c40638 启动失败{/, C:\Users\User8\workspace\QueryName-AppEngine\war} java.lang.NullPointerException
  • 它说找不到类com.queryname.QueryTest ..这个异常发生在哪里?它在 servlet 代码中吗?
猜你喜欢
  • 2012-09-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-06
  • 2016-01-19
  • 2016-07-08
  • 2017-01-16
相关资源
最近更新 更多