Creating a domain specific language with XML-Schema and JAX-B
Here at scoyo we use the Magnolia CMS to manage our website content. It's a quite nice tool based on the Content Repository API for Java (JCR) (JSR-170). In this blog post I want to tell you a little more about a small domain specific language, which I created to manage the migration of content and configuration of our Magnolia CMS installation, using XML-Schema, JAX-B and the facilities of the CMS.
New jaev Release
Today I made a new release of the jaev Framework for "advanced" e-mail validation. After being in productive use for quite some month now it was about time to offer a bugfix release. Some issues with domains containing no MX but an A DNS record where resolved. E-mail belonging to this kind of domains will now be accepted. An issue with a file handle leak due to unclosed UDP connections during the DNS lookup was also fixed.
Due to the generosity of Google I got a nice Google wave test account. Now I am looking desperately to some spare time to evaluate the integration of jaev to the wave. One idea is to expand the validation to wave addresses via the wave protocol. Maybe an online validation as wave bot is another exciting idea.
jaev 1.0 released
After some weeks the third release candidate of the jaev was the final one yesterday.
The jaev framework is in productional use at least one installation and no major problems where filed so far. I'm keeping my fingers crossed
I am working already on some new features:
- Caching negative responses of mail servers
When a mail server refuses communication due to suspected spam, the result will be cached to reduce network traffic. - Suggest e-mail addresses
When the validation fails suggest a list e-mail addresses. This algorithm may use the previous request and a default list of domains to compute some suggestions.
If you have any good ideas, file them on the issue tracking system or the google group.
Maybe I am applying for a google wave developer sandbox access to provide a google wave robot for online e-mail suggestion. Bah, that sounds like some work
Mavenizing a Flex build
In the last week the release 1.0 platform release of scoyo came close and we were tying up some loose ends. One of these ends was the integration of the scoyo Flash/Flex portal build process into the platform build process.
The platform build process is realized with Apache Maven, which is, in humble my opinion, still the first choice for Java based software projects, but integrating other project types into maven is a kind of challenging due to the nature of Maven. You may summarize this in: If you do it the maven way it's very easy, if you don't it is up to you ...
Luckily there was already an existing build with Ant and a dysfunctional Maven variant with the Maven Flex-mojos plugin. So it stated my journey to insanity an back ...
Getting closer to 1.0
This afternoon I spend some time to take the jaev Framework closer to the 1.0 final release.
Rethinking logging
Recently I discovered something new about a thing I am using on an every day basis like most of the software engineers. It's about logging. You may ask: "What is so exiting about logging?"
In my opinion logging is one of the underestimated aspects of software development. Everyone uses it, but only very few are using it right.
Logging is the bridge between the development phase and the operational phase in the software life cycle. If you do it right it may provide valuable informations about the inner workings of an application.
I'am using log4j for quite a while. I am not sure when the framework was created by Ceki Gülcü, but log4j was the straight edge for java logging in the recent years. Unfortunately it became very quite around the log4j project recently.
The name is jaev …
The name of who/what is jaev? The jaev framework is my first open source project! Jepp, I joined the community and giving something back after years of using the frameworks of other people.
What does jaev do? The name jaev is the abbreviation for java (advanced) email validation. So the framework does validate e-mails. Sounds quite boring, isn't it? Of course not!
This is strange …
Wednesday was my last day working day at my old job. It was quite a strange feeling when I left the building. On my way out I made a small round just to say a quick goodbye to some very nice colleagues. Unfortunately I missed a couple of very close ones, but I decided against staying any longer ...
Excited about Tapestry 5.1
One of the blogs I am reading on a regular basis is the Tapestry Central blog from Howard Lewis Ship the founder and lead developer of the Tapestry framework. It alreaded provided some really nice ideas and introduced me into some really interesting topics.
So this weekend I read the article about some new Features of the 5.1 Version of the Tapestry framework ...