将Java应用部署到 云平台 Neo 编程环境的两种方式

举报
Jerry Wang 发表于 2021/11/07 14:40:50 2021/11/07
【摘要】 方法1 - 使用EclipseEclipse里新建一个服务器:服务器类型选择SAP Cloud Platform:点Finish,成功创建了一个Server:Eclipse里选择要部署的项目,右键->Run as Server, 选择上一步创建的Server即完成部署。 方法2 - 使用SAP云平台Cockpit选择本地打包好的war文件,点击Deploy按钮:部署成功: WebClien...

方法1 - 使用Eclipse

Eclipse里新建一个服务器:

服务器类型选择SAP Cloud Platform:


点Finish,成功创建了一个Server:

Eclipse里选择要部署的项目,右键->Run as Server, 选择上一步创建的Server即完成部署。

方法2 - 使用SAP云平台Cockpit


选择本地打包好的war文件,点击Deploy按钮:

部署成功:

WebClient UI

我们在WebClient UI的开发工具里点了Test按钮,

会在浏览器以测试模式打开选中的view。这背后发生了什么事?注意浏览器地址栏的bspwd_cmp_test,这是什么东西?Jerry倾向于把它当作是CRM WebClient UI component在测试模式下的启动器。

当我们以测试模式打开一个CRM WebClient UI component时,这个component的页面实际上是显示在一个iframe内,该iframe在上述提到的bspwd_cmp_test里实现:

点击Test按钮,在下图的iframe里会把真正被测试的WebClient UI component的页面嵌入进去。这个iframe加载时,会执行onload事件绑定的JavaScript处理函数:startBSPApplication。

这个函数为document动态生成HTML源代码:

启动器bspwd_cmp_test的页面session_single_frame.htm中立即执行的Javascript:

运行时展开如下:

Tomcat

最初我们部署Web应用到tomcat上的做法,一般是首先用Maven将Web项目打包成war文件,再手动或者写脚本将war文件拷贝到tomcat对应目录下。
现在我们可以在项目pom.xml文件里使用下面这个插件:

<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<path>/jerry</path>
<port>9090</port>
<uriEncoding>UTF-8</uriEncoding>
</configuration>
</plugin>

然后在命令行里执行命令:mvn tomcat7:run

这个tomcat7-maven-plugin插件可以作为启动器,帮我们启动Tomcat并且加载war文件,

之后我们可以直接使用http://localhost:9090/jerry访问Web应用了:

在事务码 MM02里为ID为16的material维护附件:

如何使用ABAP代码获得如下附件的名称和文件内容?


REPORT zgos_api.

DATA ls_appl_object     TYPE gos_s_obj.

DATA lo_gos_api         TYPE REF TO cl_gos_api.

DATA lt_attachment_list TYPE gos_t_atta.

DATA lt_role_filter     TYPE gos_t_rol.

DATA ls_attachment   TYPE gos_s_atta.

DATA ls_attachm_cont TYPE gos_s_attcont.

DATA ls_atta_key     TYPE gos_s_attkey.

DATA: lv_id  TYPE matnr VALUE '16',

      lt_att TYPE TABLE OF sibflporb.

CALL FUNCTION 'CONVERSION_EXIT_MATN1_INPUT'

  EXPORTING

    input  = lv_id

  IMPORTING

    output = lv_id.

ls_appl_object-typeid = 'BUS1001006'.

ls_appl_object-instid = lv_id.

ls_appl_object-catid  = 'BO'.

START-OF-SELECTION.

  TRY.

      lo_gos_api = cl_gos_api=>create_instance( ls_appl_object ).

      APPEND cl_gos_api=>c_attachment TO lt_role_filter.

      lt_attachment_list = lo_gos_api->get_atta_list( lt_role_filter ).

    CATCH cx_gos_api INTO DATA(error).

      WRITE:/ error->get_text( ).

      RETURN.

  ENDTRY.

  DATA: ls_key TYPE gos_s_attkey.

  LOOP AT lt_attachment_list ASSIGNING FIELD-SYMBOL(<id>).

    ls_key-atta_id = <id>-atta_id.

    ls_key-atta_cat = <id>-atta_cat.

    DATA(ls) = lo_gos_api->get_al_item( ls_key ).

  ENDLOOP.

执行结果:

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。