【问题标题】:XmlRPC: The method addHandler is undefined for the type WebServerXmlRPC:未为类型 WebServer 定义方法 addHandler
【发布时间】:2013-12-16 11:21:38
【问题描述】:

我正在尝试使用 apache.xmlrpc 从here 实现示例 XML-RPC 代码。

import org.apache.xmlrpc.*;
import java.net.URL;
import java.util.Hashtable;
import java.util.Vector;

public class JavaServer {    
    public Integer sum(int x, int y) {
        return new Integer(x + y);
    }

    public static void main(String[] args) {
        try {   System.out.println("Attempting to start XML-RPC Server...");
            WebServer server = new WebServer(80);
            server.addHandler("sample", new JavaServer());
            server.start();
            System.out.println("Started successfully.");
            System.out.println("Accepting requests. (Halt program to stop.)");
        } catch (Exception exception) {
            System.err.println("JavaServer: " + exception);
        }
    }
}

但在这一行:server.addHandler("sample", new JavaServer()); 以上代码我收到以下错误。

该类型的方法 addHandler(String, Rpc Server) 未定义 网络服务器。

我从 apache apache-xmlrpc-3.1.3-bin.zip 的最新 XML-RPC 导入了一个 jar。

有人知道我为什么会收到这个错误吗?

【问题讨论】:

    标签: java apache xml-rpc


    【解决方案1】:

    似乎该方法在版本 3 中不存在。 问题是今天网络上存在的许多关于 XML-RPC 的示例都使用旧版本。因此,我从this link 得到了xmlrpc-helma-1.0.jar

    Apache XML-RPC 在其website 中写道

    “如果你有使用 Helma 库的代码,你应该做的就是 将代码中的导入语句从 helma.xmlrpc.* 更改为 org.apache.xmlrpc.*. "

    但它不起作用。版本 3 中没有 helma.xmlrpc.WebServer.addHandler 方法。 我不知道在较新版本中替换了什么新方法。但使用较旧的 API,该错误现在已解决。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-11-03
      • 2017-04-23
      • 1970-01-01
      • 1970-01-01
      • 2022-12-23
      • 2021-08-02
      • 2017-12-21
      相关资源
      最近更新 更多