BLANTERORBITv102

    Cara Menggunakan Google Maps di Dalam Java Swing

    Kamis, 15 Juni 2017

    Pembukaan

    Karena di fanspage banyak yang request bagaimana meng-include-kan google maps ke dalam program java, kali ini saya akan berikan satu contoh sederhana untuk kasus tersebut dan mungkin bisa kita teruskan pada tutorial selanjutnya. Cara Menggunakan Google Maps Ke Dalam Java Swing yang paling mudah adalah menggunakan library untuk load file Web. Library ini adalah JxBrowser yang dapat anda download dari link berikut.

    Pembahasan

    Tidak perlu banyak mukodimah, hal yang perlu di buat adalah komponen yang akan digunakan adalah JFrame dan JPanel. Buat sebuah project sederhana dengan nama JGoogleMaps (boleh nama lain), kemudian tambah JFrame baru. Setelah JFrame ditambah selanjutnya pada GUI builder tambahkan JPanel.
    Cara Menggunakan Google Maps Ke Dalam Java Swing 1
    Gambar 1
    Setelah membuat layout aplikasi, pada komponen JPanel ubah variable Name atau nama variabel menjadi panelMaps. Setelah memiliki variabel kita cek layout yang digunakan jika Free Design silahkan ubah ke Border Layout. Cara merubah ke border layout sangat mudah cukup klik kanan pada JPanel > Pilih Set Layout > Pilih Border Layout. Lihat atau cek pada Navigator seperti contoh pada gambar dibawah ini;
    Cara Menggunakan Google Maps Ke Dalam Java Swing 2
    Gambar 2
    Kembali kebagian source (kode) , tambahkan method baru dibawah block
        public JGoogleMaps_one() {
            initComponents();
        }
    jika nama class (frame anda) JGoogleMaps_one, jika tidak bisa di cek saja pasti ada block tersebut di bagian atas. Tambahkan kode program berikut.
        private void loadMaps(){
            Browser browser = new Browser();
            String dir = System.getProperty("user.dir");
            browser.loadURL(dir+"\\src\\jgooglemaps\\maps_jsc.html");
            BrowserView view = new BrowserView(browser);
            panelMaps.add(view, BorderLayout.CENTER);
            this.setLocationRelativeTo(null);
            this.pack();
            this.setVisible(true); 
        }
    Dipastikan kode diatas akan menimbulkan error, nah cara menanganinya yaitu,
    1. Trial JxBrowser yang selama 30 hari yang sudah di download sebelumnya, silahkan di extrak karena berupa zip file. Perlu di ingat anda harus dapatkan license dari JxBrowser dengan cara evaluate, nanti license akan dikirim melalui email yang digunakan untuk mendaftar pastikan juga license yang dikirim anda download.
    2. Setelah extrak, kita kembali ke netbeans untuk import library JxBrowser dengan cara klik kanan pada Libraries > Add JAR/Folder.
      Cara Menggunakan Google Maps Ke Dalam Java Swing 3
      Gambar 3
      Cari folder lib pada file JxBrowser yang sudah kita extrak, maka kita akan dapatkan 5 File JAR. Jika anda pengguna windows anda dapat import file jxbrowser-6.14.1 dengan jxbrowser-win32-6.14.1,jika linux pilih jxbrowser-linux32-6.14.1 atau jxbrowser-linux64-6.14.1 dan untuk mac os jxbrowser-mac-6.14.1.
    3. Kemudian import kembali library untuk license agar file JxBrowser dapat berjalan di program kita. Caranya sama hanya saja anda memasukan file license.jar yang sudah didownload melalui email. Adapun hasil akhirnya yang di import akan seperti gambar dibawah.
      Cara Menggunakan Google Maps Ke Dalam Java Swing 4
      Gambar 4
    4. Pada file maps_jsc.html ini adalah file html google maps yang sudah anda rancang, jika belum bisa pelajari pada blog ini Java Source Code. File ini dimasukan kedalam folder package jgooglemaps saja, kenapa? agar mempermudah pemanggilan saja.
      Cara Menggunakan Google Maps Ke Dalam Java Swing 5
      Gambar 5
    5. Setelah import selesai, ternyata masih ada merah-merah, nah anda hanya cukup klik kanan pada source atau kode program kemudian pilih Fix Import.
      Cara Menggunakan Google Maps Ke Dalam Java Swing 6
      Gambar 6
    6. Akan ada tampil pilihan librari yang di import, cukup klik tombol OK maka semua masalah beres.
      Cara Menggunakan Google Maps Ke Dalam Java Swing 7
      Gambar 7
    Semua masalah sudah fix, coba jalankan kode program yang sudah selesai tadi. Pasti masih tidak muncul/ tidak bekerja google maps nya. Tahap akhir adalah kita panggil method loadMaps() tadi setiap program dijalankan pada JGoogleMaps_one() jadi seperti berikut.
        public JGoogleMaps_one() {
            initComponents();
            loadMaps();
        }
    Baru kita bisa jalankan kode program yang tadi, JANGAN LUPA UNTUK DI DEBUG agar menampilkan pesan error yang tersisa jika masih ada yang keliru pada file. Jika sukses akan menghasilkan gambar seperti dibawah ini.
    Cara Menggunakan Google Maps Ke Dalam Java Swing 8
    Gambar 8

    Penutup

    Sebenarnya JxBrowser ini berfungsi untuk mengeksekusi url, html, javascript,css dan sebagainya pada program java (Bisa lihat dokumentasinya). Membuat program java kita menjadi seperti browser yang bisa menampilkan suatu website didalam aplikasi desktop. Kita bisa load di berbagai komponen kontainer tergantung kebutuhan. Namun sayangnya JxBrowser tidak bersifat OpenSource, jadi kita hanya diberi batas penggunaan 30 Hari (tadak menutup kemungkinan ada versi ilegal).

    Terimakasih sudah berkesempatan untuk menimba ilmu dari blog JSC, semoga ilmu yang di share dapat bermanfaat. Jika ada pertanyaan mengenai ilmu yang terkait ataupun tidak, mari kita berdiskusi di dalam kolom komentar ini.

    Keep Learning and Keep Sharing

    1. kalau manggil langsung ke situs google maps nya gmna gan??

      BalasHapus
      Balasan
      1. pada bagian ini bisa diganti menjadi.
        browser.loadURL(dir+"\\src\\jgooglemaps\\maps_jsc.html");

        browser.loadURL("www.google.co.id/maps?source=tldsi&hl=en");

        Hapus
    2. Sipp gan, suksess...
      gan, kalo boleh tanya. gimna caranya yah ngambil data jarak google maps dari asal ke tujuan??
      Terimkasih

      BalasHapus
      Balasan
      1. Komentar ini telah dihapus oleh pengarang.

        Hapus
      2. saya belum sempat buat sampai situ gan kalau di java.

        Hapus
    3. ohh.. iya ggp
      share lagi dong gan ilmu java netbeans nya dengan google maps

      BalasHapus
      Balasan
      1. InsyaAllah gan, lebih aktif setelah oktober hehe.

        Hapus
    4. Selamat malam mas mau nanya, saya dah ikutin printah masnya yang diatas, tapi kok saya ndak berhasil ya? ndak bisa muncul map nya, padahal ga ada error sama sekali loh

      BalasHapus
      Balasan
      1. Sudah di coba di browser belum yang map.html nya? berhasil apa gagal? kalau berhasil berarti yang dijavanya cek lagi url pemanggilan file map.html nya.

        Hapus