Skip to main content

Blog Archive for kohsuke during August 2005

Friday has always been a good time for making performance improvements for me, for some reason. Today, its target was javax.xml.datatype.XMLGregorianCalendar class. One of our internal benchmark identified this as a hotspot for JAXB, because when a schema uses xs:dateTime or some such datatype, we're binding it to XMLGregorianCalendar. So I looked at its parsing code and the printing code. On...
Ryan and I launched another service to make it easy to own a project in java.net. One of the things that we didn't like about java.net is the mailing list moderation policy. To protect lists from spam, you need to mark a list as "moderated" to indicate that the posting can be only done by subscribers. But if you do this, and someone sends a message to a list without subscribing, they won't get...
When you are working with JAXB-bound classes, it's sometimes convenient to be able to parse those JAXB annotations by yourself. For example, some people are interested in implementing a subset of XPath engine on top of JAXB beans; Some other people are interested in writing a Swing JTable adapter for JAXB objects. When doing this kind of stuff, you'd like to know answers for questions like "does...
The initial version of the JAXB RI unmarshaller was written for 1.0 for more than 2 years ago, and that was based on my experience working with a databinding tool called RELAXNGCC. The idea was to build a push-down automaton by using XML events as alphabets. This was very flexible, in that it can capture most of the RELAX NG grammar (such as a choice between attributes, or a choice between an...
ID/IDREF has been with XML since its very first day. It works nicely with databinding tools, because it's easy to do a type analysis with ID/IDREF In this regard, key/keyref in XML Schema is much worse --- in general it's not even possible to determine how a given key/keyref constraint maps to which field/method of an object. ID/IDREF is great, but it is sometimes too simple. For example,...
Nowadays many Java tools need to access HTTP resources. For example, Ant has a <get> task, Maven needs to download jar files, javadoc needs to locate package-list from a remote site, JAX-WS's WsImport reads WSDL from a remote website, and JAXB's schema compiler does the same for schema files. The list could go on forever. So first let's look at how these tools support proxies? Ant With Ant...
Today, I've heard from JAXB's internal customers that they had a successful transition from JAXB 1.0 to 2.0. It was from Rebecca Searls, who's working on the migration tool of Sun Java System Application Server 8. I'm not particularly familiar with what this tool does, but it's a tool that helps you to migrate from other vendor's app server to Sun's app server. Such a migration involves in...
Good commenting always make it easier to understand the source code (although people have different opinions about what exactly is good comments.) As such, one of the things we've been doing is to make sure that the JAXB RI source code is well commented. This is mostly done by javadoc, which is good for describing lower-level details of the code. It's also nice for a project to have a higher-...