誰期望發生這種情況:Oracle正在開發公共云產品,并且即將開始正式啟動的跡象已經出現。 在正式宣布之后將近一年,我被邀請加入所謂的“搶先體驗”計劃,以試駕新服務并提供反饋。 多虧負責產品的經理Reza Shafii ,我才可以稍微洗碗碟。 即使不允許我向您顯示UI的一些屏幕截圖,也有很多事情要討論。 今天,我愿意為您提供NetBeans開發人員體驗的首次試用。
準備工作

和往常一樣,有一些準備工作。 獲取最新的NetBeans 7.2 RC1 Java EE版本的副本。 這是具有Oracle云支持的可公開獲得的IDE。 它從7.2 Final中刪除是因為…是的…OPC不是公開的,沒有人希望在最終版本中看到不可用的功能。 因此,這里的第一個秘密似乎已被揭開。 當OPC啟動時,我們將看到一個7.3版本的彈出窗口(此測試規范中的結論)。 另一個有用的準備工作是下載并安裝相應的WebLogic 10.3.6以進行本地開發。 這是迄今為止的第二個驚喜。 Oracle公共云Java服務將是Java EE 5服務。 至少對于GA。 絕對保持這個版本沒有任何意義。 因此,可以肯定地說,支持Java EE 6的WebLogic 12c將在下一個時間發布。 搞定。 啟動NetBeans。
創建您的Java EE應用程序
?
您現在要做的就是使用NetBeans創建一個新的Java EE Web應用程序。 給它起一個名字(我稱它為MyCloud),并在“添加…”服務器對話框中添加一個新的本地WebLogic 10服務器。 不要忘記選擇Java EE 5作為EE版本。 讓我們在Framework選項卡上添加JSF 2.0和Primefaces 3.2。 點擊“完成”。 如果NetBeans抱怨缺少服務器庫,請讓其進行部署。 現在就這樣。 右鍵單擊您的應用程序并運行它。 這將啟動您的本地WebLogic域,并將您的瀏覽器指向http:// localhost:7001 / MyCloud /或您的應用程序所調用的任何內容。 如您所見,Primefaces組件也正在工作。 不壯觀。
添加云…
?

接下來,您必須添加一些云。 切換到服務選項卡,右鍵單擊云節點,然后選擇“添加云…”。 選擇“ Oracle Cloud”,然后單擊“下一步”。 您將必須在此處填寫一些信息。
- 身份域。 您的Oracle Cloud帳戶的個人或組標識。
- Java服務名稱。 Java服務的名稱。
- 數據庫服務名稱。 數據庫服務的名稱。
- 管理員。 您作為Oracle Cloud管理員的身份。
- 密碼。 您的Oracle Cloud管理員密碼。
- SDK。 Oracle Cloud SDK本地副本的路徑。 單擊配置瀏覽此文件。
幸運的是,您不必關心這里的細節。 成功創建帳戶后,您即可獲取相關信息。 如果您最終接觸到云,那么很容易弄清楚這意味著什么。 關于身份域的更多信息。設置Oracle Cloud服務時,必須為每個服務提供服務名稱和身份域。 身份域是用戶和角色的集合,這些用戶和角色已被授予使用域中某些服務或管理某些服務的特定特權。 因此,它基本上是一種安全的存儲。

如果正確填寫了所有內容,請單擊“完成”。 NetBeans根據OPC驗證了您提供的信息,現在您已經擁有了Oracle Cloud。 此外,您會發現一個新服務器“ Oracle Cloud Remote”,它實際上是您必須在項目運行配置中指定的服務器掛鉤。 去那里。 將其從本地“ Oracle WebLogic Server”切換到“ Oracle Cloud Remote”,然后單擊“確定”。 現在您已經準備好進行云部署。
在云端運行…
右鍵單擊并“運行”您的項目。 您會看到很多事情發生。 首先,NetBeans進行常規構建,然后開始分發。 首先,這是將捆綁包(MyCload.war)上傳到云中。 將對其進行病毒掃描,并且需要通過白名單掃描(稍后會對此進行詳細介紹)。 如果兩者均成功,則部署將發生,并且您的應用程序將在系統的默認瀏覽器中打開:

這是與Oracle公共云Java服務的典型開發往返。 開發和測試本地部署并在云中運行。
其他一些NetBeans好東西
?
但是,云服務中的“ Oracle Cloud”條目有什么用處? 現在,這非常簡單。 您可以使用它來訪問您的部署作業和相應的日志文件。

每個部署都有一個唯一的編號,您會看到部署狀態。 連同日志摘錄一起,您可以進一步進行跟蹤。 讓我們再嘗試一些。 添加一個名為“ Test”的servlet,并嘗試使用一些惡意代碼;)
System.exit(0);
此處出現錯誤的第一個指示是破折號提示。

完成后會彈出一個黃色的感嘆號。 讓我們驗證項目。 右鍵單擊它,然后選擇“驗證”。 運行白名單工具,該工具會輸出有關白名單驗證的詳細錯誤報告。
ERROR - Path:D:\MyCloud\dist\MyCloud.war (1 Error)
ERROR - Class:net.eisele.opc.servlet.Test (1 Error)
ERROR - 1:Method exit not allowed from java.lang.System.(Line No:41 Method Name:java.lang.System->exit(int))
ERROR - D:\MyCloud\dist\MyCloud.war Failed with 1 error(s)
令人失望,但是存在一些限制(又名白名單),使您無法使用已知的所有Java功能。 就目前而言,我將不進一步對此進行深入研究。 所有搶先體驗成員都必須說出有關限制的信息,Oracle認真聽了。 許多事情在這里發生,現在就最終的白名單發表任何言論還為時過早。 許多第三方庫(例如,primefaces)都經過測試并可以平穩運行。 這些根本不受白名單的影響。
底線
?
今天就這些。 我不會向您展示OPC的其他內容。 而且我知道您無法自行測試驅動該服務。 您需要安裝Javacloud SDK,該軟件今天尚未公開。 但是會的。 并且將有機會免費試用云。 試用。 我期待著向您展示更多可能的東西。 一旦可用。 從今天起,您可以注冊訪問權限,并在服務準備好注冊時得到通知!
參考: JCG合作伙伴 Markus Eisele在“ 使用Java的企業軟件開發”博客上的“ 早期訪問中的NetBeans Oracle公共云Java服務” 。
翻譯自: https://www.javacodegeeks.com/2012/08/oracle-public-cloud-java-service-with_6.html