如何在NEO MTA中定义在部署之前需要数据库绑定

2020-09-04 00:48发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨社区

我们正在NEO上使用MTA部署,因为我们的解决方案已经部署了Java应用程序和一些UI5应用程序。 在将Java应用程序与SAP HANA进行数据源绑定时,我们发现Java应用程序已启动,然后将创建数据源绑定。

根据设计,我们的应用程序希望在启动应用程序之前已存在数据源绑定。 我们是否可以使用任何选项来执行绑定,该绑定是在部署之前创建的?

最佳
亚历克斯

我们的mta.yaml看起来像这样:

#mta.yaml

 ID:com.p36.awesome.solution
 版本:1.9.0
 _schema-version:'3.1'

 参数:
    hcp-deployer-version:1.2.0
    标题:很棒的解决方案

 模块:
   #UI应用
   -名称:AnyUi5App
     类型:html5
     路径:/AnyUi5App
     参数:
       显示名称:AnyUi5App
       版本:1.9.0-$ {timestamp}
     构建参数:
       制造商:咕unt声
       构建结果:dist
       超时:40秒
      
   #我们的Java应用
   -名称:javaApp
     类型:java
     路径:/javaApp
     参数:
       名称:javaApp
       运行时版本:3
       Java版本:JRE 8
       版本:1.9.0-$ {timestamp}
     构建参数:
       制造商:Maven
       构建结果:target/javaApp.war
       build-artifact-name:javaApp
       maven-opts:
         命令:[清洁,安装]
     要求:
       -名称:数据库绑定
         参数:
           绑定名称:PROVIDER

 #HANA数据库
 资源:
    -名称:数据库绑定
      类型:com.sap.hcp.persistence
      参数:
        ID:
        用户身份:
        密码:
        帐户:
 

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨社区

我们正在NEO上使用MTA部署,因为我们的解决方案已经部署了Java应用程序和一些UI5应用程序。 在将Java应用程序与SAP HANA进行数据源绑定时,我们发现Java应用程序已启动,然后将创建数据源绑定。

根据设计,我们的应用程序希望在启动应用程序之前已存在数据源绑定。 我们是否可以使用任何选项来执行绑定,该绑定是在部署之前创建的?

最佳
亚历克斯

我们的mta.yaml看起来像这样:

#mta.yaml

 ID:com.p36.awesome.solution
 版本:1.9.0
 _schema-version:'3.1'

 参数:
    hcp-deployer-version:1.2.0
    标题:很棒的解决方案

 模块:
   #UI应用
   -名称:AnyUi5App
     类型:html5
     路径:/AnyUi5App
     参数:
       显示名称:AnyUi5App
       版本:1.9.0-$ {timestamp}
     构建参数:
       制造商:咕unt声
       构建结果:dist
       超时:40秒
      
   #我们的Java应用
   -名称:javaApp
     类型:java
     路径:/javaApp
     参数:
       名称:javaApp
       运行时版本:3
       Java版本:JRE 8
       版本:1.9.0-$ {timestamp}
     构建参数:
       制造商:Maven
       构建结果:target/javaApp.war
       build-artifact-name:javaApp
       maven-opts:
         命令:[清洁,安装]
     要求:
       -名称:数据库绑定
         参数:
           绑定名称:PROVIDER

 #HANA数据库
 资源:
    -名称:数据库绑定
      类型:com.sap.hcp.persistence
      参数:
        ID:
        用户身份:
        密码:
        帐户:
 
付费偷看设置
发送
3条回答
SAP浪
1楼-- · 2020-09-04 01:12

嗨亚历山大,

根据 文档,对于数据库绑定,HCP持久性类型将需要一个ID参数。 如果要使用DEFAULT绑定,则必须创建绑定通过Java应用程序(web.xml)定义jdbc/DefaultDB的资源引用。

我的猜测是您没有在web.xml上定义它。 由于我看不到您的mta.yaml上定义的ID,因此SCP无法自动绑定它。

如果确实是在web.xml上定义它,那么我会认为这是平台错误 与MTA部署程序有关。 在这种情况下,我会在SAP支持渠道上引发支持事件。

最诚挚的问候,
Ivan

灬番茄
2楼-- · 2020-09-04 01:00

Hi Ivan,

在资源/数据库绑定下列出的参数(标识,用户,密码,帐户)在mta部署期间作为用户输入参数被请求。 我输入数据库实例名称作为ID的值。 绑定的名称是在mta中定义为Java App的一部分,而未在web.xml中定义,这是可以的,因为在手动部署应用程序时可以正常工作。

我观察到,稍后部署应用程序时,数据源绑定的部署和创建正在工作。 对我来说,这似乎是第一次部署应用程序时的错误。

jovirus
3楼-- · 2020-09-04 01:00

我观察到这与将mtar/解决方案首次部署到帐户中有关。 我将解决方案部署到了一个新帐户,并且再次发生了与数据源绑定相同的问题。

当我删除Java应用程序及其设置的帐户的数据源绑定时,首先创建绑定,然后启动该应用程序。 我将打开一个SAP支持票证。

一周热门 更多>