Бих искал да използвам xml източник на данни в jasper server (5.0.0). Xml файловете се създават „в движение“, докато приложението работи, така че различните отчети ще имат различни източници на xml данни. Знам, че сървърът на jasper няма дефиниран XML източник на данни, но открих, че създаването на отчет без източник на данни и след това предаването на параметър XML_FILE - java.io.File ще свърши работата. Успях да направя това в java servlet:
jasperReport = JasperCompileManager.compileReport("path to jrxml");
HashMap map = new HashMap();
map.put("XML_FILE", new File(xmlSourceFile));
jasperPrint = JasperFillManager.fillReport(jasperReport,map);
byte [] o = JasperExportManager.exportReportToPdf(jasperPrint);
но за съжаление не успя да го направи на сървъра на jasper. Използвам услуги за почивка, за да изготвя отчет, така че мога да използвам само параметри на низ. Опитах се да напиша скриптлет, който преобразува String параметър с xml url в java.io.File
public class XmlScriplet extends JRDefaultScriptlet{
@Override
public void beforeReportInit(){
try {
String param = (String)this.getParameterValue("fileName");
HashMap map = new HashMap();
map.put("XML_FILE", new File(param));
this.parametersMap.putAll(map);
} ...
но това ми дава празен отчет. Благодаря ви предварително.