JTrac can be installed in a few minutes without having to type any commands and you don't even need to set-up a database. Configuring an e-mail server for notifications is something easily done through the user interface. One of the reasons why many people choose JTrac over other open-source issue trackers or bug trackers is because of how easy it is to set up.
JTrac is also written from the ground up to make use of the very best and latest in Java. For example JTrac is developed using JDK 5.0 features, uses Apache Wicket, Spring and Hibernate and has full internationalization support.
JTrac is designed to be able to handle requirements management in the future and this an area where there is a clear lack of open source tools that support the needs of agile development teams. JTrac also has flexible workflow capabilities and offers a rare level of control over field-level permissions.
The presentation layer is using the Apache Wicket framework.
The service layer uses the Spring Framework. Also the Acegi Security framework for Spring has been used. JTrac is effectively a "light-weight" Java EE application and any version 3.1 compliant servlet engine is sufficient for deployment.
Hibernate is used for data persistence. This allows for JTrac to be database neutral and any database supported by Hibernate can be used.
There was an earlier version of JTrac which used to be hosted at jtrac.dev.java.net. That project was called "jTrac" (with a lowercase 'j') and it was based on Spring JDBC and MS Access. JTrac was completely re-written to use Spring and Hibernate - and the 2.0 version number reflects this.
username: admin
password: admin
Of course, it is recommended that you change the default password as soon as possible!
We welcome code contributions in the form of patches which you can submit here. JTrac has a detailed developer guide which can get you up and running even if you are new to Java development.
Do consider contributing a translation which is very easy to do and does not require any knowledge of Java at all. You can refer to this section of the developer guide for details.
Read the section on interim builds on how you can help by testing the development builds.
HSQLDB is surprisingly resilient and we have an instance of JTrac running in the place where I work that over a span of 2 years has accumulated more than 2000 items across multiple spaces with around 200 users. The database file has grown beyond 10MB but there are still no signs of problems and the application screens still load fast.
But depending on what you are comfortable with, you can consider moving to another database if your usage is really high. The upgrading section of this document has details on how you can migrate data from HSQLDB to other databases such as MySQL.
This is very easy and does not require any Java programming knowledge. You just need to edit a couple of HTML files and place any needed resources like images in the right place. Have a look at the section on customizing look and feel in the developer guide.
JTrac provides an ample number of custom fields which can be used for all kinds of tracking needs. In very rare cases where people run out of custom fields, it is invariably for "free text" fields. The limit on custom fields is primarily for performance reasons especially where filtered searches are involved. So when JTrac introduces the feature of being able to "tag" items, these kinds of things are likely to be covered.
Anyway, if you really, really want more custom fields, the JTrac code is very clean and you can easily customize a version that meets your requirements. A few people have reported having done this and for example - this forum thread can help you get started.
Use the SourceForge trackers here:
Feature Requests: https://sourceforge.net/p/j-trac/feature-requests/
We are just trying to use the SourceForge infrastructure as far as possible and the activity on the SourceForge trackers translates into higher rankings which is important for project visibility. At this point, we would rather not get into the details of hosting an instance of JTrac on the internet.