IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

API standards et tierces Java Discussion :

Nouvelle version RTFTemplate (moteur RTF en Java)


Sujet :

API standards et tierces Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de azerr
    Homme Profil pro
    Ingénieur Etude JEE/Eclipse RCP
    Inscrit en
    Avril 2006
    Messages
    942
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur Etude JEE/Eclipse RCP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 942
    Par défaut Nouvelle version RTFTemplate (moteur RTF en Java)
    Bonjour
    je vous annonce que j'ai mis en ligne une nouvelle version de RTFTemplate. RTFTemplate est un moteur RTF vers RTF. RTFTemplate a ete reconcu pour :

    1. mieux separer les etapes du processus de generation de RTFTemplate http://rtftemplate.sourceforge.net/f...hitecture.html
    2. configurer (avec Spring ou non) chacune des etapes en utilisant votre propre implementation
      http://rtftemplate.sourceforge.net/f...#Configuration de RTFTemplate
    3. choisir son moteur de template Velocity, Freemarker (en cours de dev)
    4. mieux gerer les performances des editions RTF http://rtftemplate.sourceforge.net/f...l#Optimisation du processus


    Vous pouvez touver la documentation RTFTemplate en anglais sur http://rtftemplate.sourceforge.net et en francais (ca en decourageait certain apperement qu'il ny' ait pas de doc en francais) sur http://rtftemplate.sourceforge.net/fr

    Angelo

  2. #2
    Candidat au Club
    Inscrit en
    Mars 2007
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 3
    Par défaut
    ulu_reunion a écrit :
    Citation:
    azerr a écrit :
    Je pense que tu devrais poster tes message sur le forum de developpez, pour que tout le monde profites de tes questions/problemes en repondant au message que j'ai mis http://www.developpez.net/forums/sho...d.php?t=277872
    Qu'en penses tu?

    Angelo

    Citation:
    lulu_reunion a écrit :
    Citation:
    azerr a écrit :
    Bonjour,
    Ca ne serait pa plutot lors de l'execution de RTFTemplate? RTFTemplate fait reference a d'autres libraries jar dont Spring (source de ton probleme). Ton probleme vient du fait que tu n'as pas inserer les librairies requises par RTFTemplate.
    Tu peux trouver ces librairies dans la distribution
    rtftemplate-1.0.1-b10/lib

    Angelo

    Citation:
    lulu_reunion a écrit :
    Bonjour azerr,
    Je voudrais utiliser RTFTemplate dans une appli java mais je coince sur la première ligne d'instruction : qui est dans l'exemple.

    Citation:
    RTFTemplateBuilder builder = RTFTemplateBuilder.newRTFTemplateBuilder();
    lors de la compile j'ai l'erreur suivante :

    Exception in thread "main" java.lang.NoClassDefFoundError : org/springframework/beans/factory/BeanFactory at montest.main.

    Ai-je oublié de déclarer une librairie sous Eclipse ?
    Merci de me répondre si tu as le temps

    Merci de ta réponse je venais juste de trouver le pourquoi en relisant les différents répertoires du dossier d'ou j'ai extrait la distrib.
    Je continue mes investigations pour incorporer ton produit dans mon projet...
    Ludji

  3. #3
    Invité de passage
    Profil pro
    Inscrit en
    Août 2008
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 1
    Par défaut
    Citation Envoyé par azerr Voir le message
    Bonjour
    je vous annonce que j'ai mis en ligne une nouvelle version de RTFTemplate. RTFTemplate est un moteur RTF vers RTF. RTFTemplate a ete reconcu pour :

    1. mieux separer les etapes du processus de generation de RTFTemplate http://rtftemplate.sourceforge.net/f...hitecture.html
    2. configurer (avec Spring ou non) chacune des etapes en utilisant votre propre implementation
      http://rtftemplate.sourceforge.net/f...#Configuration de RTFTemplate
    3. choisir son moteur de template Velocity, Freemarker (en cours de dev)
    4. mieux gerer les performances des editions RTF http://rtftemplate.sourceforge.net/f...l#Optimisation du processus


    Vous pouvez touver la documentation RTFTemplate en anglais sur http://rtftemplate.sourceforge.net et en francais (ca en decourageait certain apperement qu'il ny' ait pas de doc en francais) sur http://rtftemplate.sourceforge.net/fr

    Angelo
    SAlut angélo !
    c quoi la dernière version de RTFTemplate, et ya t-il impacte si on l'ingère à la place d'une antérieure !

  4. #4
    Membre Expert
    Avatar de azerr
    Homme Profil pro
    Ingénieur Etude JEE/Eclipse RCP
    Inscrit en
    Avril 2006
    Messages
    942
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur Etude JEE/Eclipse RCP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 942
    Par défaut
    Bonjour,

    La derniere version (qui date) de RTFTemplate est 1.0.1-b13.

    C'est a partir de la version 1.0.1-b8 qu'il y a eu d'enorme modification pour etre plus modulaire.

    Angelo

  5. #5
    Membre Expert

    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Novembre 2006
    Messages
    1 252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 252
    Par défaut
    Hello,

    Où en est le produit ? Il semble ne pas avoir évolué depuis 2 ans.

    A-t-on des retours d'expérience ?

    Quelles sont les alternatives pour produire du RTF à partir d'un modèle documentaire ?

    Thx !

  6. #6
    Membre Expert
    Avatar de azerr
    Homme Profil pro
    Ingénieur Etude JEE/Eclipse RCP
    Inscrit en
    Avril 2006
    Messages
    942
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur Etude JEE/Eclipse RCP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 942
    Par défaut
    Bonjour,

    Où en est le produit ? Il semble ne pas avoir évolué depuis 2 ans.
    J'ai arreté le projet car je suis sur d'autre projets (diverses contribution à Eclipse).

    A-t-on des retours d'expérience ?
    Personnelement je l'avais utilisé dans plusieurs projets et ca fonctionnait. Par contre RTFTemplate génère des documents simples (champs simple, listes de données, images...) mais si on souhaite gérer des rapports plus complexes (liste de liste avec des regroupement), RTFTemplate n'est pas adapté et il vaut mieux se tourner vers des produits de reporting comme Bird. Mais on perd la possibilité de crééer les documents avec MS Word.

    Pour info, si vous souhaitez utilisez le format OpenOffice ODT, il existe http://jodreports.sourceforge.net/ qui se base sur Freemarker et gère ODT comme ce que fait RTFTemplate avec RTF.

    Quelles sont les alternatives pour produire du RTF à partir d'un modèle documentaire ?
    Je ne suis plus trop à la page dans ce qui existe, mais j'avais créé RTFTemplate pour pouvoir créer ses modèles à partir de MS Word. Je ne connais aucun produit qui fasse ca.

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    350
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 350
    Par défaut
    Bonjour,
    J'ai essayé de suivre l'exemple de RTFTemplate :
    http://rtftemplate.sourceforge.net/f...plication.html (je veux le configurer avec une application java).

    J'ai créée mon document .rtf avec un champ de fusion.

    J'ai créée le fichier "test.fields.xml":
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <fields>
            <description><![CDATA[]]></description>
            <!-- Bookmark Pattern -->
            <bookmark>
                    <type>START_LOOP</type>
                    <name>START_LOOP_{i}</name>
                    <description><![CDATA[]]></description>
            </bookmark>
            <bookmark>
                    <type>END_LOOP</type>
                    <name>END_LOOP_{i}</name>
                    <description><![CDATA[]]></description>
            </bookmark> 
     
            <mergefield>
                    <list>false</list>
                    <listInfo>$champTest</listInfo>
                    <name>$champTest</name>
                    <description><![CDATA[]]></description>
            </mergefield>
    </fields>
    J'ai créée aussi la classe java :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    package test;
     
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.InputStream;
     
    import net.sourceforge.rtf.RTFTemplate;
    import net.sourceforge.rtf.UnsupportedRTFTemplate;
    import net.sourceforge.rtf.helper.RTFTemplateBuilder;
    import net.sourceforge.rtf.helper.test.RTFTemplateWithVelocityAndXmlFields;
     
    public class genererTemplateRtf {
     
    	public static void main(String[] args){
     
    		  String rtfSource = "C:/Sample.rtf";
    		  String rtfTarget = "jakarta-velocity-model.rtf.rtf";
     
    		  // 1. Get default RTFtemplateBuilder
    		  RTFTemplateBuilder builder = RTFTemplateBuilder.newRTFTemplateBuilder();            
     
    		  // 2. Get RTFtemplate with default Implementation of template engine (Velocity) 
    		  RTFTemplate rtfTemplate = null;
    		try {
    			rtfTemplate = builder.newRTFTemplate();
    		} catch (UnsupportedRTFTemplate e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}    
     
    		  // 3 Load XML fields available and set it to the RTFTemplate
    		  InputStream xmlFieldsStream = RTFTemplateWithVelocityAndXmlFields.class.getResourceAsStream("test.fields.xml");
    		  rtfTemplate.setXmlFields(xmlFieldsStream);
     
     
    		  // 4. Set the RTF model source 
    		  try {
    			rtfTemplate.setTemplate(new File(rtfSource));
    		} catch (FileNotFoundException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}  
     
    		  // 5. Put the context           
    		  rtfTemplate.put("champTest", "kokokokokoko");
     
     
    		  // 6. Merge the RTF source model and the context  
    		  try {
    			rtfTemplate.merge(rtfTarget);
    		} catch (Exception e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
     
     
    	}
     
    }
    Lors de l'exécution, j'obtiens une erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    og4j:WARN No appenders could be found for logger (org.springframework.context.support.ClassPathXmlApplicationContext).
    log4j:WARN Please initialize the log4j system properly.
    Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'ftlTransformer' defined in class path resource [net/sourceforge/rtf/rtftemplate-config.xml]: Instantiation of bean failed; nested exception is java.lang.NoSuchMethodError: org.apache.commons.beanutils.BeanUtils.setProperty(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:883)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:839)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:440)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
    	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
    	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
    	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
    	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
    	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
    	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)
    	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)
    	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380)
    	at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
    	at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83)
    	at net.sourceforge.rtf.helper.RTFTemplateBuilder.newRTFTemplateBuilder(RTFTemplateBuilder.java:45)
    	at test.genererTemplateRtf.main(genererTemplateRtf.java:20)
    Caused by: java.lang.NoSuchMethodError: org.apache.commons.beanutils.BeanUtils.setProperty(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V
    	at org.apache.commons.digester.BeanPropertySetterRule.end(BeanPropertySetterRule.java:198)
    	at org.apache.commons.digester.Digester.endElement(Digester.java:1332)
    	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:601)
    	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1774)
    	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2930)
    	at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
    	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
    	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
    	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
    	at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
    	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
    	at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
    	at org.apache.commons.digester.Digester.parse(Digester.java:1887)
    	at net.sourceforge.rtf.document.transformer.config.DigesterTransformerConfig.getTransformerConfig(DigesterTransformerConfig.java:71)
    	at net.sourceforge.rtf.document.transformer.config.DigesterTransformerConfig.getTransformerConfig(DigesterTransformerConfig.java:32)
    	at net.sourceforge.rtf.template.AbstractRTFDocumentTransformer.<clinit>(AbstractRTFDocumentTransformer.java:38)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    	at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
    	at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:100)
    	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:61)
    	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:877)
    	... 17 more
    SVP pouvez-vous m'aider?
    Merci d'avance.

Discussions similaires

  1. Réponses: 2
    Dernier message: 28/10/2009, 19h28
  2. Réponses: 0
    Dernier message: 25/10/2009, 16h27
  3. Nouvelle version de l'index Java en ligne
    Par Baptiste Wicht dans le forum Général Java
    Réponses: 3
    Dernier message: 17/05/2009, 23h23
  4. Problème d'affichage avec la nouvelle version Java
    Par anadoncamille dans le forum 2D
    Réponses: 26
    Dernier message: 25/01/2009, 23h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo