enkripsi database properties untuk spring

Bagaimana cara meng-enkripsi database.properties supaya password database ter-enkripsi ?

BISMILLAH

q> Pada applicationContext.xml bean untuk propertyConfigurer sebelum database.properties di-enkripsi

<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location" value="file:/home/glassfish/ZKGLASS/database.properties" />
</bean>

q>File database.properties berada pada /home/glassfish/ZKGLASS/database.properties.

q> Ubah bean propertyConfigurer menjadi seperti ini :

<bean class="org.jasypt.spring.properties.EncryptablePropertyPlaceholderConfigurer">
<constructor-arg>
<bean>
<property name="password" value="BLABLABLA"/>
</bean>
</constructor-arg>
<property name="locations">
<list>
<value>file:/home/glassfish/ZKGLASS/database.properties</value>
</list>
</property>
</bean>

bean di atas menggunakan library Jasypt. (jasypt-1.9.0.jar dan jasypt-spring3-1.9.0).

q> isi database properties setelah menggunakan bean jasypt :

jdbc.driverClass=oracle.jdbc.driver.OracleDriver
jdbc.jdbcUrl=jdbc:oracle:thin:@192.168.56.2:1521:myoracle
jdbc.user=myuser
jdbc.password=ENC(So5FQj8CX+rj9+pM/qq5xlZeGv+AimoB)

q> Pada bean di atas pada property password = “BLABLABLA” merupakan password enkriptor

q> Bagaimana cara membuat password So5FQj8CX+rj9+pM/qq5xlZeGv+AimoB

q> Buat class di java

package com.ipi.util;

import org.jasypt.util.text.BasicTextEncryptor;

/**
* @author glassfish
*
* Oct 30, 2012
*/
public class JasyptMain {

public static void main(String[] args) {
String passwordEnkriptor = "BLABLABLA";
BasicTextEncryptor chiper = new BasicTextEncryptor();
chiper.setPassword(passwordEnkriptor);
String plainText = "passwordalay";
System.out.println("String "+plainText+" dienkripsi menjadi : "+chiper.encrypt(plainText));
}

}

q> Ataw klo mau bikin aplikasi GUI menggunakan java bisa dibuat seperti ini :

q> Untuk bean datasource

<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<property name="driverClass" value="${jdbc.driverClass}" />
<property name="jdbcUrl" value="${jdbc.jdbcUrl}" />
<property name="user" value="${jdbc.user}" />
<property name="password" value="${jdbc.password}" />
</bean>

End ::

ALHAMDULILLAH

Thank to Mas Endy Muhardin.

Sumber ::
http://software.endy.muhardin.com/java/enkripsi-jdbc-properties/

meletakkan database properties di luar war

Aplikasi menggunakan framework ZK + Hibernate + Spring, pada applicationContext.xml mengakses file database.properties yang berisi property koneksi ke database. Bagaimana menaruh file database.properties ini di luar folder project atau di luar WAR. Sebagai contoh file database.properties diletakkan pada /home/glassfish/ZKGLASS/

q>Bean untuk mengakses file database.properties

<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location" value="file:/home/glassfish/ZKGLASS/database.properties" />
</bean>

q>Bean yang membaca property file database.properties

<bean id="dataSource"    destroy-method="close">
<property name="driverClass" value="${jdbc.driverClass}" />
<property name="jdbcUrl" value="${jdbc.jdbcUrl}" />
<property name="user" value="${jdbc.user}" />
<property name="password" value="${jdbc.password}" />
</bean>

q>File database.properties

jdbc.driverClass=oracle.jdbc.driver.OracleDriver
jdbc.jdbcUrl=jdbc:oracle:thin:@192.168.56.2:1521:myoracle
jdbc.user=myuser
jdbc.password=mypassword

q> Sedangkan untuk file database.properties yang diletakkan pada WAR, example ditaruh di /WEB-INF/database.properties, maka

<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location" value="/WEB-INF/database.properties" />
</bean>

End ::

membuat domain baru pada server glassfish

Secara default waktu instalasi glassfish membuatkan domain1, bagaimana menambahkan domain yang lain ex :domain2 ? , dan membuat kedua domain bisa jalan berbarengan.

./asadmin create-domain --adminport 4949 --adminuser admin domain2

q> Admin port = 4949
q> Admin user = admin
q> Nama domain = domain2

Untuk merubah port2 yang berhubungan dengan domain2 ::
edit file domain.xml pada $HOME_GLASSFISH_INSTALLATION/domains/domain2/config/

q>Port :
HTTP Instance : 5050 ( asal 8080)
JMS : 6666 ( asal 7676)
IIOP: 4700 ( asal 3700)
HTTP_SSL : 9191 ( asal 8181)
IIOP_SSL : 3620 ( asal 3820)
IIOP_MUTUALAUTH : 3720 (asal 3920)
JMX_ADMIN : 9696 (asal 8686)

q>start domain lama

./asadmin start-domain domain1

q>start domain baru

./asadmin start-domain domain2

End.

setting font pdf jasperreport menggunakan IReport

Seharian cari sebab opo’o jasper klo dijalankan di IReport 4.0.2 tampil sesuai desain dalam pemilihan font, tetapi saat dijalankan di server tidak tampil, bahkan error.

Error ::

Could not load the following font :

bla bla bla

 

Pada desain report ( .jrxml ) menggunakan font comic san, agar font comic san terbaca pada aplikasi, buat file comic.jar menggunakan IReport.

q> Buka IReport > Tools > Options > Pilih tab Font >
q> Install Font > Masukkan font misalnya comic.ttf dari hasil download font
q> Setelah setelai install font
q> Pilih font yang baru diinstall tadi
q> Klik tombol Export As extension
q> Pilih target export dan isikan namanya sebagai contoh comic.jar

q> Cari file hasil export tadi “comic.jar” pada direktori target
q> Kemudian masukkan comic.jar sebagai library pada aplikasi.

Selesai 😀 ,,

subeclipse Failed to load JavaHL Library

subeclipse Failed to load JavaHL Library. no libsvnjavahl-1 in java.library.path

Error eclipse ketika instal subeclipse plugin ::

q:>Install libsvn-java

sudo apt-get install libsvn-java

q:>Update DB

sudo updatedb

q:> Cari posisi library

locate libsvnjavahl-1.so

q:>Hasil pencarian lokasi library

/usr/lib/i386-linux-gnu/jni/libsvnjavahl-1.so
/usr/lib/i386-linux-gnu/jni/libsvnjavahl-1.so.0
/usr/lib/i386-linux-gnu/jni/libsvnjavahl-1.so.0.0.0

q:>Edit eclipse.ini yang berada pada foler instalasi eclipse , penambahan baris di bawah tag -vmargs

gedit eclipse/eclipse.ini

q:>Contoh file eclipse.ini sesudah diupdate

-startup
plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.gtk.linux.x86_1.1.100.v20110505
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Djava.library.path=/usr/lib/i386-linux-gnu/jni
-Dosgi.requiredJavaVersion=1.5
-XX:MaxPermSize=256m
-Xms40m
-Xmx512m

q:>simpan jalankan eclipse

sumber ::
https://myotragusbalearicus.wordpress.com/2011/11/25/subclipsesubversion-error-on-ubuntu-failed-to-load-javahl-library/

al baqarah 197

Berbekallah,  dan sesungguhnya sebaik-baik bekal adalah taqwa

197. (Musim) haji adalah beberapa bulan yang dimaklumi[122], barangsiapa yang menetapkan niatnya dalam bulan itu akan mengerjakan haji, maka tidak boleh rafats[123], berbuat fasik dan berbantah-bantahan di dalam masa mengerjakan haji. Dan apa yang kamu kerjakan berupa kebaikan, niscaya Allah mengetahuinya. Berbekallah, dan sesungguhnya sebaik-baik bekal adalah takwa[124] dan bertakwalah kepada-Ku hai orang-orang yang berakal.
[122]. Ialah bulan Syawal, Zulkaidah dan Zulhijjah.
[123]. Rafats artinya mengeluarkan perkataan yang menimbulkan berahi yang tidak senonoh atau bersetubuh.
[124]. Maksud bekal takwa di sini ialah bekal yang cukup agar dapat memelihara diri dari perbuatan hina atau minta-minta selama perjalanan haji.