2017-08-16 34 views
0

我正在使用SAP云平台中的多租户应用程序。获取租户信息时,我得到一个错误:使用多租户SAP云平台应用程序时出错

java.lang.ClassCastException:不能投 类com.sap.cloud.account.impl.TenantContextImpl接口 com.sap.cloud.account.TenantContext (找到匹配接口 com.sap.cloud.account.TenantContext加载由com.sap.cloud.account导致问题

代码:

public class TenantContextManager 
{ 

public TenantContextManager() { 
    // TODO Auto-generated constructor stub 
} 

public String getCurrentAccountId() throws ServletException { 
    String currentAccountId;   
    try { 
     InitialContext ctx = new InitialContext(); 
     TenantContext tenantctx = (TenantContext) ctx.lookup("java:comp/env/TenantContext");     

     currentAccountId = tenantctx.getTenant().getAccount().getId();     

    } catch (Exception e) { 
     throw new RuntimeException(e); 
    }    
    return currentAccountId;   
} 
} 

我ç在“ODataJPAServiceFactory”类实现中分配此调用的一个实例。

需要注意的一点是我创建了一个简单的JSP应用程序,并且相同的代码工作正常。

回答

0

解决了这个问题。我将运行时从Java Web更改为Java EE 6 Web Profile。看起来API在Java Web中不可用。