GWT Servlet - ClassNotFoundException

时间:2013-02-28 19:58:55

标签: java gwt servlets

我正在通过关注StockWatcher tutorial来学习GWT。在我自己尝试了几件事之后,我在servlet上得到了这个例外:

Feb 28, 2013 7:55:00 PM com.google.apphosting.utils.jetty.JettyLogger info
INFO: jetty-6.1.x
Feb 28, 2013 7:55:00 PM com.google.apphosting.utils.jetty.JettyLogger warn
WARNING: EXCEPTION 
java.lang.ClassNotFoundException: com.google.gwt.sc2.server.GreetingServiceImpl
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at com.google.appengine.tools.development.IsolatedAppClassLoader.loadClass(IsolatedAppClassLoader.java:213)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

这是我正在配置servlet的web.xml文件:

<servlet>
    <servlet-name>greetServlet</servlet-name>
    <servlet-class>com.google.gwt.sc2.server.GreetingServiceImpl</servlet-class>
</servlet>

<servlet-mapping>
    <servlet-name>greetServlet</servlet-name>
    <url-pattern>/bikeapp/greet</url-pattern>
</servlet-mapping>

我想我错过了一些非常基本的东西,但我不知道是什么。有人可以帮忙吗?

2 个答案:

答案 0 :(得分:2)

我假设您正在使用eclipse,请检查默认输出文件夹的设置。它应该在编译项目时在WEB-INF / classes中。

enter image description here

答案 1 :(得分:0)

我遇到了同样的问题。原因是我使用GPE(Google Plugin for Eclipse)创建了项目,并尝试在动作手册中关注GWT。但是我的GPE版本创造了很多人员只是基本的项目基础设施。因此,如果您将web.xml更改为

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

一切都应该正常。