API поиска Bing с Java

попробуйте использовать bing api с java (не android)

хавай этот код:

import java.util.Iterator;

import net.billylieurance.azuresearch.AbstractAzureSearchQuery.AZURESEARCH_FORMAT;
import net.billylieurance.azuresearch.AzureSearchResultSet;
import net.billylieurance.azuresearch.AzureSearchWebQuery;
import net.billylieurance.azuresearch.AzureSearchWebResult;


public class mainTest {

    public static void main(String[] args){

        AzureSearchWebQuery aq = new AzureSearchWebQuery();

        String ACCOUNT_KEY = "WgQGPMPJH0FKBc/aWdiAeb05PiChO5XToKfDSmZ/Xuo";
        aq.setAppid(ACCOUNT_KEY);

        aq.setFormat(AZURESEARCH_FORMAT.XML);

        // searchParam is the field containing the keyword to be searched.
        aq.setQuery("games");

        aq.doQuery();

        AzureSearchResultSet<AzureSearchWebResult> azureSearchResultSet = aq
        .getQueryResult();

        for (Iterator<AzureSearchWebResult> iterator = azureSearchResultSet
        .iterator(); iterator.hasNext();) {
        AzureSearchWebResult result = (AzureSearchWebResult) iterator
        .next();

        // Populate the data from result object in to your custom objects.

        System.out.println(result.getTitle());
        System.out.println(result.getUrl());
        System.out.println(result.getDisplayUrl());
        System.out.println(result.getDescription());


        }




    }

также мои баночки:

apache-httpcomponents-httpcore
azure-bing-search-java-0.12.0
httpclient-4.2.3
org-apache-commons-logging

но получил ошибку:

Exception in thread "main" java.lang.NoSuchFieldError: DEF_CONTENT_CHARSET
  at org.apache.http.impl.client.DefaultHttpClient.setDefaultHttpParams(DefaultHttpClient.java:175)
  at org.apache.http.impl.client.DefaultHttpClient.createHttpParams(DefaultHttpClient.java:158)
  at org.apache.http.impl.client.AbstractHttpClient.getParams(AbstractHttpClient.java:448)
  at org.apache.http.impl.client.AbstractHttpClient.createClientConnectionManager(AbstractHttpClient.java:309)
  at org.apache.http.impl.client.AbstractHttpClient.getConnectionManager(AbstractHttpClient.java:466)
  at org.apache.http.impl.client.AbstractHttpClient.createHttpContext(AbstractHttpClient.java:286)
  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:851)
  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:805)
  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:784)
  at net.billylieurance.azuresearch.AbstractAzureSearchQuery.doQuery(AbstractAzureSearchQuery.java:338)
  at mainTest.main(mainTest.java:38)

Я читал где-то, что, возможно, банки несовместимы друг с другом. но не знаю, как это проверить. или, может быть, что-то еще.

любой совет будет большим.


person igor    schedule 10.09.2014    source источник
comment
Возможно, вы не хотите публиковать свой API-ключ публично.   -  person Joachim Rohde    schedule 10.09.2014
comment
это только для тестирования, может быть, кто-то захочет проверить мой код.   -  person igor    schedule 10.09.2014
comment
Какую версию httpcore вы используете? Он может быть несовместим с используемой вами версией httpclient (см. stackoverflow.com/questions/18246979/)   -  person Joachim Rohde    schedule 10.09.2014
comment
обновил все, вроде работает, но в строке aq.doQuery(); это стек (бесконечный цикл). любые идеи, почему?   -  person igor    schedule 10.09.2014
comment
Я понятия не имею. Но для новой проблемы вы можете задать новый вопрос (поскольку половина вашего текущего сообщения больше не имеет ничего общего с вашей текущей проблемой).   -  person Joachim Rohde    schedule 10.09.2014
comment
хорошо, спасибо за помощь   -  person igor    schedule 10.09.2014


Ответы (1)


В вашем пути к классам есть два или более файла httpcore.

person Denis Xavier    schedule 01.07.2019
comment
Привет, пожалуйста, ответь немного шире, чтобы это могло помочь людям, столкнувшимся с той же проблемой. - person Ruben Helsloot; 01.07.2019