Tampilkan postingan dengan label programming. Tampilkan semua postingan
Tampilkan postingan dengan label programming. Tampilkan semua postingan

Senin, 03 Desember 2018

Buat simulasi client server json menggunakan rest, json, maven

Hari ini membuat simulasi client server menggunakan rest (Jersey), json dan maven. Step - stepnya seperti dibawah ini

- IDE yang kita gunakan eclipse oxygen, pastikan plugin maven terinstal.

- Buat project web di eclipse : File -> New -> Dynamic Web Project atau klik kanan -> New -> Project -> Web -> Dynamic Web Project -> BlogProject (name project) -> Finish

- Generate file web.xml, karena pada saat membuat project tersebut file web.xml belum terbentuk. Klik kanan pada project tersebut -> Java EE Tools -> Generate Deployment Descriptor Stub. Setelah itu bisa dilihat di folder WEB-INF ada file web.xml

Kamis, 27 Oktober 2016

Cannot support TLS_DHE_DSS_WITH_AES_256_CBC_SHA with currently installed providers

Pernah kejadian error seperti judul di atas. Ini kejadiannya pada saat bikin project client-server menggunakan java ya. Kalau pernah, mungkin hal yang perlu dicek itu isi JDK.
Perlu diketahui saya menggunakan java versi 8.
Setelah dicari di google, ternyata ada library yang mesti diupdate. Biasanya sih masalah security libnya.
Download aja di sini , terus di extract aja. Isinya taro di folder jre/lib/security.
Terus ditest lagi, dan tidak ada masalah.. hehehe..
Semoga membantu ya.

Senin, 19 September 2016

Unsupported major.minor version 52.0

Pernah juga ngalamin error seperti yang di judul. Ini terjadi karena kompile code java pakai jdk 8, tapi pas diupload di production menggunakan jdk7. Itu artinya harus diganti pada bagian library. Biasanya ada di bagian project seperti gambar ini
Atau jika kalian pake ant, bisa di lihat bagian ini
Window di atas dapat dilihat dengan klik kanan pada project ant -> Run AS -> External Tools Configurations -> pilihat tab JRE, Lalu disitu ada bagian Separate JRE. Pilih aja jre yang sesuai dengan yang ada di production.
Sekian dari saya. 

Jumat, 09 September 2016

Input type text from html null (enctype=" multipart / form-data ")

Hi...hi uda lama ga nulis catatan. Malam ini mau tulis tentang masalah input form yang null ketika panggil servlet kalau form itu ada istilah enctype="multipart/form-data". Buat apa sih multipart ? Ini biasanya dipakai jika form tersebut memakai upload file. Semisal kita punya kode html seperti dibawah ini

Senin, 28 September 2015

[ECLIPSE] Generate Class dan HBM dari Database Postgresql

Hi..hi.. uda lama banget ga nulis yach.. Sekarang mau buat catatan bagaimana generate file java dan hbm.xml dari database postgresql menggunakan eclipse .
Oke sebelum generate 2 file tersebut, kita perlu menginstall plugin hibernate di eclipse. Untuk cara install plugin hibernate, tidak saya tulis di blog ini. Mungkin lain kali ya :)
Oke jika sudah terinstall, maka akan muncul perspective seperti gambar berikut
 


Rabu, 12 Agustus 2015

Blank Screen di PHP

Hai..hai... pagi ini mau iseng nulis tentang kenapa waktu load php di browser, yang kita dapet blank screen. Saya menggunakan os ubuntu 14.04.
File php saya taruh di public_html. Nah ternyata ada file yang mesti dikonfig lagi, jika menaruh file php di public_html. 

Rabu, 06 Agustus 2014

Iterator di Java

Sore ini mau tulis mengenai iterator di java. Iterator digunakan untuk membuat element-element seperti collection. ListIterator adalah extend dari class Iterator, bisa memudahkan untuk mengambil element-element yang ada di collection dengan cara maju atau mundur. Contoh simpel code iterator,

public class LatIterator {
   
    public static void main(String[] args) {
        List<String> lString = new ArrayList<String>();
        lString.add("A");
        lString.add("R");
        lString.add("D");
        lString.add("I");
       
        Iterator itr = lString.iterator();   // menggunakan Iterator

        while(itr.hasNext()) {
            System.out.println(itr.next());
        }


        ListIterator lItr = lString.listIterator();  // menggunakan ListIterator       
        while(lItr.hasNext()) {   // menampilkan element ke depan
            System.out.println(lItr.next());
        }


        System.out.println();


        while(lItr.hasPrevious()) {  //menampilkan element ke belakang
            System.out.println(lItr.previous());
        }     
       
    }
}

Minggu, 08 Desember 2013

AES CMAC

Hi..hi..melanjutkan postingan yang dulu tentang CMAC menggunakan TDEA. Kali ini kita mau nulis yang AES. Prosesnya hampir sama dengan yang TDEA, hanya bedanya adalah panjang dan enkripsinya. Kira-kira seperti gambar di bawah ini.

Berhubung kodenya sudah ada. Nih silahkan kalau ada yang minat di link ini.
Wassalam. :senyum

Senin, 11 November 2013

Load hibernate.cfg.xml Dari Folder Lain

Malam ini mau tulis tentang load hibernate.cfg.xml pada folder / package yang berbeda. Terkadang pada saat run aplikasi yang menggunakan framework hibernate, kita mungkin dapat error "hibernate.cfg.xml not found". Kemungkinan, ketika menjalankan fungsi configure(), file hibernate.cfg.xml tidak terbaca pathnya.
Nah caranya cukup mudah, misalnya kita punya struktur seperti gambar di bawah ini


Minggu, 10 November 2013

Hibernate di Eclipse

Di postingan sebelumnya sudah dibahas mengenai hibernate di netbeans. Kali ini kita akan mencoba memakai hibernate di eclipse. Bahan yang perlu dipersiapkan adalah;
- Eclipse (saya menggunakan eclipse juno) 
- Hibernate versi 3.6 bisa didownload di link ini
- Jdk-1.6
Setelah mendownload library hibernate, kita seting path user librarynya di eclipse. Library yang diset antara lain;
- hibernate3.jar
- antlr-2.7.6.jar
- commons-collections-3.1.jar
- dom4j-1.6.jar
- javassist-3.12.0.GA.jar
- jta-1.1.jar
- slf4-api-1.6.1.jar
- hibernate-jpa-2.0-api-1.0.1.Final.jar

Senin, 04 November 2013

Cron di Java

Pagi ini mau tulis tentang penjadwalan di java. Untuk itu kita menggunakan library cron4j. Langsung aja kita ke kode ya.

import it.sauronsoftware.cron4j.Scheduler;

public class Quickstart {

    public static void main(String[] args) {
        // Creates a Scheduler instance.
        Scheduler s = new Scheduler();
        // Schedule a once-a-minute task.
        s.schedule("* * * * *", new Runnable() {
            public void run() {
                System.out.println("Another minute ticked away...");
            }
        });
        // Starts the scheduler.
        s.start();
        // Will run for ten minutes.
        try {
            Thread.sleep(1000L * 60L * 10L);
        } catch (InterruptedException e) {
            ;
        }
        // Stops the scheduler.
        s.stop();
    }

}

Rabu, 30 Oktober 2013

[JavaMail] Kirim Attachment File

Hari ini mau tulis tentang javamail, yakni mengirim file menggunakan javamail. Oke di postingan kemarin sudah dibahas sedikit mengenai javamail. Dan postingan kali ini dengan tambahan file yang akan dikirim. Langsung saja ke kode.

import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.DataSource;
import javax.activation.FileDataSource; 
import javax.mail.Authenticator; 
import javax.mail.BodyPart; 
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Multipart;
import javax.mail.PasswordAuthentication;
import javax.mail.Session; 
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;

/**
 *
 * @author user
 */

public class SendFileEmail {

    public static void main(String[] args) {
         SendFileEmail sf = new SendFileEmail();
         sf.excute();
    }

Senin, 28 Oktober 2013

[JavaMail] Kirim Email di Java

Hari ini mau tulis tentang kirim email di java. Hal - hal yang perlu diketahui dalam mengirim email menggunakan javamail adalah :
- Download javaxmail
- Seting propertis 
- Menambahkan certificate ke keystore yang kita punya
Oke langsung aja kita kode ya

Kamis, 22 Agustus 2013

Install Hibernate di Eclipse

Hari ini mau tulis catatan tentang cara install hibernate di eclipse. Bahan-bahan yang diperlukan; eclipse (dalam hal ini saya menggunakan eclipse juno), hibernate, dan koneksi internet :senyum.
Step - stepnya :
- Buka eclipse juno
- Pilih menu Help --> Install New Software --> Add -> Input Jboss Tools pada name dan link berikut pada location http://download.jboss.org/jbosstools/updates/stable/juno/ bisa dilihat pada gambar di bawah ini.

Rabu, 22 Mei 2013

[Android] eclipse gagal generated R.java

Hi, hi.. hari ini mau tulis kenapa file R.java yang biasanya digenerate eclipse tidak digenerate. Ini biasa terjadi pada project android, yang tiba-tiba error dikarenakan keyword-keyword yang ada pada file xml tidak tergenerate.
Untuk mengatasinya ada yang menyarankan untuk clean project, yakni ada di menu
Project -> Clean... -> <<Pilih project yang akan diclean>>  -> Ok

Tapi kadang ini tidak berhasil, lalu secara tidak sengaja saya menemukan caranya yakni menghapus folder .metadata yang ada pada folder workspace.
Setelah dihapus, buka eclipsenya kembali. Dan akhirnya bisa :senyum.

Oh ya ini saya ketemu dengan sendirinya, jadi gak bisa nunjukin link sumbernya ya. Kalau ada yang salah mohon dikoreksi. 
Salam bloger. Wassalam

Kamis, 18 April 2013

[android] Scroll horizontal dan vertical

Hi, hari ini mau tulis scroll horizontal dan vertical di android. Lansung aja ke code ya. Pertama - tama kita buat dulu custom scroll untuk yang vertical (VScroll.java) dan horizontal (HScroll.java).

package ardi.fisika6.util;

import android.content.Context;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.widget.HorizontalScrollView;


Kamis, 11 April 2013

Push Code ke Github

Hari ini mau tulis cara push code ke github. Langkah awal pastinya harus punya account di github dulu ya :senyum. Buat repo dulu di github, lalu dipush dari client.
Langkah - langkah pembuatan repo di github
1. Klik new repository, lalu akan muncul form seperti gambar dibawah ini.

2. Setelah dibuat akan muncul window seperti dibawah ini, nah pilih ssh. Karna sampe sekarang gw belum bisa push via https :hammer.

Jumat, 05 April 2013

Cipher based MAC (CMAC) C code

Hari ini mau tulis tentang CMAC dan sekalian share codenya jg :senyum. CMAC digunakan untuk menjamin data yang masuk itu tidak ada yang berubah, dalam artian tidak ada orang yang mengubah paket data dalam trafik jaringan.

Algoritma CMAC pada prinsipnya merupakan variasi dari CBC-MAC, bisa dilihat di wiki atau di e-book SP_800-38B.pdf. Dan kali ini saya hanya akan memberikan CMAC menggunakan enkripsi TDEA(Triple Data Encryption Algorithm)

Untuk membuat checksum menggunakan CMAC metode TDEA, terlebih dahulu kita harus tahu variabel apa saja yang diperlukan
- Key (K), yakni master key yang diperlukan untuk mengenerate subkey K1 dan K2.
- K1 & K2, yakni subkey yang dibutuhkan untuk XOR message (M) di 8 byte terakhir.
- Message (M), yakni data yang digunakan untuk menghasilkan checksum
- Initial Value (IV), digunakan untuk pada enkripsi CBC-TDEA.
Dan hal pertama yang kita lakukan adalah generate subkey (K1 & K2) dari K. Step - step untuk generate subkey;
1. L = CIPHK(0b) ; dengan b = 8 byte, sehingga 08 = 00000000, CIPHK() menggunakan algoritma TDEA enkripsi. (a*)
2. If MSB1(L) = 0, then K1 = L << 1 Else K1 = (L << 1) ⊕ Rb; Jika MSB (Most Significant Bit) 1 paling kiri dari L adalah 0, maka geser 1 bit ke kiri pada array L. Jika tidak maka geser 1 bit pada array L , lalu xor dengan Rb .
3. If MSB1(K1) = 0, then K2 = L << 1 Else K2 = (K1 << 1) ⊕ Rb; Jika MSB (Most Significant Bit) 1 paling kiri dari L adalah 0, maka geser 1 bit ke kiri pada array L. Jika tidak maka geser 1 bit pada array L , lalu xor dengan Rb .

Selasa, 26 Maret 2013

Ubah String Binary ke hexa

Hari ini mau tulis snipet code kecil yakni untuk mengubah string biner ke hexa.
Contohnya "1000" => 0x08
Langsung liat ke kode di bawah ini :

unsigned char gethexa(unsigned char *strhex) {
    int i;
    unsigned char arrbin[16][5]= {"0000", "0001", "0010", "0011", "0100", "0101", "0110", "0111", "1000", "1001", "1010", "1011", "1100", "1101", "1110", "1111"};
    unsigned char byte[16] = {0x0, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F};

    for(i = 0; i < 16; i++)
       if(strcmp(strhex, arrbin[i]) == 0) return byte[i];

    return 0x0;
}
/************************************************
* Change string biner to hexa.
* e.x : "1000" => 0x08
* Params :
* - binstr   = string biner
* - binhex = hexa biner
*
*/
int strbin2hex(unsigned char *binstr, unsigned char *binhex) {
        int i, j = 0, len;

        unsigned char bintmp[5];
        unsigned char hextmp;

        memset(bintmp, 0x0, sizeof(bintmp));

        for(i = 0; i < strlen(binstr); i+=8) {
                memcpy(bintmp, &binstr[i], 4);
                hextmp = gethexa(bintmp);
                hextmp <<= 4;

                memcpy(bintmp, &binstr[i+4], 4);
                hextmp |= gethexa(bintmp);
                binhex[j] = hextmp;
                printf("binhex[%d] %x\n", j, binhex[j]);
                len = ++j;
        }
        return len ;
}

Selasa, 19 Maret 2013

Ubah Long Long Int ke String dan sebaliknya

Sore ini mau tulis kode cara convert string ke long long int dan sebaliknya. Kenapa menggunakan long long int itu karena pada kasus saya, saya membutuhkan 8 byte.
Langsung aja ke kode

/*******************************************************************
* Convert unsigned long long int to string.
* Params :
* - in : varible unsigned long long int that wil be converted [INPUT]
* - oBuff : buffer array [OUTPUT]
* - len_byte : length of buffer array [INPUT]
* return 
* - len as length of buffer array
*       
*/              
int ullint2str(unsigned long long int in, unsigned char *oBuff, int len_byte) {
        int len, i;
        unsigned long long int tmp = 0x0L;
        
        len = len_byte;
        tmp = in;

        for (i = len - 1; i >= 0; i--) {
                oBuff[i] = tmp;
                if (i != 0) tmp >>= 8;
        }

        return len;
}