Tuesday, March 15, 2016

KumuluzEE

KumuluzEE merupakan framework pertama yang menggunakan standar Java API untuk membangun aplikasi berarsitektur microservice yang dibangun oleh sebuah software house bernama Kumuluz dari Slovenia.

KumuluzEE termasuk salah satu dari pemenang Duke’s Choice Award 2015 di San Fransisco.

Keuntungan dari framework ini untuk Java developer ialah tidak perlu mempelajari hal-hal / cara kerja baru seperti pada umumnya framework Java misalnya Spring, karena KumuluzEE menggunakan standar Java EE specification.

Komponen

Saat ini KumuluzEE sudah memiliki support untuk :
  • Servlet 3.1
  • JSP 2.3
  • EL 3.0
  • CDI 1.2
  • JPA 2.1
  • JAX-RS 2.0
  • Bean Validation 1.1
  • JSON-P 1.0
Dan pada release berikutnya akan mensupport :
  • Websocket 1.1
  • JSF 2.2
  • JAX-WS 2.2

Quick Start

Nah, sekarang kita coba membuat microservice menggunakan KumuluzEE :
  1. Gunakan Maven untuk men-generate project
  2. mvn -B archetype:generate \
    -DarchetypeGroupId=org.apache.maven.archetypes \
    -DgroupId=org.nostra.kumuluz \
    -DartifactId=blog
  3. Edit file pom.xml, tambahkan properties untuk KumuluzEE
  4. <properties>
        <kumuluzee.version>1.0.0</kumuluzee.version>
    </properties>
  5. Tambahkan modul core dari KumuluzEE
  6. <dependency>
        <groupId>com.kumuluz.ee</groupId>
        <artifactId>kumuluzee-core</artifactId>
        <version>${kumuluzee.version}</version>
    </dependency>
    Modul core ini belum cukup untuk menjalankan aplikasi. Untuk itu perlu ditambahkan server seperti Jetty/Tomcat untuk menerima request dan diteruskan ke komponen Java EE untuk diproses.
  7. Tambahkan modul servlet jetty dari KumuluzEE
  8. <dependency>
        <groupId>com.kumuluz.ee</groupId>
        <artifactId>kumuluzee-servlet-jetty</artifactId>
        <version>${kumuluzee.version}</version>
    </dependency>
    Dua modul tersebut merupakan syarat minimum untuk dapat menjalankan microservice dengan standar Servlet dan file statis.
  9. Tambahkan directory webapp pada directory resources, dan buat file index.html
  10. <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8"/>
        <title>Kumuluz</title>
    </head>
    <body>
    <p>Hello from KumuluzEE</p>
    </body>
    </html>
  11. Tambahkan juga plugin maven untuk meng-copy library jar (dependency) ke directory target
  12. <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-dependency-plugin</artifactId>
        <version>2.10</version>
        <executions>
            <execution>
                <id>copy-dependencies</id>
                <phase>package</phase>
                <goals>
                    <goal>copy-dependencies</goal>
                </goals>
            </execution>
        </executions>
    </plugin>
  13. Kemudian build menggunakan perintah Maven
  14. mvn package
  15. Jalankan aplikasi dengan perintah :
  16. java -cp target/classes:target/dependency/* com.kumuluz.ee.EeApplication
Buka browser dengan url : http://localhost:8080, maka akan tampil file index.html.

Sekian, kita lanjut di blog KumuluzEE berikutnya :)

No comments:

Post a Comment