无法将servlet示例GWT应用程序部署到Apache Tomcat 7
无法将servlet示例GWT应用程序部署到Apache Tomcat 7,gwt,tomcat,servlets,tomcat7,gwt-rpc,Gwt,Tomcat,Servlets,Tomcat7,Gwt Rpc,原始的、不太详细的问题可在此处找到:。当我写这篇文章时,我决定再试一次,这次它成功了,但是示例应用程序中的servlet似乎不起作用。单击按钮时显示“远程过程调用失败”。以下是我采取的步骤列表
下面是我为将示例应用程序部署到ApacheTomcat7而尝试做的事情列表
设置环境
在虚拟机上安装Ubuntu 12.04
更新系统
从这里的教程安装ApacheTomcat7
启动它并转到localhost:8080以查看它是否正常工作
获取样本项目
安装GWT
使用Eclipse向导,创建一个名为“
原始的、不太详细的问题可在此处找到:。当我写这篇文章时,我决定再试一次,这次它成功了,但是示例应用程序中的servlet似乎不起作用。单击按钮时显示“远程过程调用失败”。以下是我采取的步骤列表
下面是我为将示例应用程序部署到ApacheTomcat7而尝试做的事情列表
设置环境
在虚拟机上安装Ubuntu 12.04
更新系统
从这里的教程安装ApacheTomcat7
启动它并转到localhost:8080以查看它是否正常工作李>
获取样本项目
安装GWT
使用Eclipse向导,创建一个名为“SampleApp”的新项目
在开发模式下运行一次,以确保其正常工作李>
编译模块。它完成了6个排列的整体编译等
编译成如下所示的.war文件(文件名为SampleApp.war)
部署
将SampleApp.war复制到Apache Tomcat的webapps文件夹中
.war自动解压,我现在可以在localhost:8080/SampleApp/SampleApp.html上访问我的应用程序李>
然而,现在我的问题是服务器端代码似乎不起作用
本地主机访问日志的内容
127.0.0.1---[18/Apr/2013:21:03:43-0700]“GET/SampleApp/SampleApp.html HTTP/1.1”304-
127.0.0.1---[18/Apr/2013:21:03:43-0700]“GET/SampleApp/SampleApp.css HTTP/1.1”304-
127.0.0.1---[18/Apr/2013:21:03:43-0700]“GET/SampleApp/SampleApp/SampleApp/SampleApp.nocache.js HTTP/1.1”304-
127.0.0.1---[18/Apr/2013:21:03:43-0700]“GET/SampleApp/SampleApp/gwt/clean/clean.css HTTP/1.1”304-
127.0.0.1---[18/Apr/2013:21:03:43-0700]“GET/SampleApp/SampleApp/gwt/clean/images/hborder.png HTTP/1.1”304-
127.0.0.1--[18/Apr/2013:21:03:44-0700]“POST/SampleApp/SampleApp/greet HTTP/1.1”500 2773
127.0.0.1---[18/Apr/2013:21:03:44-0700]“GET/SampleApp/SampleApp/gwt/clean/images/circles.png HTTP/1.1”304-
127.0.0.1---[18/Apr/2013:21:03:44-0700]“GET/SampleApp/SampleApp/gwt/clean/images/vborder.png HTTP/1.1”304-
本地主机的内容。2013-04-18
2013年4月18日晚上8:02:05 org.apache.catalina.core.ApplicationContext
日志信息:ContextListener:contextInitialized()2013年4月18日8:02:05
PM org.apache.catalina.core.ApplicationContext日志信息:
SessionListener:contextInitialized()2013年4月18日晚上8:02:05
org.apache.catalina.core.ApplicationContext日志信息:ContextListener:
attributeAdded('org.apache.jasper.compiler.tldLocationCache',
'org.apache.jasper.compiler。TldLocationsCache@dc0435”)2013年4月18日
晚上8:02:16 org.apache.catalina.core.ApplicationContext日志信息:
ContextListener:contextInitialized()2013年4月18日下午8:02:16
org.apache.catalina.core.ApplicationContext日志信息:SessionListener:
上下文初始化()2013年4月18日下午8:02:16
org.apache.catalina.core.ApplicationContext日志信息:ContextListener:
attributeAdded('org.apache.jasper.compiler.tldLocationCache',
'org.apache.jasper.compiler。TldLocationsCache@113e9fd”)2013年4月18日
晚上8:02:16 org.apache.catalina.core.ApplicationContext日志信息:
会话侦听器:上下文()2013年4月18日下午8:02:16
org.apache.catalina.core.ApplicationContext日志信息:ContextListener:
上下文日期:2013年4月18日下午8:29:48
org.apache.catalina.core.ApplicationContext日志信息:SessionListener:
上下文日期:2013年4月18日下午8:29:48
org.apache.catalina.core.ApplicationContext日志信息:ContextListener:
上下文日期:2013年4月18日晚上8:30:00
org.apache.catalina.core.ApplicationContext日志信息:ContextListener:
上下文初始化()2013年4月18日晚上8:30:00
org.apache.catalina.core.ApplicationContext日志信息:SessionListener:
上下文初始化()2013年4月18日晚上8:30:00
org.apache.catalina.core.ApplicationContext日志信息:ContextListener:
attributeAdded('org.apache.jasper.compiler.tldLocationCache',
'org.apache.jasper.compiler。TldLocationsCache@180cb01”)2013年4月18日
9:03:36 PM org.apache.catalina.core.ApplicationContext日志信息:
会话侦听器:上下文()2013年4月18日晚上9:03:36
org.apache.catalina.core.ApplicationContext日志信息:ContextListener:
上下文日期:2013年4月18日晚上9:03:41
org.apache.catalina.core.ApplicationContext日志信息:ContextListener:
上下文初始化()2013年4月18日晚上9:03:41
org.apache.catalina.core.ApplicationContext日志信息:SessionListener:
上下文初始化()2013年4月18日晚上9:03:41
org.apache.catalina.core.ApplicationContext日志信息:ContextListener:
attributeAdded('org.apache.jasper.compiler.tldLocationCache',
'org.apache.jasper.compiler。TldLocationsCache@18600d6")
GreetingService.java
package com.sample.client;
import com.google.gwt.user.client.rpc.RemoteService;
import com.google.gwt.user.client.rpc.RemoteServiceRelativePath;
/**
* The client side stub for the RPC service.
*/
@RemoteServiceRelativePath("greet")
public interface GreetingService extends RemoteService {
String greetServer(String name) throws IllegalArgumentException;
}
/WEB-INF/WEB.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee">
<!-- Servlets -->
<servlet>
<servlet-name>greetServlet</servlet-name>
<servlet-class>com.sample.server.GreetingServiceImpl</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>greetServlet</servlet-name>
<url-pattern>/sampleapp/greet</url-pattern>
</servlet-mapping>
<!-- Default page to serve -->
<welcome-file-list>
<welcome-file>SampleApp.html</welcome-file>
</welcome-file-list>
</web-app>
greetServlet
com.sample.server.GreetingServiceImpl
greetServlet
/示例应用程序/问候
SampleApp.html
在通过eclipse生成项目之后,我没有做任何更改
我仍在试图弄清楚这一点,这可能与Java 1.6和1.7 SDK以及tomcat与它们交互的方式有关尝试使用GWT编译示例应用程序,并将您项目的war目录的内容复制到tomcat/webapps/sample。然后在url上检查你的应用程序
http://localhost:8080/example
路径有问题
@RemoteServiceRelativePath("sampleapp/greet");
or
@RemoteServiceRelativePath("../greet");
再次参考@chris,请提供tomcat的错误日志。我发布了访问日志。希望这将是相关信息。你能发布你的web.xml和为rpc提供的servlet路径吗?完成了,Baadshash。我对你说的有点困惑。我获取了war文件的内容,并在webapps中创建了一个名为“sample”的新文件夹。我在那里复制了war的内容。你说的url不起作用(除非你想要8080:/s