views:

351

answers:

1

My problem is to generate version 1 UUIDs. We use Jetty 6.x, Maven (to start Jetty among other things) and Apache Commons ID (to generate UUID version 1 from the current time).

Apache Commons ID requires a configuration file that is told to the JVM, using a parameter, e.g. 'org.apache.commons.id.uuid.config.resource.filename=commons-id-uuid.xml'. I checked the Apache Commons ID code and it tries to find the file from the classpath. Jetty's documentation states that WEB-INF/lib and WEB-INF/classes are in the classpath. The 'commons-id-uuid.xml' can be found from the deployed war file from the root of WEB-INF/classes directory but Jetty cannot load it:

Message: java.lang.RuntimeException: 
java.lang.IllegalStateException: commons-id-uuid.xml loaded as system resource is null

Jetty was started using the following command:

mvn jetty:run -Dorg.apache.commons.id.uuid.config.resource.filename=commons-id-uuid.xml

Any idea what is going wrong? We just need to generate UUID version 1 identifiers. Any suggestions?

+1  A: 

There are at least 2 better UUID generation libraries than apache commons one:

which do not require xml config files. Maybe consider one of them instead?

StaxMan
Thanks for the information! Actually we didn't resolve the problem, since we changed the database to another one. However, this is something we need to resolve this particular problem in the future. Thanks for this tip!
Pekka Mattila