【问题标题】:Want to Consume Web Service but "cannot be resolved to a type"想要使用 Web 服务但“无法解析为类型”
【发布时间】:2013-04-15 14:59:34
【问题描述】:

我有以下导入

import java.awt.List;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;

import org.apache.commons.httpclient.*;
import org.apache.commons.httpclient.methods.*;
import org.apache.commons.httpclient.params.HttpMethodParams;

import com.sshtools.j2ssh.net.HttpResponse;


在我的 main 方法中,下面的代码

HttpClient client = new HttpClient();
HttpPost post = new HttpPost("http://vogellac2dm.appspot.com/register");
try {
    List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1);
    nameValuePairs.add(new BasicNameValuePair("registrationid", "123456789"));
    post.setEntity(new UrlEncodedFormEntity(nameValuePairs));

    HttpResponse response = client.execute(post);
    BufferedReader rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
    String line = "";
    while ((line = rd.readLine()) != null) {
        System.out.println(line);
    }

} catch (IOException e) {
    e.printStackTrace();
}


为了让 httpclient 导入来定位包,我必须从 java2s.com link here 下载 JAR 文件

但我仍然有多个错误

HttpPost 无法解析为类型

BasicNameValuePair 无法解析为类型

UrlEncodedFormEntity 无法解析为类型



这是一个 Ruby on Rails 网络服务,我需要能够:

  1. 创建在 WSDL 中定义的特定类型的对象。

  2. 调用服务,并将类型接收回我新定义的 对象。

不幸的是,我在 Java 开发方面不是很老练。所以请记住这一点:)

非常感谢示例和指导。

谢谢,

【问题讨论】:

  • 你肯定需要这个 jar,但是你把它放在哪里来编译/运行你的应用程序?它应该在类路径上。这是java编译错误,与RoR无关。
  • 项目 -> 属性 -> 库 -> 添加外部 JAR...
  • 是的,你缺少罐子。 HttpPost 不在那个罐子里,其他两个也不在。秒,我正在找它。
  • 对不起,我在这里的无知.. 但我到底应该怎么做? =-\
  • 除了已经指出的错误之外,您还导入了错误的HttpResponse 类,并使用java.awt.List 而不是java.util.List。如果您是 Java 初学者,那么您真的应该从一个更简单的项目开始。

标签: java web-services apache http


【解决方案1】:

当您缺少导入语句并且编译器在类路径中找不到类型时,会发生错误X cannot be resolved to a type。这意味着您的类路径中缺少许多类文件。

HttpPostBasicNameValuePairUrlEncodedFormEntity 类都是 Apache HttpComponents 的一部分。

下载二进制文件/源代码。在 zip 中,您会找到需要添加到类路径中的 jar。使用 Eclipse,您可以通过将 jars(作为外部 jars)添加到您的项目构建路径来做到这一点。

【讨论】:

    猜你喜欢
    • 2022-11-22
    • 1970-01-01
    • 2017-03-28
    • 2023-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-16
    • 2022-01-10
    相关资源
    最近更新 更多