Pada awal Januari 2010, SpringSource mengumumkan bahwa dm Server akan memasuki proyek Eclipse, membuka bab pertama tahun baru modularisasi Java. OSGi terus berkembang selama sebulan terakhir, menandakan bahwa tahun 2010 akan menjadi tahun modularitas Java.
Berita dari InfoQ: Kemajuan terbaru dalam modularisasi Java pada bulan Januari 2010. (Judul asli: "Bundle.update: Tahun Modularitas" http://www.infoq.com/cn/news/2010/01/year-of-modularity )
Rekomendasi Editor 51CTO: Memulai OSGi
dm Server bermigrasi ke Eclipse
Berita terbesar tidak diragukan lagi adalah proposal proyek Eclipse Virgo (lihat laporan terkait 51CTO di sini). Versi Server dm saat ini adalah 2.0.0, yang berarti versi 2.1 berikutnya akan dikembangkan dan dirilis di bawah Eclipse.
Salah satu perbedaan signifikan antara proyek yang ada dan proposal baru adalah protokolnya. Artinya dm Server akan berbasis EPL di masa depan, bukan EPL saat ini, merupakan perjanjian yang lebih kondusif untuk praktik bisnis. Tujuannya adalah untuk meningkatkan kontribusi komunitas sekaligus mendorong pendekatan pengembangan perangkat lunak ini.
OSGi dan dm Server perusahaan saat ini telah membangkitkan minat banyak orang, dan inovasi di sekitarnya tidak pernah berhenti. Minat ini sangat tinggi di kalangan pengguna awal dan proyek yang memerlukan kepatuhan terhadap fitur modul dinamis Platform Layanan OSGi. Namun bagi tim pengembangan arus utama (yang hanya ingin membangun aplikasi perusahaan secepat mungkin dengan lebih sedikit kesulitan), biaya penerapan OSGi perusahaan saat ini mungkin melebihi manfaat jangka pendeknya. Masalah ini perlu dipertimbangkan sebelum OSGi perusahaan menjadi standar de facto untuk metode pengembangan aplikasi perusahaan umum.
Buku baru yang memperkenalkan OSGi dan Equinox diterbitkan
Sebuah buku baru yang memperkenalkan OSGi dan Equinox diterbitkan minggu ini. Ini juga merupakan buku pertama dalam seri Eclipse RunTime. Buku ini memperkenalkan cara membangun aplikasi Java modular melalui OSGi. Meskipun contoh dalam buku ini didasarkan pada Equinox, buku ini juga bermanfaat bagi pengembang yang ingin mengembangkannya di platform OSGi lainnya.
Buku ini juga mengimplementasikan proyek sampel Toast dari awal hingga akhir, dengan tujuan membuka jalan bagi buku-buku berikutnya dalam seri ini melalui kode sampel tertentu (sehingga pengembang yang telah membaca buku ini dapat dengan cepat memulai buku lainnya). Buku ini dibagi menjadi empat bagian: bagian pertama adalah ikhtisar OSGi, diikuti dengan panduan untuk membuat contoh Toast, bagian ketiga mengeksplorasi detail OSGi secara mendalam, dan terakhir bibliografi.
Pengembangan layanan jarak jauh ECF selesai
Baru-baru ini, proyek Eclipse Communications Framework telah mengimplementasikan spesifikasi Layanan Jarak Jauh OSGi, yang dapat menghubungkan layanan OSGi di seluruh VM melalui berbagai protokol heterogen, termasuk REST, WS-*, JMS, XMPP, Skype, dan implementasi ECF Generic.
Tidak hanya itu, ada berbagai mekanisme deteksi yang berbeda, seperti ZeroConf, SLP, dan deteksi statis berbasis file.
Implementasi Apache Felix dari Layanan Jarak Jauh OSGi juga telah dirilis (Apache CXF), yang juga merupakan implementasi referensi OSGi. Namun implementasi ini berfokus pada akses melalui lapisan transport WS-*, sedangkan ECF tidak bergantung pada lapisan transport. Terlepas dari implementasinya, API yang digunakan oleh pengguna akhir dan pengembang adalah sama. Hal ini memungkinkan pengguna untuk mengganti implementasi saat runtime.
Pekerjaan Kelompok Pakar Perusahaan hampir selesai
Baru-baru ini, Peter Kriens mengumumkan bahwa OSGi Enterprise Expert Group akan segera selesai, dan Enterprise Expert Group draft 4 juga dirilis belum lama ini, yang menyediakan sejumlah besar fitur Java EE. Kami mempunyai alasan untuk memperkirakan bahwa versi final akan dirilis pada bulan Maret tahun ini, yaitu saat OSGi DevCon dan EclipseCon diadakan.
EEG akan menyediakan mekanisme kueri baru untuk pencarian gaya JNDI melalui OSGi, menggunakan JMX untuk mengelola runtime OSGi, akses database melalui JTA, JPA dan DataSources, dan juga menyediakan pengelolaan Layanan Jarak Jauh dan Arsitektur Komponen Layanan. Selain itu, bundel penerapan baru: WAB akan dirilis, sehingga bundel aplikasi web dapat diinstal ke dalam wadah seperti WARs. InfoQ akan memberikan liputan mendalam tentang hasil EEG saat dirilis.
WebSphere merilis versi Alpha
IBM WebSphere telah dikembangkan berdasarkan OSGi selama beberapa waktu, dan baru-baru ini merilis aplikasi OSGi versi Alpha. Aplikasi ini didasarkan pada Apache Aries dan menyertakan wadah Cetak Biru OSGi (mirip dengan Eclipse Gemini yang diusulkan oleh SpringSource). Semua proyek ini diharapkan dapat menyelesaikan beberapa masalah yang dihadapi oleh JNDI dan JTA, yang juga menjadi fokus Enterprise Expert Group.
Kontainer ini memperluas batas runtime OSGi untuk mengakomodasi banyak aplikasi. Di masa depan, aplikasi akan dipecah melalui Kerangka Bersarang OSGi (mirip dengan bagaimana server aplikasi web membagi WAR). Namun tidak seperti server aplikasi Web (WAR sepenuhnya terpisah dan tidak dapat berbagi kode), WAB dapat mengintegrasikan runtime OSGi, dan kemudian Anda dapat berbagi kode dan layanan semudah menggunakan bundel dan layanan pribadi.
Tycho membangun OSGi menggunakan Maven
Baru-baru ini, Sonatype merilis Tycho 0.6.0, menggunakan versi baru Maven 3. Tycho adalah sekumpulan pembuat Maven yang dapat menyimpulkan dependensi berdasarkan OSGi Manifest.MF alih-alih mengasumsikan dependensi ada di Maven POM. Hal ini memungkinkan Anda membuat bundel OSGi baik POM-first (saat Manifest dibuat secara otomatis) atau Manifest-first.
Meskipun sebagian besar pengembang OSGi yang menggunakan Maven (seperti pengembang di bawah Apache Felix) lebih terbiasa dengan metode pengembangan POM-first, metode pengembangan Manifest-first merupakan pelengkap dan dapat lebih maju melalui Eclipse PDE (Plug-in Development). Lingkungan). Kembangkan bundel OSGi dengan mudah.
Di antara banyak proyek Eclipse, EGit dan proyek inkubasi Tigerstripe dibangun menggunakan Maven, bukan Ant.
Proyek Maven beralih ke Maven 3, yang telah mengalami refactoring ekstensif dan menggunakan Google Guice. Selain itu, keberhasilan repositori Maven (dikelola oleh Sonatype) juga membuktikan bahwa pengembangan Java dengan banyak dependensi tidaklah sulit. Semakin banyak orang yang menggunakan repositori bundel OSGi (seperti repositori OBR dan SpringSource), dan mereka dapat didistribusikan ke berbagai penyedia. Sebuah studi eksplorasi saat ini sedang berlangsung mengenai topik penyediaan satu set repositori OSGi (digunakan oleh Tycho dengan bantuan Nexus). Repositori eksperimental terletak di bundles.sonatype.org dan osgi.sonatype.org. Tujuan masa depannya adalah menyediakan akses ke berbagai format (OBR, P2, dll.) sehingga penggunaan bundel OSGi semudah Maven JAR.
Cekatan dan POSH
Jika Anda baru saja mendapatkan bundel OSGi, maka menggunakan parser bundel OSGi akan menjadi pilihan yang lebih baik. Baru-baru ini, Paremus merilis Nimble, sebuah parser untuk memperoleh dan mengunduh bundel OSGi.
Paremus mengikat POSH (Paremus OSGi Shell) ke parser Nimble. Dengan cara ini, Anda dapat menggunakan serangkaian perintah yang sama untuk menginisialisasi dan mengelola kerangka OSGi umum (ini akan menyederhanakan pengujian Felix, Equinox, dan Knopflerfish), dan dengan bantuan Nimble, Anda dapat dengan cepat memulai runtime OSGi, seperti Dave Kata Savage menceritakan. Anda dapat menginstal dan menjalankan aplikasi web OSGi berbasis Spring melalui dua baris perintah berikut:
mewah -kc "repos -l springdm;add org.springframework.osgi.samples.simplewebapp@active " buka http://localhost:8080/simple-web-app/ Pembaca yang tertarik dapat mempelajari lebih lanjut tentang Nimble di DZone Informasi lebih lanjut.
Grup Pengguna OSGi UK dan OSGi DevCon London
Grup Pengguna OSGi UK berkembang dan memiliki lebih dari 100 anggota. Ceramah terbaru disampaikan oleh Marcel Offerman (dari Luminis) dan Graham Charters (dari IBM). Video dan materi terkait ceramah akan diposting di situsnya dalam beberapa hari.
Bagian pertama dari kuliah ini adalah pengenalan proyek inkubasi Apache ACE, yang bertujuan untuk menyederhanakan penggunaan OSGi pada banyak perangkat, termasuk jarak jauh.
Dalam proses merakit perangkat lunak dari komponen yang dapat digunakan kembali, masalah yang paling sulit dipecahkan adalah bagaimana menerapkan perangkat lunak tersebut ke perangkat yang terhubung yang jumlahnya semakin banyak. Situasi menjadi lebih buruk jika tumpukan perangkat lunak pada perangkat bersifat heterogen, sehingga memerlukan komponen yang berbeda pada waktu yang bersamaan. Kuliah ini memperkenalkan kita tentang cara mendistribusikan komponen perangkat lunak ke berbagai jenis perangkat berdasarkan Apache ACE (solusi open source berbasis OSGi), yang mencakup segala hal mulai dari ponsel hingga node di cloud.
Proyek Apache Ace didasarkan pada perangkat lunak yang disumbangkan oleh Luminis awal tahun lalu. Perangkat lunak ini telah diterapkan pada banyak proyek nyata, seperti sistem Radar di Kapal, Peralatan X-Ray lapangan, pembaruan perangkat lunak CMS dan manajemen protokol, serta penanganan bagasi bandara. sistem.
Kuliah kedua memperkenalkan Layanan Jarak Jauh OSGi (sudah termasuk dalam OSGi 4.2) dan cara berinteraksi dengan Arsitektur Komponen Layanan (SCA), menggunakan Apache Tuscany sebagai contoh.
Konsep modularisasi Java dan ringkasan situasi saat ini
Ringkasan komprehensif contoh aplikasi OSGi dan WebSphere
JSR 294 Sun dihentikan karena server aplikasi bertaruh pada OSGi
Ikhtisar keuntungan dan prinsip implementasi pemrograman modular. Modularisasi untuk menjawab pertanyaan: JSR 294, visibilitas dan kegunaan..
OASIS telah berupaya mengembangkan spesifikasi Arsitektur Komponen Layanan (SCA). SCA menyediakan model pemrograman SOA heterogen yang mencakup berbagai teknologi implementasi (EJB, BPEL, C++, COBOL, dll.), binding (layanan Web, JMS, IIOP, dll.) dan kebijakan (WS-Policy, dll.).
Kuliah tersebut memberikan pengenalan singkat tentang teknologi Layanan Jarak Jauh OSGi dan Arsitektur Komponen Layanan, dan kemudian membahas tentang cara mengintegrasikan keduanya sehingga aplikasi OSGi dapat mengakses berbagai teknologi implementasi SCA, pengikatan, dan kerangka kebijakan melalui Layanan Jarak Jauh.
Jadwal konferensi OSGi DevCon London dan JAX London yang akan datang telah diumumkan. Penawaran berakhir hari ini, tetapi anggota Grup Pengguna OSGi UK bisa mendapatkan diskon tambahan.
Meringkaskan
Jelas bahwa semakin banyak sistem server besar yang akan mengadopsi OSGi, dan pada saat yang sama OSGi juga akan mulai memasuki sistem skala kecil dan menengah. Seiring dengan terus berkembangnya alat pembangunan, pengembang dapat mengembangkan bundel OSGi dalam berbagai IDE; pada saat yang sama, repositori baru untuk berbagi bundel OSGi juga bermunculan, dan pengembangan aplikasi Java modular akan menjadi semakin mudah. Berdasarkan hal ini, Kirk Knoernschild menegaskan: 2010 akan menjadi tahun modularitas Java.