Sunday, April 27, 2008

2008-04-27 Sunday

Berkman Center for Internet & Society at Harvard Law School
Clay Shirky: Here Comes Everybody: The Power of Organizing Without Organizations

Secret Pre-Release Details On Windows XP Service Pack 3

Interview with Donald Knuth
"Andrew Binstock and Donald Knuth converse on the success of open source, the problem with multicore architecture, the disappointing lack of interest in literate programming, the menace of reusable code, and that urban legend about winning a programming contest with a single compilation"

"...Can you give some examples that are currently in vogue, which developers shouldn’t adopt simply because they’re currently popular or because that’s the way they’re currently done?..."

"...let me just say that almost everything I’ve ever heard associated with the term "extreme programming" sounds like exactly the wrong way to go...with one exception. The exception is the idea of working in teams and reading each other’s code. That idea is crucial, and it might even mask out all the terrible aspects of extreme programming that alarm me."

"I also must confess to a strong bias against the fashion for reusable code. To me, "re-editable code" is much, much better than an untouchable black box or toolkit. I could go on and on about this. If you’re totally convinced that reusable code is wonderful, I probably won’t be able to sway you anyway, but you’ll never convince me that reusable code isn’t mostly a menace."

JOHN DVORAK: The Microsoft mesh mess: Companies are confusing software with delivery mechanism
Microsoft Corp.'s constant dabbling and toying with the idea that shrink-wrapped software, its bread and butter, is dead will lead to eventual ruin. Microsoft is a software company, the most successful in the world, and it acts like a cow that must incessantly nibble the "better" grass outside the fence.

Now the Redmond giant has been suckered into believing that software as a service is the wave of the future. The logic of this conclusion is simple: Since it's all everyone is talking about, must be true.

JAXB 2.1.6
Java Architecture for XML Binding (JAXB)

Java TM Architecture for XML Binding readme

Java Architecture for XML Binding (JAXB) FAQs

JAXB 2.0 Runtime Library javadoc

Unofficial JAXB Guide

Forum: Metro and JAXB

JAXB RI Architecture Document

Java EE 5 Tutorial: Chapter 17: Binding between XML Schema and Java Classes

Last week I established a process within a client SOA project to generate Java classes based on XSD schemas for our Enterprise Archtiecture SOA infrastructure project.

  • I integrated the Ant task for the xjc compiler from the JAXB 2.1.6 Reference implementation and compiled the Java classes

  • I also added an ant task to the build.xml to build a Jar file to simplify later reuse by our Continuous Integration Build process (Hudson) when other sub-projects / components within the system get their builds kicked-off based on Subversion check-ins.

  • I also added a check-out to the build.xml for the main core architecture framework - so that it will retrieve the Jar of the message classes generated from the XSDs.

  • Very clean and Simple.

    We are using JDK 1.5.x for the majority of the client development effort (due to some vendor library/application integration dependencies). However, in my own development lab, I am using JDK 1.6.

    And that is what brings me to this posting tonight:

    Problems using JAX-WS 2.1 and JAXB 2.1 with JDK 6?

    Thread: LinkageError: JAXB 2.0 API is being loaded from the bootstrap classloader

    7.1. Migrating JAXB 2.0 applications to JavaSE 6

    Basically, you can simply do the following:

    7.1.2. Using JAXB 2.1 with JavaSE 6
    JavaSE 6 comes with JAXB 2.0 API in rt.jar. Therefore, using JAXB 2.1 with JavaSE 6 requires one to override a portion of rt.jar with the new API. There are several ways to do this:

    Place the 2.1 jaxb-api.jar into $JRE_HOME/lib/endorsed. This essentially makes your JRE to "JRE 6 + JAXB 2.1". This won't affect any other applications that use this JRE, and it's easy. On the other hand, in various scenarios you may not be able to alter the JRE.

    Spring Batch
    I've made some good progress in my efforts to develop a deeper understanding of the Spring Batch framework - I have been working with the 1.0 FINAL release. Within the next 2-3 weeks I will write-up a Spring Batch - Beginner How-To and post it online.

    Enterprise Architect 7.1 build 829
    Tonight I downloaded and installed the latest build/release of Sparx Systems Enterprise Architect. I introduced this tool to my current client - and we have had a generally very positive experience.

    I first used EA back in 2004 while leading the design and development of a commercial Anti-Money Laundering product (using VERY early releases of various Java Server Faces component libraries and tools).

    I highly recommend it - especially as a central repository mechanism for all design artifacts, requirements, user acceptance tests, data models, use cases, class models, etc. (The corporate edition offers a database repository feature).

    No comments: