尝试使用S/4HANA Cloud SDK使用来自S/4HANA Cloud的数据源创建自定义OData v2服务 [英] Trying to create custom OData v2 service with data source from S/4HANA Cloud using S/4HANA Cloud SDK

查看:116
本文介绍了尝试使用S/4HANA Cloud SDK使用来自S/4HANA Cloud的数据源创建自定义OData v2服务的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用S/4HANA Cloud SDK在Java中使用S/4HANA Cloud数据源创建自定义OData v2服务.我试图遵循SAP Press的第8.3节使用SAP S/HANA Cloud SDK扩展SAP S/HANA:并排扩展",但我尝试在页面上的依赖项中将OData版本2替换为版本4. 285.当我执行mvn clean install时,它错误地告诉我在com.sap.cloud.servicesdk.prov中找不到odatav2. (当我改用odatav4时,我得到了一个全新安装.)我希望OData v2是版本4的原因似乎并未得到SAPUI5应用程序的充分支持.

I am trying to create a custom OData v2 service in java with an S/4HANA Cloud data source using S/4HANA Cloud SDK. I tried to follow section 8.3 of the SAP Press book "Extending SAP S/HANA: Side-by-Side Extensions with the SAP S/HANA Cloud SDK", except I attempted to substitute OData version 2 for version 4 in the dependency on page 285. When I execute mvn clean install, it errors out telling me it can't find odatav2 in com.sap.cloud.servicesdk.prov. (I get a clean install when I use odatav4 instead.) The reason I want OData v2 is version 4 doesn't appear to be well-supported for SAPUI5 apps.

推荐答案

OData V2设置的设置看起来有些不同.因此,请删除您为使用OData V4设置所做的所有修改.然后添加以下内容:

The setup for OData V2 provisioning looks a bit different. So remove all modifications you did to use OData V4 provisioning. Then add the following:

  1. 在您的application/pom.xml文件中添加以下依赖项(而不是odata-v4依赖项):

  1. Add the following dependencies (instead of the odata-v4 one) to your application/pom.xml file:

<dependency>
    <groupId>com.sap.cloud.servicesdk.prov</groupId>
    <artifactId>odata2.web</artifactId>
    <exclusions>
        <exclusion>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>com.sap.cloud.servicesdk.prov</groupId>
    <artifactId>odata2.xsa</artifactId>
</dependency>
<dependency>
    <groupId>com.sap.cloud.servicesdk.prov</groupId>
    <artifactId>odatav2-hybrid</artifactId>
    <exclusions>
        <exclusion>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>com.sap.cloud.servicesdk.prov</groupId>
    <artifactId>odatav2-prov</artifactId>
</dependency>

  • 将以下条目添加到您的application/src/main/webapp/WEB-INF/web.xml文件中,将YOUR.PACKAGE替换为一个包以搜索您的OData端点:

  • Add the following entries to your application/src/main/webapp/WEB-INF/web.xml file, replacing YOUR.PACKAGE with a package to search for your OData endpoints:

    <servlet>
        <servlet-name>ODataServlet</servlet-name>
        <servlet-class>org.apache.olingo.odata2.core.servlet.ODataServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
        <init-param>
            <param-name>org.apache.olingo.odata2.service.factory</param-name>
            <param-value>
                com.sap.cloud.sdk.service.prov.v2.rt.core.CloudSDKODataServiceFactory
            </param-value>
        </init-param>
        <init-param>
            <param-name>org.apache.olingo.odata2.path.split</param-name>
            <param-value>1</param-value>
        </init-param>
    </servlet>
    <servlet-mapping>
        <servlet-name>ODataServlet</servlet-name>
        <url-pattern>/odata/v2/*</url-pattern>
    </servlet-mapping>
    <context-param>
        <param-name>package</param-name>
        <param-value>YOUR.PACKAGE</param-value>
    </context-param>
    <listener>
        <listener-class>
            com.sap.cloud.sdk.service.prov.v2.rt.core.web.ServletListener
        </listener-class>
    </listener>
    

  • 将OData V2 edmx文件添加到application/src/main/resources/edmx目录.
  • Add an OData V2 edmx file to the application/src/main/resources/edmx directory.
  • 这些步骤应该可以启动并运行OData V2 Provisioning服务.

    These steps should get your OData V2 Provisioning service up and running.

    这篇关于尝试使用S/4HANA Cloud SDK使用来自S/4HANA Cloud的数据源创建自定义OData v2服务的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

    查看全文
    登录 关闭
    扫码关注1秒登录
    发送“验证码”获取 | 15天全站免登陆