Не удается подключиться к gateway.watsonplatform.net:443

Я пытаюсь запустить образец Java-приложения, как описано на

https://www.ibm.com/smarterplanet/us/en/ibmwatson/developercloud/doc/getting_started/gs-full-java.shtml

я смог правильно настроить свой сервер свободы и смог создать приложение на сервере bluemix с моей учетной записью. Когда я пытаюсь запустить пример кода в Eclipse, я вижу интерфейс watson q&a app. Но когда я нажимаю кнопку Ask, я получаю

Error: Connect to gateway.watsonplatform.net:443 [gateway.watsonplatform.net/23.246.237.54] failed: Connection timed out: connect

я не вносил никаких изменений в код, кроме ввода значений для URL-адреса моей службы, имени пользователя и пароля.

Есть ли другое системное свойство, которое мне нужно установить?

Редактировать: manifest.yaml

applications:
 - services:
  - question_and_answer
  name: myDumbApp
  path: webApp.war
  memory: 512M

Кроме того, когда я запускаю команду

cf marketplace -s question_and_answer

я вижу

service plan                    description   free or paid
question_and_answer_free_plan   Beta          free

это верно?

Редактировать: Опробовать API вопросов и ответов

import java.util.HashMap;
import java.util.Map;

import com.ibm.watson.developer_cloud.personality_insights.v2.PersonalityInsights;
import com.ibm.watson.developer_cloud.personality_insights.v2.model.Profile;
import com.ibm.watson.developer_cloud.question_and_answer.*;
import com.ibm.watson.developer_cloud.question_and_answer.v1.QuestionAndAnswer;
import com.ibm.watson.developer_cloud.question_and_answer.v1.model.QuestionAndAnswerDataset;

public class PersonalityInsightsExample {
public static void main(String[] args) {

    QuestionAndAnswer qas = new QuestionAndAnswer();
    qas.setUsernameAndPassword("uName", "Pass");
    QuestionAndAnswerDataset qd = new QuestionAndAnswerDataset("TRAVEL");

    /*
    PersonalityInsights service = new PersonalityInsights();
    service.setUsernameAndPassword("uName", "Pass");

    String myProfile = "Call me Ishmael. Some years ago-never mind how long "
            + "precisely-having little or no money in my purse, and nothing "
            + "particular to interest me on shore, I thought I would sail about "
            + "a little and see the watery part of the world. It is a way "
            + "I have of driving off the spleen and regulating the circulation. "
            + "Whenever I find myself growing grim about the mouth; whenever it "
            + "is a damp, drizzly November in my soul; whenever I find myself "
            + "involuntarily pausing before coffin warehouses, and bringing up "
            + "the rear of every funeral I meet; and especially whenever my "
            + "hypos get such an upper hand of me, that it requires a strong "
            + "moral principle to prevent me from deliberately stepping into "
            + "the street, and methodically knocking people's hats off-then, "
            + "I account it high time to get to sea as soon as I can.";


    Profile profile = service.getProfile(myProfile);
      */

    qas.setDataset(qd);

    System.out.println( qas.ask("How to get cold?"));
   }
}

но я все еще получаю

SEVERE: IOException
org.apache.http.conn.HttpHostConnectException: Connection to https://gateway.watsonplatform.net refused

обратите внимание, что когда я бегу

 System.out.println(qas.getEndPoint());

я получил

https://gateway.watsonplatform.net/question-and-answer-beta/api

это согласуется с импортом в моем коде?

2 ответа

Решение

Убедитесь, что у вас есть учетные данные службы и вы не используете свой Bluemix username а также password,

Поскольку вы хотите использовать Personality-Insights, я бы посоветовал вам сначала начать с основного класса и попытаться убедиться, что у вас есть действительные учетные данные

Управление личностными взглядами на местном уровне

  1. Загрузите Watson Developer Cloud Java SDK v1.1.1.
  2. В eclipse создайте проект Java (без веба, обычная Java).
  3. Создайте файл и назовите его PersonalityInsightsExample.java,
  4. Скопируйте код ниже.

    import java.util.HashMap; импорт java.util.Map; import com.ibm.watson.developer_cloud.personality_insights.v2.model.Profile;

    открытый класс PersonalityInsightsExample {

    public static void main(String[] args) {
        PersonalityInsights service = new PersonalityInsights();
        service.setUsernameAndPassword("<username>", "<password>");
    
        String myProfile = "Call me Ishmael. Some years ago-never mind how long "
                + "precisely-having little or no money in my purse, and nothing "
                + "particular to interest me on shore, I thought I would sail about "
                + "a little and see the watery part of the world. It is a way "
                + "I have of driving off the spleen and regulating the circulation. "
                + "Whenever I find myself growing grim about the mouth; whenever it "
                + "is a damp, drizzly November in my soul; whenever I find myself "
                + "involuntarily pausing before coffin warehouses, and bringing up "
                + "the rear of every funeral I meet; and especially whenever my "
                + "hypos get such an upper hand of me, that it requires a strong "
                + "moral principle to prevent me from deliberately stepping into "
                + "the street, and methodically knocking people's hats off-then, "
                + "I account it high time to get to sea as soon as I can.";
    
        Profile profile = service.getProfile(myProfile);
        System.out.println(profile);
    }
    

    }

  5. замещать username а также password,

  6. Запустите его как приложение Java.


Если вы все еще получаете сообщение об ошибке, следуя приведенным выше инструкциям, попробуйте открыть браузер и перейти по адресу: https://gateway.watsonplatform.net/personality-insights/api/v2/profile, вы должны получить запрос на ввод пароля.

Я пытался использовать ту же ошибку, используя предложенный выше PersonalityInsightsExample, но он показался мне слишком сложным, поскольку я обнаружил, что проблема заключается в том, что моей сети необходим прокси-сервер для подключения к внешним конечным точкам. Итак, просто добавив мои данные прокси, я решил проблему:

System.setProperty("http.proxyHost",HOST);
System.setProperty("http.proxyPort",PORT);
System.setProperty("https.proxyHost",HOST);
System.setProperty("https.proxyPort",PORT);
Другие вопросы по тегам