Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
GWT/Java—在Eclipse中执行“作为web应用程序运行”时是否可能进行RPC调用(使用GWT插件)?_Java_Eclipse_Gwt - Fatal编程技术网

GWT/Java—在Eclipse中执行“作为web应用程序运行”时是否可能进行RPC调用(使用GWT插件)?

GWT/Java—在Eclipse中执行“作为web应用程序运行”时是否可能进行RPC调用(使用GWT插件)?,java,eclipse,gwt,Java,Eclipse,Gwt,我是GWT的新手,似乎取得了很大的进步,但现在打RPC电话让我完全不知所措。我遵循了一些教程,据我所知,我做的事情是正确的。但是,我的异步回调方法总是触发我为失败事件设置的方法。我想知道在Eclipse中使用GWT插件运行web应用程序时,RPC调用是否应该工作。另外,要确认的是,我的应用程序运行正常,但有一个例外,因此没有生成错误 这是一种很大的张贴在这里,但我包括我使用的RPC调用的不同部分,以防它可能会帮助我解决这个问题 这是在控制器方法中调用的: RPCService rpc =

我是GWT的新手,似乎取得了很大的进步,但现在打RPC电话让我完全不知所措。我遵循了一些教程,据我所知,我做的事情是正确的。但是,我的异步回调方法总是触发我为失败事件设置的方法。我想知道在Eclipse中使用GWT插件运行web应用程序时,RPC调用是否应该工作。另外,要确认的是,我的应用程序运行正常,但有一个例外,因此没有生成错误

这是一种很大的张贴在这里,但我包括我使用的RPC调用的不同部分,以防它可能会帮助我解决这个问题

这是在控制器方法中调用的:

    RPCService rpc = GWT.create(RPCService.class);
        //new RPCService();

    rpc.testRPC("Hello", callback);
异步方法为:

AsyncCallback callback = new AsyncCallback()
{
public void onFailure(Throwable caught)
{
    display.setTestRPC("failed");
}

public void onSuccess(Object result)
{
    display.setTestRPC("success");
}
};
然后,实际的RPC类/接口:

RPCInterfaceAsync

RPC服务

服务器端:RPCImpl:

web.xml的相关部分:


您忘记将RemoteServiceRelativePath批注添加到您的RPCInterface

谢谢,我发现了一个比我以前使用的更好的教程,所以我想我已经把我的头脑放在它上面了,我还有一个问题,但它与此不同,所以我将在一个新的帖子中发布它
package org.ediscovery.gwt.client.rpc;

import com.google.gwt.user.client.rpc.RemoteService;
public interface RPCInterface extends RemoteService
{
    public String testRPC(String message);
}
package org.ediscovery.gwt.client.rpc;

import com.google.gwt.user.client.rpc.AsyncCallback;

public interface RPCInterfaceAsync
{
    public void testRPC(String message, AsyncCallback callback);
}
package org.ediscovery.gwt.server.service;

import java.text.DateFormat;
import java.util.Date;

import org.ediscovery.gwt.client.rpc.RPCInterface;

import com.google.gwt.user.server.rpc.RemoteServiceServlet;

public class RPCImpl extends RemoteServiceServlet implements RPCInterface
{
    private static final long serialVersionUID = 1L;

    public String testRPC(String message)
    {
        Date now = new Date();
        String dtm = DateFormat.getTimeInstance(DateFormat.MEDIUM).format(now);
        return "Got the message '" + message +"' at " + dtm;
    }
}
  <servlet>
    <servlet-name>RPCImpl</servlet-name>
    <servlet-class>org.ediscovery.gwt.server.service.RPCImpl</servlet-class>
  </servlet>

  <servlet-mapping>
    <servlet-name>RPCImpl</servlet-name>
    <url-pattern>/HelloGoodByeMVP.html/rpc</url-pattern>
  </servlet-mapping>