【问题标题】:Tenant Not availalbe exception despite the use of the workaround尽管使用了解决方法,但租户不可用异常
【发布时间】:2021-04-23 09:16:35
【问题描述】:

我已经实现了 GetAllBusinessPartnerCommand 并且还自定义了 BusinessPartnerServlet 中的代码。当我尝试使用自定义代码调用应用程序时,总是收到此错误。

代码 GetAllBusinessPartnersCommand

package com.sap.cloud.s4hana.examples.commands;

import java.util.Collections;
import java.util.List;

import org.slf4j.Logger;

import com.sap.cloud.s4hana.examples.BusinessPartnerServlet;
import com.sap.cloud.sdk.cloudplatform.logging.CloudLoggerFactory;
import com.sap.cloud.sdk.frameworks.hystrix.HystrixUtil;
import com.sap.cloud.sdk.s4hana.connectivity.ErpCommand;
import com.sap.cloud.sdk.s4hana.datamodel.odata.helper.Order;
import com.sap.cloud.sdk.s4hana.datamodel.odata.namespaces.businesspartner.BusinessPartner;
import com.sap.cloud.sdk.s4hana.datamodel.odata.services.DefaultBusinessPartnerService;

public class GetAllBusinessPartnersCommand extends ErpCommand<List<BusinessPartner>>{
    
    private static final Logger logger = CloudLoggerFactory.getLogger(BusinessPartnerServlet.class);
    public static final String CATEGORY_PERSON ="1";

   

public GetAllBusinessPartnersCommand() {
    
     super(HystrixUtil.getDefaultErpCommandSetter(
             GetAllBusinessPartnersCommand.class,
             HystrixUtil.getDefaultErpCommandProperties().withExecutionTimeoutInMilliseconds(10000)));
    
}

    @Override
    protected List<BusinessPartner> run() throws Exception {
        
        // TODO Auto-generated method stub
        return new DefaultBusinessPartnerService().getAllBusinessPartner()
                .select(BusinessPartner.BUSINESS_PARTNER,
                        BusinessPartner.LAST_NAME,
                        BusinessPartner.FIRST_NAME,
                        BusinessPartner.IS_MALE,
                        BusinessPartner.IS_FEMALE,
                        BusinessPartner.CREATION_DATE)
                .filter(BusinessPartner.BUSINESS_PARTNER_CATEGORY.eq(CATEGORY_PERSON))
                .orderBy(BusinessPartner.LAST_NAME, Order.ASC)
                .execute();
    }
    
    @Override
    protected List<BusinessPartner> getFallback() {
    logger.warn("Fallback called because of exception:",
    getExecutionException());
    return Collections.emptyList();
        }
}

在下面您可以看到问题集 ALLOW_MOCKED_AUTH_HEADER=true 的命令和提供的解决方法。在测试之前,我检查了所有变量是否设置正确并再次设置 ALLOW_MOCKED_AUTH_HEADER=true 因为我之前设置得太早了。

在这些步骤之后,我像往常一样构建我的项目,并在我调用服务时从上面得到错误。我还阅读了这篇文章,其中有人遇到了同样的问题并使用了提到的解决方法。但这对我不起作用,我不知道为什么。 TenantNotAvailableException, when trying to call business partner from s4 CF SDK

error when call page

Starting mock-server set variables and workaround plus check

【问题讨论】:

    标签: sap-cloud-sdk


    【解决方案1】:

    很遗憾 SAP Cloud SDK 2.x 不再受支持。请使用我们的migration guide 移至最新版本3.43.0 您也可以在此主题上找到我的blog post。如果您遇到任何问题,请创建另一个 StackOverflow 问题(带有标签 sap-cloud-sdk)或对博文发表评论。更多详情,请联系我们的documentation

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-17
      • 1970-01-01
      • 2014-02-24
      • 2016-07-14
      相关资源
      最近更新 更多