Main Menu

Kamis, April 23, 2009

Maven Proxy

if your company have a proxy to connect internet. you need to modify your maven repository. so you can get repository from internet.

to add proxy in your maven you need to edit file settings.xml in your maven directory. add this code in settings.xml


Selasa, April 14, 2009

Create war or ear File with eclipse

i didn't realize it before. that create war or ear wih eclipse is easy :D. you just choose menu file and then export. then choose war or ear. finish :D. 

What a boring jobs

day by day
always a boring day
what must i do today?
always same like yesterday

no jobs to do
nothing must i do
now what will i do?
i don't know what will i do

What a boring jobs
What a boring work
What a perfect pain
What a perfect day

Senin, April 13, 2009

Top 10 Myths About Islam

Islam is a widely-misunderstood religion. Those who are unfamiliar with the faith often have misunderstandings about its teachings and practices. Common misconceptions include that Muslims worship a moon-god, that Islam is oppressive against women, or that Islam is a faith that promotes violence. Here we bust these myths and expose the true teachings of Islam.

1. Muslims worship a moon-god
Some non-Muslims mistakenly believe that Allah is an "Arab god," a "moon god," or some sort of idol. Allah is the proper name of the One True God, in the Arabic language. The most fundamental belief that a Muslim has is that "There is only One God," the Creator, the Sustainer -- known in the Arabic language and by Muslims as Allah. Arabic-speaking Christians use the same word for the Almighty.

2. Muslims don't believe in Jesus
In the Qur'an, stories about the life and teachings of Jesus Christ (called 'Isa in Arabic) are abundant. The Qur'an recalls his miraculous birth, his teachings, and the miracles he performed by God's permission. There is even a chapter of the Qur'an named after his mother, Mary (Miriam in Arabic). However, Muslims believe that Jesus was a fully human prophet and not in any way divine himself.

3. Most Muslims are Arabs
While Islam is often associated with Arabs, they make up only 15% of the world's Muslim population. The country with the largest population of Muslims is Indonesia. Muslims make up 1/5 of the world's population, with large numbers found in Asia (69%), Africa (27%), Europe (3%) and other parts of the world.

4. Islam oppresses women
Most of the ill-treatment that women receive in the Muslim world is based on local culture and traditions, without any basis in the faith of Islam. In fact, practices such as forced marriage, spousal abuse, and restricted movement directly contradict Islamic law governing family behavior and personal freedom.

5. Muslims are violent, terrorist extremists
Terrorism cannot be justified under any valid interpretation of the Islamic faith. The entire Qur'an, taken as a complete text, gives a message of hope, faith, and peace to a faith community of one billion people. The overwhelming message is that peace is to be found through faith in God, and justice among fellow human beings. Muslim leaders and scholars do speak out against terrorism in all its forms, and offer explanations of misinterpreted or twisted teachings.

6. Islam is intolerant of other faiths
Throughout the Qur'an, Muslims are reminded that they are not the only ones who worship God. Jews and Christians are called "People of the Book," meaning people who have received previous revelations from the One Almighty God that we all worship. The Qur'an also commands Muslims to protect from harm not only mosques, but also monasteries, synagogues, and churches -- because "God is worshipped therein."

7. Islam promotes "jihad" to spread Islam by the sword and kill all unbelievers
The word Jihad stems from an Arabic word which means "to strive." Other related words include "effort," "labor," and "fatigue." Essentially Jihad is an effort to practice religion in the face of oppression and persecution. The effort may come in fighting the evil in your own heart, or in standing up to a dictator. Military effort is included as an option, but as a last resort and not "to spread Islam by the sword."

8. The Quran was written by Muhammad and copied from Christian and Jewish sources
The Qur'an was revealed to the Prophet Muhammad over a period of two decades, calling people to worship One Almighty God and to live their lives according to this faith. The Qur'an contains stories of Biblical prophets, because these prophets also preached the message of God. Stories are not merely copied, but the oral traditions are referred to in a way that focuses on the examples and teachings that we can learn from them.

9. Islamic prayer is just a ritualized performance with no heartfelt meaning
Prayer is a time to stand before God and express faith, give thanks for blessings, and seek guidance and forgiveness. During Islamic prayer, one is modest, submissive and respectful to God. By bowing and prostrating ourselves to the ground, we express our utmost humility before the Almighty.

10. The crescent moon is a universal symbol of Islam
The early Muslim community did not really have a symbol. During the time of the Prophet Muhammad, Islamic caravans and armies flew simple solid-colored flags (generally black, green, or white) for identification purposes. The crescent moon and star symbol actually pre-dates Islam by several thousand years, and wasn't affiliated with Islam at all until the Ottoman Empire placed it on their flag.

Java : Send email with attachment

sometime we need to add attachment in our mail. in java we can MimeMessageHelper to add attachment in our mail.. this is the example code.

JavaMailSenderImpl sender = new JavaMailSenderImpl();

MimeMessage message = sender.createMimeMessage();

// use the true flag to indicate you need a multipart message
MimeMessageHelper helper = new MimeMessageHelper(message, true);

helper.setText("Check out this image!");

// let's attach the infamous windows Sample file (this time copied to c:/)
FileSystemResource file = new FileSystemResource(new File("c:/Sample.jpg"));
helper.addAttachment("CoolImage.jpg", file);


Without You

Without You
Same Same feat Audy

The first time I saw you… I knew
I knew I love you coz my heart stopped
Saat pertama bertemu ku tahu jantungku terhenti kar’na cinta
Reff: Cause I la la la la la la la la la la la la love you
Love can make you feel so funny
No house no car not even money
Will make me feel the way
What I’m really trying to say I can’t live another day…
Without you… without you…

Saat pertama ku kecup, ku tahu kau milikku
Karena terhenti detak hatimu
The first time I kiss you I knew
I knew I had coz your heart stopped
Hanya cinta yang mampu begitu
Tiada di dunia yang dapat buatku merasa
Yang kucoba katakan tak dapat hidup tanpamu
Cause I la la la la la la la la la la la la love you
Cause I la la la la la la la la la la la la love you

Cause I la la la la la la la la la la la la love you

Cause I la la la la la la la la la la la la love you

La… la… la la la… la la la… la… la la la… la la la…

Selasa, April 07, 2009

Fork / Join in jBpm

what is fork / join ?. when i learn about jBpm i found this word. what is it? and what's for?

when you got a jobs. you can solved it easily if your job is small. but how if your job is too big and the time was not enough to do it by yourself? how will you do?

you can divide your jobs with your friend. it'll make your jobs easy to handle. right?

fork / join is used to divide the jobs or task in business process. in jBpm you can use this symbol to define fork and join

this is the example diagram implemented fork / join

from this diagram we can see that the process has divide into two proses left and right. 

Senin, April 06, 2009

Advice from Imam Ghazali

One day, Imam Al Ghozali gather with his students. Then Imam Al Ghozali ask to his students, "What's the most close to us in this world?". Students have said that parents, teachers, friends, and relatives. Imam Ghozali explain all the correct answers. But the most close to us is the "Dead". For the promise of Allah SWT is that every soul which will surely die.

Then Imam Ghozali forward to next question. "What's the most far from us in this world?". Students have said the country China, moon, sun, and stars. Then Imam Ghozali explain that all of the answers they give are correct. But the most correct is the "past". However, we, any of our vehicles, we still can not return to the past. Therefore we have to keep this day and the days that will come with the act in accordance with the teachings of Religion.

Then Imam Ghozali proceed with the third question. "What is the largest in the world?". Students said the largest is the mountains, the earth and the sun. All answers are correct said Imam Ghozali. But the greatest of which is in the world is "lust" (Al A'Raf 179). So we must be careful with our lust, not lust to take us to hell.

Fourth question is, "What's the most weight in the world?". There is a steel, iron, and elephants. All answer are correct, said Iimam Ghozali, but the most serious is the "hold Amanah" (Al-Ahzab 72). Plants, animals, mountains, and all the angels can not afford when they ask Allah SWT to be kalifah (leaders) in this world. But the man with the request sombongnya menyanggupi Allah SWT, so a lot of people go to hell because he can not hold amanahnya.

The fifth question is, "What's the most lightweight in the world?". There is a cotton, wind, dust, and foliage. All answer are correct, but the most lightweight in the world is "leaving the prayer." Because of the work we leave prayer, because of prayer meeting we leave. So to the six questions is, "What is most striking in this world?". Students replied with one voice, the sword ... Imam Ghozali said it is correct, but the most striking is the "tongue of men." Because with the tongue,he can easily harm other people and his own brother.

Open Source Business Process Management ( jBPM vs Open WFE vs Enhydra Shark )

Business Process Management(BPM) / Workflow management systems (WFMSs) are software systems which support the execution of business processes in an organisation. They take care of the distribution of work (and associated data) to the right people at the right time. They are configured based on (often graphical) process models. Similar to database management systems.

There is a lot of BPM in Java. But there is only three BPM who usually use. (jBPM, Open WFE and Enhydra Shark).

jBpm is a flexible, extensible workflow management system. Business processes , expressed in a simple and powerfull language and packaged in process archives, serve as input for the jBpm runtime server. jBpm bridges the gap between managers and developers by giving them a common language : the jBpm Process definition language (jPdl).

OpenWFE is an open source java workflow engine. It is a complete Business Process Management suite, with 4 components : an engine, a worklist, a webclient and a reactor (host for automatic agents). A python access library is available : your python application / client can interact with an OpenWFE REST worklist.

Shark is an extendable workflow engine framework including a standard implementation completely based on WfMC specifications using XPDL (without any proprietary extensions !) as its native workflow process definition format and the WfMC "ToolAgents" API for serverside execution of system activitie

If we compare those BPM. there is none of offerings stands out as being clearly superior to the others. although it can be argued that OpenWFE demonstrates a marginally wider range of features, whilst Enhydra Shark and jBPM clearly lag behind in terms of overall patterns support. OpenWFE tend to demonstrate broader pattern support in their corresponding tool classes (i.e. open source vs proprietary), especially in the control-flow perspective. Moreover, it can also be observed that the proprietary tools are generally better equipped in the resource perspective and better able to support interaction with the external environment, whereas the open source systems essentially rely on their users having programming experience (e.g.
Java) to achieve the required integration with other systems. In the data perspective jBPM, relying heavily on Java coding for data passing and manipulation, clearly lags behind the other offerings.

Overall one can conclude that the open source systems are geared more towards developers than business analysts. If one is proficient with Java, jBPM may be a good choice, although if not, choosing jBPM is less advisable. Similarly,
whilst OpenWFE has a powerful language for workflow specification in terms of its support for the workflow patterns, we postulate that it will be difficult to understand by non-programmers. Finally, Endydra Shark’s minimalistic support
for the workflow patterns may require complicated work-arounds for capturing nontrivial business scenarios. This situation is a marked contrast to the database field where open source database management systems are accessible to
a much broader audience.

Start Posting in English

start from today... i want to post using english. for all of you who read this blog and you feel wrong with my grammar or else.. please correct me. i want to learn english, especially writing in english :).

i hope, my english will be better :).

Minggu, April 05, 2009

Rp10rb untuk suaramu

Pemilu sudah bentar lagi. para caleg semakin ramai dan bersaing satu sama lain. tidak sedikit juga yang menhalalkan segala cara. seperti yang terjadi di daerah saya. tuban. ada seorang caleg dari golkar yang membayar warga untuk memilihnya... anehnya suara rakyat yang bisa menentukan arah kemana negeri ini berjalan hanya di hargai Rp10rb. ada pula caleg dari demokrat yang membayar para warga agar menyontrengnya.

rakyat pun senang dengan pemberian ini. mungkin Rp10rb bagi mereka adalah uang yang cukup besar. cukup untuk membuat dapur mereka tetap mengebul selama beberapa hari. mereka hanya sanggup berpikir untuk kehidupan sendiri. tidak sempat untuk memikirkan negeri ini. menghidupi diri saja susah...

beginikah kehidupan? beginikah demokrasi?

Jumat, April 03, 2009

JBPM :: Pengertian Table jBPM ( Definition )

ini nech pengertian atau fungsi tiap table dari database jBPM. bagian pertama dulu yach... (Definition) ntar masih ada lagi. yaitu Execution. perbedaanya Definition itu table2 yang di pake jBPM untuk menyimpan process definition ( Diagram ) ke dalam database.

JBPM Database
No Nama Table Keterangan
jbpm_action Menyimpan Informasi tentang kejadian pada process definition

id_ bigint NOT NULL, id table

"class" character(1) NOT NULL,

name_ character varying(255),

ispropagationallowed_ boolean,

actionexpression_ character varying(255),

isasync_ boolean,

referencedaction_ bigint, action ini mereference ke action yang lain

actiondelegation_ bigint, Delegation / java class yang mana

event_ bigint, yang mentrigger action

processdefinition_ bigint, Kejadian pada process definition yang mana

timername_ character varying(255),

duedate_ character varying(255), action berakhir kapan

repeat_ character varying(255), action berulang tiap

transitionname_ character varying(255),

timeraction_ bigint, jika memakai timer action

expression_ character varying(4000),

eventindex_ integer,

exceptionhandler_ bigint, exception handler untuk action ini

exceptionhandlerindex_ integer

jbpm_decisionconditions Menyimpan informasi kondisi /expresi untuk perpindahan state

decision_ bigint NOT NULL, Decision untuk node

transitionname_ character varying(255),

expression_ character varying(255),

index_ integer NOT NULL

jbpm_delegation Menyimpan informasi java class yang di spesifikasikan di process defininition ( untuk kondisi pindah state )

id_ bigint NOT NULL, id table

classname_ character varying(4000), nama class java

configuration_ character varying(4000), Konfigurasi / input ke java

configtype_ character varying(255), tipe config

processdefinition_ bigint Foregn key ke process definition

jbpm_event menyimpan informasi object yang mentrigger perpindahan state / task pada process definisi

id_ bigint NOT NULL, id table

eventtype_ character varying(255), tipe event ( task-create, node-leave dll )

type_ character(1),

graphelement_ bigint,

processdefinition_ bigint, FK ke process definition, terisi jika yang mentrigger process definition

node_ bigint, FK ke node, terisi jika yang mentrigger node

transition_ bigint, FK ke transition , terisi jika yang mentrigger transition

task_ bigint FK ke task, terisi jika yang mentrigger task

jbpm_exceptionhandler menyimpan informasi ketika terjadi error pada pada process

id_ bigint NOT NULL, id table

exceptionclassname_ character varying(4000), class exception

type_ character(1),

graphelement_ bigint,

processdefinition_ bigint,

graphelementindex_ integer,

node_ bigint,

transition_ bigint,

task_ bigint

jbpm_moduledefinition menyimpan data module yang dipakai pada process definisi

id_ bigint NOT NULL, id table

class_ character(1) NOT NULL, class module

name_ character varying(4000), nama class module

processdefinition_ bigint, FK ke process definition

starttask_ bigint FK task mulai pada process defintiion

jbpm_node Menyimpan data node pada process definition

id_ bigint NOT NULL, id table

class_ character(1) NOT NULL, class node ( E = end , R = start dll)

name_ character varying(255), nama node

processdefinition_ bigint, Node untuk process definition yang mana

isasync_ boolean,

action_ bigint, menspesifikasikan action class yang di jalankan node

superstate_ bigint, node memiliki super state

subprocessdefinition_ bigint, sub process dari process definition ( sub process akan di jalankan sebelum node berpindah ke node yang lain )

decisionexpression_ character varying(255),

decisiondelegation bigint, keputusan di ambil dari delegation / class

signal_ integer,

createtasks_ boolean,

endtasks_ boolean,

nodecollectionindex_ integer

jbpm_processdefinition menyimpan data umum process definition

id_ bigint NOT NULL, id table

name_ character varying(255), nama process definition

version_ integer, versi

isterminationimplicit_ boolean,

startstate_ bigint node awal

jbpm_swimlane Menyimpan data swimlane yang di definisikan di process definisi

id_ bigint NOT NULL, id table

name_ character varying(255), nama swimlan

actoridexpression_ character varying(255),

pooledactorsexpression_ character varying(255),

assignmentdelegation_ bigint, FK delegation table

taskmgmtdefinition_ bigint FK module definition

jbpm_task menyimpan informasi tentang job yang di definisikan di process definition

id_ bigint NOT NULL, id table

name_ character varying(255), nama task

processdefinition_ bigint, FK process definition

description_ character varying(4000), Keterangan

isblocking_ boolean,

issignalling_ boolean,

duedate_ character varying(255),

actoridexpression_ character varying(255),

pooledactorsexpression_ character varying(255),

taskmgmtdefinition_ bigint, Module yang dipakai

tasknode_ bigint,

startstate_ bigint, start state

assignmentdelegation_ bigint, delegation

swimlane_ bigint, swimlane

taskcontroller_ bigint task controller

jbpm_taskcontroller menyimpan informasi hubungan dari task ke delegation

id_ bigint NOT NULL,

taskcontrollerdelegation_ bigint Menspesifikasikan class yang di pakai controller

jbpm_variableaccess menyimpan variable untuk pindah state.. ( pindah state di tentukan klik dari user :: approve / reject )

id_ bigint NOT NULL, id table

variablename_ character varying(255), nama variable

access_ character varying(255), access.. read write dll

mappedname_ character varying(255), tombol pilihan

processstate_ bigint, variable untuk node

taskcontroller_ bigint, variable untuk task

index_ integer,

script_ bigint variable untuk action