SpringSource 在中歐的研討會日

工程 | Juergen Hoeller | 2008 年 6 月 29 日 | ...

SpringSource 正在中歐組織其首次專門的研討會日:2008 年 9 月 8 日,在奧地利林茨舉辦 SpringSource 研討會日。這是一場關於 Spring 產品組合當前熱門話題的全天研討會:一個難得的機會,可以直接聽取 Spring 專案負責人關於最新和即將推出的內容!議程計劃如下

8:30 ... 開始註冊
9:30 ... 歡迎及介紹 (Juergen Hoeller 主講)
9:45 ... 主題演講:Spring 產品組合 (Rod Johnson 和 Adrian Colyer 主講)
11:00 ... 介紹 SpringSource 應用平臺 (Rob Harrop 和 Eberhard Wolff 主講)
12:00 ... 午餐休息 (現場提供自助午餐)
13:00 ... 企業開發和管理工具 (Christian Dupuis 和 Jennifer Hickey 主講)
14:15 ... 使用 Spring 開發富 Web 應用 (Keith Donald 和 Agim Emruli 主講)
15:15 ... 茶歇 (現場提供咖啡和點心)
15:45 ... Spring Framework 3.0 – 下一代 (Juergen Hoeller 和 Mike Wiesner 主講)
17:00 ... Spring.NET 1.2 (Mark Pollack 和 Erich Eichinger 主講)
18:00 ... SpringSource 展位見面交流 (包括飲品和點心)
19:00 ... 研討會結束

更新:SpringSource 執行長 Rod Johnson 將與首席技術官 Adrian Colyer 共同主持研討會主題演講!另請注意,我們正在 SpringSource 展位組織一場結束時的見面交流會。

演講者名單包括 SpringSource 執行長 Rod Johnson、首席技術官 Adrian Colyer 以及專案負責人 Rob Harrop、Christian Dupuis、Jennifer Hickey、Keith Donald、Juergen Hoeller 和 Mark Pollack。這是您與 SpringSource 專案負責人和歐洲顧問聯絡,以獲取 Spring 第一手見解的機會。演示語言為英語;整個活動將由英語和德語主持。

研討會將在美麗的 Bergschloessl Linz 舉行,方便當天往返(例如從維也納、薩爾茨堡和慕尼黑)。當然,您也可以選擇在週末留下參觀林茨市,即 2009 年歐洲文化之都提示:著名的 Linzer Klangwolke 恰好定於 9 月 6 日星期六舉行 - 正是研討會前一個週末!

林茨交通便利,可透過汽車、火車和飛機到達。主火車站靠近會場,有直達線路,例如從維也納、韋爾斯、薩爾茨堡、紐倫堡和法蘭克福。距離 林茨藍多瑙河機場 (LNZ)(提供從維也納、法蘭克福、杜塞爾多夫、慕尼黑和蘇黎世的直達航班)有 20 分鐘車程。

本次獨特機會的入場費為 150 歐元,抵達會場時支付。必須在 8 月 11 日之前提前註冊:請傳送電子郵件至 Eva Hoeller (eva.hoeller AT springsource DOT com),註明您的聯絡方式以及您公司希望預留的座位數量。座位有限,請儘早註冊!

更新:本次研討會已預訂滿,擴充套件到 145 名參會者。期待與您相見!

Juergen Hoeller
副總裁 & 傑出工程師
SpringSource

榨乾:每桶 200 美元,每 CPU 25,000 美元

工程 | Rod Johnson | 2008 年 6 月 25 日 | ...

當 Oracle 收購 BEA Systems 時,我和其他人都指出了失去唯一的獨立 Java 中介軟體供應商的重要性。隨著 Oracle 最近宣佈提高其產品(包括 WebLogic Server)的價格,這不再是一個理論問題。他們擁有石油,並且認為他們掌握著現有客戶。現在,對替代方案的需求變得更加明顯。

公平地說,Oracle 的舉動部分是受美元疲軟推動,但WebLogic 定價的上漲遠高於影響其他產品的幅度

根據 Wang 的報告,一些之前定價 3,995 美元的應用程式現在報價 4,595 美元——上漲了 13.1%——而資料庫軟體價格從每 CPU 40,000 美元上漲到 47,500 美元,上漲了 18.75%。其他價格上漲了約 15%。BEA 的 WebLogic 應用伺服器現在每 CPU 價格為 25,000 美元,比 Oracle 在 4 月份以 67 億美元收購該中介軟體軟體供應商之前的每 CPU 17,000 美元的價格上漲了 47.1%
這個決定可能表明兩點:一是 Oracle 透過相信能夠透過提價從 BEA 客戶那裡賺取更多利潤,來證明其收購 BEA(實際上超過 80 億美元)的高昂成本是合理的;二是 Oracle 預計,由於不再有獨立供應商,Java EE 應用伺服器市場的競爭不足,客戶無法抵制如此高的價格上漲。引自同一篇文章
一些行業觀察家擔心,這些收購可能導致 Oracle 在某些市場形成近乎壟斷的地位。Forrester 的報告稱,BEA WebLogic 的價格上漲可能反映了 Oracle 在應用伺服器市場的支配地位。
在傳統應用伺服器市場,Oracle 和 IBM 兩家公司都有可能持有這種觀點,這實際上形成了應用伺服器供應商的歐佩克。IBM 高階副總裁兼軟體集團總經理 Steve Mills 最近評論說,他“特別不擔心”這個領域的競爭,“尤其是來自開源產品的競爭”。

幸運的是,對於客戶來說…

在 SpringSource 應用平臺中執行 Spring Batch 作業

工程 | Dave Syer | 2008 年 5 月 30 日 | ...

在本文中,我將向您展示如何在 SpringSource 應用平臺中執行 Spring Batch 作業。我在 JavaOne 上展示了一個早期版本的小演示,然後在倫敦 Spring 使用者組再次展示,並認為分享一下可能不錯。示例程式碼在此

Bundle

首先,我們將快速瀏覽一下示例程式碼中的 bundle。現在或安裝完一些 bundle 後隨時啟動伺服器。

Bundle: hsql-server

這個 bundle 對於開發和測試非常有用。它所做的只是以伺服器模式啟動一個 HSQLDB 例項,這樣您就可以連線到它並使用 SQL 語句檢查資料庫。您只需將其拖放到 Servers 檢視中的 Platform Server 例項中即可。請先執行此操作,因為平臺會記住 bundle 的安裝順序,並按照該順序啟動它們。這個 bundle 必須首先啟動,因為其他 bundle 會嘗試連線到資料庫伺服器。

bundle 配置位於META-INF/spring/module-context.xml(這對於平臺 bundle 是常規做法)——Spring DM 從META-INF/spring中載入所有 XML 檔案。這個檔案只是使用 Spring 配置和啟動 HSQL Server 的一個例項。

有一個整合測試可以用來檢查...

開源,開放策略:SpringSource 宣言

工程 | Rod Johnson | 2008 年 5 月 28 日 | ...

作為一家開源軟體提供商,我們認為我們的策略也應該開放。我們想分享我們如何走到今天,我們將走向何方,以及這段旅程為何對 Spring、Spring 使用者和 SpringSource 都有好處。

我們的歷史

Spring 的故事始於 2001 年,當時我開始著手處理我在 2002 年隨《Expert One-on-One J2EE Design and Development》一書一起釋出的 30,000 行框架程式碼。我的目標是幫助其他人避免我自 1999 年以來完成 J2EE 專案時遇到的陷阱。

很快就清楚了,其他人喜歡這些程式碼中的想法——比如依賴注入和 Spring 資料訪問抽象——並從中受益匪淺。有讀者聯絡我,要求我釋出程式碼並希望貢獻。

我很快就看到了開源的一些重要好處。

  • 大多數使用者免費獲得所需的功能
  •     	<li> It…

實現企業整合模式 第 0 部分

工程 | Iwein Fuld | 2008 年 5 月 19 日 | ...

在我關於 Spring Integration 的演講之後,我收到了相當多關於澄清和示例的問題。為了滿足需求,我將開始一個小型系列,介紹如何使用 Spring Integration 實現不同的整合模式。本文將重點介紹基礎知識。它將向您展示如何啟動並執行,並逐步介紹一個示例。

如果您以前從未聽說過 Spring Integration,最好先閱讀 Mark Fisher 撰寫的介紹性部落格或瀏覽專案網站來熟悉它。一般來說

讓我先說明一點:...

Spring Web Flow 2 釋出;引入了新的 Faces 和 JavaScript 模組

釋出 | Keith Donald | 2008 年 5 月 15 日 | ...

尊敬的 Spring 社群成員們:

我們很高興地宣佈 Spring Web Flow 2 正式釋出。下載 | 文件

Spring Web Flow 是 Spring 產品組合中專注於為構建和執行富 Web 應用程式提供基礎架構的專案。作為一個 Spring 專案,Web Flow 基於 Spring Web MVC 框架構建,提供

  • 用於定義可重用控制器模組的領域特定語言,稱為流 (flows)
  • 用於管理對話狀態的高階控制器引擎
  • 一流的支援使用 Ajax 構建富使用者介面
  • 一流的支援將 JavaServerFaces 與 Spring 結合使用

Web Flow 2 發行版的模組及其與 Spring Framework 的關係如下所示

Web Flow 2 中包含的內容

Web Flow 2 Distribution Components

 

Spring Web MVC

Spring Web MVC 框架是 Spring Framework 發行版的一個模組,它為使用成熟的 ModelViewController 正規化開發基於 Spring 的 Web 應用程式提供了基礎。Web Flow 發行版的每個模組都構建在此基礎上。

Spring Web Flow

Web Flow 模組是一個 MVC 擴充套件,允許您使用領域特定語言定義控制器。此語言旨在建模需要向伺服器發出多個請求才能完成的使用者互動,或者可以從不同上下文呼叫。

Spring JavaScript

Spring JavaScript 是一個 JavaScript 抽象框架,使編寫 unobtrusive JavaScript 輕鬆地透過行為逐步增強網頁。該框架由一個公共 JavaScript API 和一個基於 Dojo Toolkit 的實現組成。Spring.js 旨在簡化 Dojo 在常見企業場景中的使用,同時為高階用例保留其全部功能。

Spring JavaScript 可以與任何伺服器端框架一起工作。Web Flow 2 發行版包含 Spring JavaScript 和 Spring Web MVC 之間便捷的整合,用於處理 Ajax 請求。

Spring Faces

Spring Faces 模組包含 Spring 對 JavaServerFaces 的支援。此支援允許您在熟悉的 Spring MVC 和 Web Flow Controller 環境中使用 JSF 作為檢視技術。透過這種架構方法,您可以結合 JSF UI 元件模型的優點與 Web MVC 架構的優點。Spring Faces 還包括一個基於 Spring JavaScript 構建的輕量級元件庫,用於以漸進方式宣告性地啟用 Ajax 和客戶端驗證行為。

Web Flow 2 版本的主題

除了引入新的 Spring Faces 和 Spring Javascript 模組外,Web Flow 2 版本的工作還圍繞兩個主要主題:整合和簡化。

整合

在每個模組中,Web Flow 2 發行版都添加了許多有趣的整合,使您可以豐富您的 Web 應用程式。這些整合支援

  • 使用 Spring Security 以宣告方式保護您的流
  • 使用 Tiles 進行 JSP 頁面組合和 Ajax 部分渲染
  • 在使用 JSF 時,使用 Facelets 進行頁面組合和佈局
  • 在使用 JSF 時,使用 Apache Trindad 和 JBoss RichFaces 元件庫
  • 以漸進且非侵入式的方式使用 Dojo 小部件系統;一種在客戶端 JavaScript 不可用時優雅降級的方式

簡化

Web Flow 2 中的流定義語言得到了極大的簡化,同時整體上變得更加強大。這些簡化包括

  • 與版本 1 的流定義相比,版本 2 的整體程式碼行數減少了約 50%(示例:版本 2 對比 版本 1
  • 使用表示式語言 (EL) 呼叫操作的簡潔語法,支援 Unified EL 和 OGNL
  • 宣告式模型繫結和驗證,支援約定大於配置
  • 使用流定義繼承在流和狀態級別支援重用
  • 增強的模組化,允許流及其依賴資源打包在一個自包含的 bundle 中

釋出說明

  • Web Flow 2 要求 Java 1.4 或更高版本,並可在所有主要的 Java EE 平臺(包括 Tomcat、Jetty、Websphere、WebLogic 和 JBoss)上執行。
  • Web Flow 2 要求 Spring Framework 2.5.4 或更高版本。
  • Web Flow 2 已由 SpringSource 認證為“平臺就緒”,適用於在 SpringSource dm Server 上執行支援 OSGi 的 Web 應用程式。

入門

  • 要開始使用 Maven 或 Ant+Ivy 等構建系統,請從Maven 中央倉庫獲取 Web Flow Artifact。

其他社群資源

  • 觀看 Ajaxian.com 採訪,Dion Almaer 在其中討論了釋出版本和 Spring JavaScript。
  • 線上探索 Spring Web 參考應用程式。《Spring Travel》應用程式展示了整合的 Web Flow 2 功能集,幷包含在發行版中。《SpringSource Enterprise Bundle Repository》是一個基於 Spring 2.5 和 Spring Web Flow 2.0 構建的真實世界的生產環境應用程式。
  • 如果您是現有的 Web Flow 1 使用者,請檢視遷移指南,以幫助升級到 Web Flow 2。WebFlowUpgrader 工具可自動將您的流轉換為版本 2 語法
  • 使用 Fisheye 跟蹤 Web Flow 原始碼庫的更新
  • 透過訂閱springframework.org 來關注即將釋出的 Web Flow 2 文章

為什麼我應該關心 OSGi?

工程 | Adrian Colyer | 2008 年 5 月 15 日 | ...

InfoQ 有一個討論帖總結了對 SpringSource 應用平臺釋出公告的反應。Michael Burke 在該帖中提出了一個很棒的問題,可以轉述為“拋開圍繞 OSGi 的炒作,如果我將當前打包為 EAR 的應用程式移植到 OSGi bundle,我可以期待看到什麼好處?”

我開始在 InfoQ 執行緒中回答這個問題,但我的回答太長了,不適合作為評論,所以我將在這裡回答。

這個問題提得很好。與傳統的基於 JEE EAR 的應用程式相比,基於 OSGi 的應用程式的主要區別在於模組化得到了改進。因此問題就變成了,這種改進的模組化是否帶來了任何好處,如果帶來了,又是什麼呢?《設計規則,模組化的力量》一書對此問題進行了非常透徹的論述。這是一本很好的背景書,但我覺得 Michael 可能正在尋找比這本書中更具實踐性的東西......

使用 SpringSource 應用平臺的 provisioning repository

工程 | Andy Wilkinson | 2008 年 5 月 9 日 | ...

SpringSource Application Platform 的主要優點之一是它能夠根據需要提供依賴項。這有兩方面的好處:它確保平臺的記憶體佔用儘可能小,並且允許部署應用程式而無需將所有依賴項封裝在一個龐大的部署單元中,例如 WAR 檔案。要利用這些功能,您需要了解平臺的 provisioning repository,本文旨在提供對此的解釋。

provisioning repository 在哪裡以及它是如何工作的?

預設情況下,平臺的 provisioning repository 位於安裝根目錄下的 repository 目錄:Directory structure of the provisioning repository 正如您所見,有三個主要目錄:bundlesinstalledlibrariesinstalled 用於平臺內部使用,因此我們在這裡重點關注 bundleslibraries 目錄。每個目錄包含一些子目錄,用於分隔不同型別的依賴項
  • ext 包含隨平臺提供但不屬於平臺本身的外部依賴項。
  • subsystems 包含構成平臺的所有子系統。
  • usr 最初為空,旨在包含使用者新增的依賴項,即您的應用程式依賴但不屬於平臺提供的任何內容。
平臺在其初次啟動期間會在 repository 目錄結構中搜索 bundle 和庫。稍後將在本文中討論如何配置此搜尋。在 repository 中找到 bundle 和庫後,其符號名稱、匯出的包等詳細資訊將新增到 repository 的記憶體索引中。掃描完成後,記憶體索引將被快取到磁碟。最小化平臺的啟動時間是我們在開發過程中的優先事項。此快取使平臺能夠在啟動時節省一些時間:除非它檢測到 repository 的內容已更改,否則它可以跳過掃描。

執行時 provisioning

在純 OSGi 環境中,一個 bundle 的依賴項只能由環境中已經安裝的其他 bundle 來滿足。例如,如果一個 bundle 匯入 org.apache.commons.dbcp 包,而沒有匯出該包的 bundle 已經安裝,那麼安裝並啟動該 bundle 將會失敗。這對於使用者來說可能會非常痛苦,因為他們必須手動安裝 bundle 的所有依賴項。值得慶幸的是,SpringSource Application Platform 透過按需動態安裝依賴項顯著改進了這一點。

當平臺啟動已部署的應用程式時,其...

獲取 Spring 時事通訊

透過 Spring 時事通訊保持聯絡

訂閱

脫穎而出

VMware 提供培訓和認證,加速您的發展。

瞭解更多

獲取支援

Tanzu Spring 在一項簡單的訂閱中提供對 OpenJDK™、Spring 和 Apache Tomcat® 的支援和二進位制檔案。

瞭解更多

即將舉辦的活動

檢視 Spring 社群即將舉辦的所有活動。

檢視全部