EBS中Java并發程序筆記(1)

????? 在Oracle EBS中的Java并發程序(Java Concurrent Program)是系統功能中的一個亮點,它的出現使得用戶可以在ERP系統中運行自己定義的Java程序。本文為學習筆記,所以不會介紹太多背景知識。

???? 使用Java并發程序的好處:

???? 當遇到如下2種情況的時候,用PLSQL程序包來完成將無比麻煩:

???? 1、將服務器上的文件通過FTP安全有效的導入到apps環境下

???? 2、使用JDBC連接一個非Oracle的數據庫,并獲取里面的數據,通過驗證和轉換導入到apps下的客制化表。對于上述假定,需要DBA建立透明網關,對于如此簡單的需求將會做復雜的設置。

????? 綜上所述,可以在EBS中使用Java并發程序來解決這些事情。

????? 如下為一個簡單的例題并做簡單說明:

import oracle.apps.fnd.cp.request.*;
import oracle.apps.fnd.util.*;

//如果是測試Java并發程序,則新建一個class實現JavaConcurrentProgram 這個interface

public class MainTest implements JavaConcurrentProgram {

??? //實現interface中的runProgram方法
??? public void runProgram(CpContext ctx) {

??????? //取得并發程序傳入的參數列表
??????? ParameterList lPara = ctx.getParameterList();
??????? ReqCompletion lrc = ctx.getReqCompletion();
??????? try
??????? {

??????????? //把參數名字和參數的值分別在log和output中打印出來
??????????? while(lPara.hasMoreElements())
??????????? {
??????????????? NameValueType nvt = lPara.nextParameter();
??????????????? ctx.getOutFile().writeln(nvt.getName() + ":" + nvt.getValue());
??????????????? ctx.getLogFile().write(nvt.getName() + ":" + nvt.getValue(), LogFile.STATEMENT);
??????????? }

???????????? //完成打印的步驟后,設置程序的結束狀態為Normal,如果這個步驟不做,雖然程序沒有錯誤,但是執行結果還是會報錯的
??????????? lrc.setCompletion(ReqCompletion.NORMAL, "Normal Ending");
??????? }
??????? catch(Exception e)
??????? {

??????????? //如果程序出現異常,設置程序的執行結果,本來是應該設置ERROR的
??????????? ctx.getLogFile().write(e.toString(), LogFile.STATEMENT);
??????????? lrc.setCompletion(ReqCompletion.WARNING, "Exception Occurs!!!");
??????? }
??? }
}?

把程序掛到EBS中后,執行結果如下圖所示:

log中顯示如下(因為log中程序沒有換行,所以寫到了一行里面):

image

output中因為換行的原因,格式與log中的有一點不同,如下所示(左半部分為輸入的參數的說明,右半部分則為程式打印的output):

image

轉載于:https://www.cnblogs.com/echochen/archive/2011/11/17/2253148.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/275165.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/275165.shtml
英文地址,請注明出處:http://en.pswp.cn/news/275165.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

figma設計_5位來自雜亂無章的設計師的Figma技巧

figma設計When starting a design project, a fast pace and multiple design iterations can easily lead to a cluttered mess. Taking the time in the beginning to build good organizational habits will save you time later. You’ll thank your past self when you do…

hello,你知道獲取元素有哪幾種方式嗎?

收下我的小心心!(害羞臉) 根據id屬性的值獲取元素,返回來的是一個元素對象 document.getElementById("id屬性的值") 根據標簽名獲取元素,返回來的是一個偽數組,里面保存了多個的DOM對象 documen…

設計和實現一個 Chrome 插件提升登錄效率

大家好,我是若川。最近組織了源碼共讀活動,感興趣的可以點此加我微信ruochuan12 進群參與,每周大家一起學習200行左右的源碼,共同進步。已進行4個月了,很多小伙伴表示收獲頗豐。前言在我們的工作過程中,每當…

[待總結]redmine

先列出來,有空再總結轉載于:https://www.cnblogs.com/gracexiao/archive/2011/11/18/2253834.html

qq空間網頁設計_網頁設計中的負空間

qq空間網頁設計重點 (Top highlight)Because screens are limited, web design is also limited. It can be said that in the small box of the screen, each pixel is a piece of real estate.由于屏幕有限,因此網頁設計也受到限制。 可以說,在屏幕的小…

前端組件化-抽象公共組件類

優化上次的組件化小demo 上次的組件化demo只是為了簡單的實現前端組件化的思想&#xff0c;這次我們稍微優化一下抽離公共類 下面代碼 html <div id"wrapper"></div> 復制代碼js /* DOM字符串轉DOM節點 */ const createStringToDom str > {const ele…

時隔一年半,我,一個卑微的前端菜雞,又來寫面經了

大家好&#xff0c;我是若川。最近組織了源碼共讀活動&#xff0c;感興趣的可以點此加我微信ruochuan12 進群參與&#xff0c;每周大家一起學習200行左右的源碼&#xff0c;共同進步。已進行4個月了&#xff0c;很多小伙伴表示收獲頗豐。作者&#xff1a;刮涂層_贏大獎原文地址…

javascript模版引擎-tmpl的bug修復與性能優化

http://www.planeart.cn/?p1594 http://ejohn.org/blog/javascript-micro-templating http://bbs.phpchina.com/thread-224712-1-1.html [ Noevil: 下面直接貼出改進好的MicroTemp&#xff0c;但是還是建議看一下原文&#xff0c;里面有詳細的改進細節&#xff0c;和改進前后的…

2019.5.8_此書真乃寶書也_從定位參數到僅限關鍵字參數

《摘自流暢的Python》 此書真乃寶書也,雖說還是有點兒沒懂 從定位參數到僅限關鍵字參數 Python最好的特性之一是提供了極為靈活的參數處理機制&#xff0c;而且Python3進一步提供了僅限關鍵字參數(keyword-only argument)。與之密切相關的是&#xff0c;調用函數時使用*和**“展…

用戶體驗與可用性測試_可用性作為用戶體驗的原則

用戶體驗與可用性測試Every UX Designer has his views and best practices. We all have a guide book created through time and experience. I want to share mine with you.每個UX設計器都有他的觀點和最佳實踐。 我們都有一本通過時間和經驗編寫的指南。 我想和你分享我的…

Jenkins插件之Deploy

deploy插件&#xff1a; Deploy Plugindeploy插件支持將War/Jar部署到遠程的應用服務器上&#xff0c;例如Tomcat,JBoss,Glassfish。正在尋找或開發.NET web 應用的自動發布插件。如何回滾或重新部署先前的build&#xff1a;0&#xff09; 需要被deploy的job的結果要存檔&#…

受美國法律保護美國妞_為什么美國法律有效地要求所有軟件設計都要響應

受美國法律保護美國妞Smashing Magazine defines “responsive design” as an approach where design responds to the user’s behavior and environment based on screen size, platform, and orientation. In responsive design, a breakpoint is the “point” at which a…

源碼群友問:你這么多項目是怎么進行技術選型的?

大家好&#xff0c;我是若川。最近組織了源碼共讀活動&#xff0c;感興趣的可以點此加我微信ruochuan12 進群參與&#xff0c;每周大家一起學習200行左右的源碼&#xff0c;共同進步。已進行4個月了&#xff0c;很多小伙伴表示收獲頗豐。源碼群有群友提問我是怎么找到那么多npm…

iOS開發之打包上傳報錯: ERROR ITMS-90087/ERROR ITMS-90125

制作好的framework在打包上傳至AppStore如果出現以下錯誤&#xff0c;則說明這個SDK里面包含了x86_64, i386 架構&#xff0c;當然這個AppStore是不允許的&#xff0c;所以會在上傳的時候報錯&#xff0c;解決辦法就是要這個SDK剔除掉x86_64, i386這兩個架構 解決辦法&#xff…

[轉]cocos2d游戲開發,常用工具集合

cocos2d游戲開發&#xff0c;常用工具集合 原文地址&#xff1a;http://www.cocoachina.com/bbs/read.php?tid-68951.html 位圖字體工具Bitmap Font ToolsBMFont (Windows)FonteditorGlyph DesignerHieroLabelAtlasCreator粒子編輯工具Particle Editing ToolsParticleCreat…

拓展視野學習前端,我推薦這些

眾所周知&#xff0c;關注公眾號可以了解學習掌握技術方向&#xff0c;學習優質好文&#xff0c;落實到自己項目中。還可以結交圈內好友&#xff0c;讓自己融入到積極上進的技術氛圍&#xff0c;促進自己的技術提升。話不多說&#xff0c;推薦這些優質前端公眾號前端下午茶拓寬…

ios 動畫設計_動畫和講故事在設計中的力量

ios 動畫設計As human beings, we’ve always been fond of storytelling. Just think of campfire stories, Santa Claus, or that thrilling book you just finished. Here’s how you can use the power of storytelling to make your designs better.作為人類&#xff0c;我…

poj 2696 A Mysterious Function

A Mysterious FunctionTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 3517 Accepted: 2398Description For any integers p and q with q > 0, define p mod q to be the integer r with 0 < r < q ?1 such that p?r is divisible by q. For example,…

面試官:能不能手寫一個 Promise?

大家好&#xff0c;我是若川。最近組織了源碼共讀活動&#xff0c;感興趣的可以點此加我微信ruochuan12 進群參與&#xff0c;每周大家一起學習200行左右的源碼&#xff0c;共同進步。已進行4個月了&#xff0c;很多小伙伴表示收獲頗豐。以下問題你是不是在哪里聽過&#xff1f…

設計圖像素和開發像素_游戲開發的像素藝術設計

設計圖像素和開發像素Pixel art is a large part of the legacy of game development. Every Pokemon game up until their X/Y series was rendered entirely with pixel art, Ragnarok Online (2000) was one of the first commercial works to feature 3D rendering along s…