Ошибка подключения к S / 4 Hana через Cloud SDK - PullRequest
0 голосов
/ 14 мая 2018

Я следую учебнику OData по https://blogs.sap.com/2017/05/21/step-4-with-sap-s4hana-cloud-sdk-calling-an-odata-service/comment-page-1/ и получаю сообщение об ошибке, когда пытаюсь найти деловых партнеров, используя DefaultBusinessPartnerService.

Соответствующий фрагмент кода:

        DefaultBusinessPartnerService businessPartnerService = new DefaultBusinessPartnerService();
        System.err.println("criated default business partner");

        List<BusinessPartner> partners = businessPartnerService
                .getAllBusinessPartner()
                .select(BusinessPartner.BUSINESS_PARTNER,
                        BusinessPartner.LAST_NAME,
                        BusinessPartner.FIRST_NAME)
                //.filter(BusinessPartner.BUSINESS_PARTNER_CATEGORY.eq(CATEGORY_VENDOR))
                .orderBy(BusinessPartner.LAST_NAME, Order.ASC)
                .execute(new ErpEndpoint(new ErpConfigContext()));

        response.setContentType("application/json");
        response.getWriter().write(new Gson().toJson(partners));

Моя ErpQueryEndpoint конфигурация выглядит следующим образом:

#Mon May 14 15:27:09 BRT 2018
URL=https\://host\:port
Name=ErpQueryEndpoint
TrustAll=TRUE
Type=HTTP
Password=Password
Authentication=BasicAuthentication
User=Username

Где host, port, Username и Password заменены правильными значениями.

Когда я запрашиваю http://localhost:8080/s4integration-application/businesspartners, я получаю следующую ошибку:

The endpoint responded with HTTP error code 403.
No service found for namespace , name API_BUSINESS_PARTNER, version 0001
Full error message: 
{
  "error": {
    "code": "/IWFND/MED/170",
    "message": {
      "lang": "en",
      "value": "No service found for namespace , name API_BUSINESS_PARTNER, version 0001"
    },
    "innererror": {
      "application": {
        "component_id": "",
        "service_namespace": "/SAP/",
        "service_id": "API_BUSINESS_PARTNER",
        "service_version": "0001"
      },
      "transactionid": "C83CB3D2A1420000E005AF97B0836AD5",
      "timestamp": "20180514182746.3576100",
      "Error_Resolution": {
        "SAP_Transaction": "Run transaction /IWFND/ERROR_LOG on SAP Gateway hub system (System Alias ) and search for entries with the timestamp above for more details",
        "SAP_Note": "See SAP Note 1797736 for error analysis (https://service.sap.com/sap/support/notes/1797736)"
      },
      "errordetails": []
    }
  }
}

Кажется, что конечная точка не настроена в системе SAP (это система S / 4 Hana). Я не уверен, нужно ли мне добавлять что-то еще к URL помимо хоста и порта или есть какая-то другая конфигурация, которая должна быть сделана в системе SAP.

1 Ответ

0 голосов
/ 22 мая 2018

Инструкции по активации API OData из бэкэнда SAP S / 4HANA можно найти здесь: help.sap.com/viewer/cdc25c83b63e482586b31b8acd49cf2f/1610%20003/… Просто игнорируйте понятие приложения Fiori.

...