Altijd mooi als er een bouwwerk is dat, in ieder geval gedeeltelijk, dezelfde naam heeft als ik. En dat valt anderen dan ook op, vandaar deze inzending. Bedankt Arnie en Annie!!!
Als ik het internet mag geloven (en dat doe ik natuurlijk onvoorwaardelijk) is het trouwens Peter Robinson. De held!
Archive for January, 2009
Inzending van Arnie en Annie
Tuesday, January 20th, 2009Verhaaltjes in Java
Saturday, January 17th, 2009Deze post is alleen voor mensen die op zijn minst wat basiskennis van het Java platform hebben!
Bij wijze van experiment heb ik een java progseltje gemaakt waarmee je in Java een verhaaltje kan schrijven dat compileert en draait. Wanneer je het draait worden alle static method calls met behulp van JBoss AOP afgevangen en daaruit wordt een door mensen te lezen verhaaltje gegenereerd.
Als dit verhaaltje vanuit het programma compileert en draait, dan krijg je de volgende output:
The story of: happy days
Fonzie likes to hang out at the cunningham residence and arnolds drive in.
Fonzie is at arnolds drive in.
Fonzie knocks on the jukebox.
The jukebox starts playing.
Yeah!Yeah!Yeah!
Happy days all around.
It was a great show.
Voor het compileren vanuit het programma gebruik ik de in Java 6 geïntroduceerde Java Compiler API. Hier een screenshot van het programma:
JBoss AOP was erg eenvoudig in te richten. Je moet alleen zorgen dat de bijbehorende agent draait en je moet een pointcut definieren in jboss-aop.xml:
Om het programma te gebruiken heb je het volgende nodig:
- Een Java SE6 JDK (Een JRE is niet voldoende, want daarbij zit geen Java compiler).
- De JAVA_HOME system variable moet zijn ingesteld op de Java SE6 JDK install directory (De applicatie heeft toegang nodig tot de bijbehorende tools.jar).
- De StoryTeller applicatie
Als je de StoryTeller applicatie wilt draaien, dan kun je de meegeleverde storyteller.bat draaien. Onder een ander OS dan Windows zou je hiervoor even een eigen script moeten schrijven.
Hier kun je StoryTeller downloaden:
- StoryTeller applicatie (zonder broncode)
- StoryTeller applicatie broncode en buildscript (voor het builden moet Apache Ant gebruikt worden)
Have fun!!!


