/* * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. * * Copyright 2008 jOpenDocument, by ILM Informatique. All rights reserved. * * The contents of this file are subject to the terms of the GNU * General Public License Version 3 only ("GPL"). * You may not use this file except in compliance with the License. * You can obtain a copy of the License at http://www.gnu.org/licenses/gpl-3.0.html * See the License for the specific language governing permissions and limitations under the License. * * When distributing the software, include this License Header Notice in each file. * */ package org.jopendocument.sample; import java.awt.FileDialog; import java.awt.Frame; import java.io.File; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.swing.UIManager; import org.jopendocument.dom.OOUtils; import org.jopendocument.dom.template.RhinoFileTemplate; public class TestGeneration { public static void main(String[] args) { // new FileTemplate(new File("WWF-Kurseinladung.odt")).createDocument(new // HashMap()).saveAs(new File("out")); // Set the platform L&F. try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (Exception e) { e.printStackTrace(); } // Load FileDialog dialog = new FileDialog(new Frame(), "Open", FileDialog.LOAD); dialog.setFile("*.odt"); dialog.setLocationRelativeTo(null); dialog.setVisible(true); String file = dialog.getFile(); if (file != null) { if (dialog.getDirectory() != null) { file = dialog.getDirectory() + System.getProperty("file.separator") + file; } try { File templateFile = new File(file); File outFile = new File("target/template/out2.odt"); RhinoFileTemplate template = new RhinoFileTemplate(templateFile); template.setField("title", "title"); template.setField("toto", "toto"); template.setField("courseDate", "courseDate"); final List<Map<String, String>> infos = new ArrayList<Map<String, String>>(); infos.add(createMap("January", "-12")); infos.add(createMap("February", "-8")); infos.add(createMap("March", "-5")); template.setField("infos", infos); template.setField("months", infos); template.hideParagraph("p1"); // Save to file. outFile = template.saveAs(outFile); // Open the document with OpenOffice.org ! OOUtils.open(outFile); } catch (Exception e) { e.printStackTrace(); } } } static Map<String, String> createMap(String n, String m) { final Map<String, String> res = new HashMap<String, String>(); res.put("name", n); res.put("value", m); return res; } }