Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/359.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
线程“main”java.lang中出现异常。错误:未解决的编译问题:构造函数HttpHeaders()不可见_Java_Maven_Http Headers_Httpentity - Fatal编程技术网

线程“main”java.lang中出现异常。错误:未解决的编译问题:构造函数HttpHeaders()不可见

线程“main”java.lang中出现异常。错误:未解决的编译问题:构造函数HttpHeaders()不可见,java,maven,http-headers,httpentity,Java,Maven,Http Headers,Httpentity,我正在尝试从服务器获取数据,我需要为此工作在上显示服务器证书,因此我已包括服务器证书,如下所示,但我得到以下错误: 主线程java.lang中出现异常。错误:未解决的编译问题: The constructor HttpHeaders() is not visible The constructor HttpEntity<String>() is not visible 我的pom文件: <properties> <spring.version>4.1.

我正在尝试从服务器获取数据,我需要为此工作在上显示服务器证书,因此我已包括服务器证书,如下所示,但我得到以下错误:

主线程java.lang中出现异常。错误:未解决的编译问题:

The constructor HttpHeaders() is not visible

The constructor HttpEntity<String>() is not visible
我的pom文件:

<properties>
  <spring.version>4.1.0.RELEASE</spring.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>

    <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>${spring.version}</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>${spring.version}</version>
        </dependency>


<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.3.4</version>
</dependency>
<dependency>
    <groupId>com.google.guava</groupId>
    <artifactId>guava</artifactId>
    <version>18.0</version>
</dependency>

  </dependencies>
我的java文件:

public static void main( String[] args ) throws KeyStoreException, NoSuchAlgorithmException, CertificateException, FileNotFoundException, IOException, KeyManagementException, UnrecoverableKeyException
    {

        KeyStore keyStore = KeyStore.getInstance(KeyStore.getDefaultType());
        keyStore.load(new FileInputStream("/Users/workspace/a/cert.cer"),
                "password".toCharArray());
        SSLConnectionSocketFactory socketFactory = new SSLConnectionSocketFactory(
                new SSLContextBuilder()
                        .loadTrustMaterial(null, new TrustSelfSignedStrategy())
                        .loadKeyMaterial(keyStore, "changeit".toCharArray()).build());
        HttpClient httpClient = HttpClients.custom().setSSLSocketFactory(socketFactory).build();
        ClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory(
                httpClient);
        RestTemplate restTemplate = new RestTemplate(requestFactory);
        HttpHeaders headers = new HttpHeaders();
        headers.add("Content-Type", "application/xml");
        HttpEntity<String> entity = new HttpEntity<String>();
       ResponseEntity<String> response = restTemplate.exchange(
                "https://www.example.com",
                HttpMethod.GET, entity, String.class);
        System.out.println( "Hello World!" );
    }

org.apache.http中没有HttpHeaders和HttpEntity的公共构造函数。因此无法创建这些对象。 HttpEntity也是一个接口


可能您导入了错误的类。

是的。您有编译错误,需要在运行代码之前修复它们。我会检查您的导入。您可能没有导入Spring的org.springframework.http.HttpHeaders,可能是Apache的org.Apache.http.HttpHeaders,HttpEntity的情况类似。如果导入它们,则会在导入错误中发生冲突