Mamy sobie projekt zarządzany za pomocą Mavena, edytowany w Eclipse w którym to projekcie jesteśmy zmuszeni korzystać z Jasper Reports. Sam silnik JR jest bardzo fajny i mi osobiście strasznie się podoba. W połączeniu z Eclipsem wychodzą niestety wszystkie wady tego ostatniego.
Eclipse nie ma dobrego edytora wizualnego. Nigdy nie miał i jest to jego poważna przypadłość. Plugin JR kontynuuje tą złą tradycję. Zaczyna dodawać swoje atrybuty, jakieś cuda z edycją szablonów… generalnie ssie. Jeżeli nie chcemy użerać się z tym pluginem wystarczy użyć zwykłego edytora xml, który jest w Eclipse. No nie do końca… Pliki szablonów JR mają rozszerzenie jrxml, które jest traktowane w edytorze jako niewłaściwe. Nic nie pomaga kojarzenie plików z edytorem w konfiguracji. Po prostu edytor XML po załadowaniu pliku z rozszerzeniem innym niż xml zachowuje się jak zwykły notatnik.

Mamy jednak do dyspozycji Mavena i jego mechanizm pluginów:

Listing 1. Konfiguracja pluginu kompilatora JR

<plugin><groupid>org.codehaus.mojo</groupid><artifactid>jasperreports-maven-plugin</artifactid><version>1.0-beta-2</version><configuration><outputdirectory>target/jasperreports/compiled</outputdirectory><xmlvalidation>true</xmlvalidation><sourcedirectory>src/main/resources/jasperreports</sourcedirectory><sourcefileext>xml</sourcefileext></configuration><executions><execution><goals><goal>compile-reports</goal></goals><phase>compile</phase></execution></executions></plugin>

Nas interesuje opcja sourceFileExt, która pozwala na określenie jakie rozszerzenie ma plik z szablonem raportu. Dzięki temu można użyć plików z rozszerzeniem xml, które są prawidłowo edytowane w Eclipse.