Ajouter un commentaire

totoro
[WSAD JDOM Struts] Incompatible argument to method

Bonjour à tous je commence tout juste a utiliser Struts et je n'arrive pas mettre à jour un fichier xml
en utilisant jdom

Voici mon erreur :
Error 500: (class: sentinelle/configxml/AjoutServerXml, method: ajoutServer signature: ()LFormServeur;) Incompatible argument to method

mon actionForm :

import java.io.File;
import java.io.FileOutputStream;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import sentinelle.configxml.AjoutServerXml;
import sentinelle.configxml.TestAjoutXml;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.jdom.*;
import org.jdom.input.SAXBuilder;
import org.jdom.output.*;

public class FormActionXml extends Action{
   
    static Element racine;
    static org.jdom.Document document;
       
    public ActionForward execute(ActionMapping mapping, ActionForm _form, HttpServletRequest request, HttpServletResponse response) {

                ActionForward retour = null;
                AjoutServerXml ajoutServerXml = new AjoutServerXml();                                     
                try{         
                    if(!formServeur.getUser().equals("")){
                        ajoutServerXml.buildListeServer();          
                        retour = mapping.findForward("lecture");
                    }
                    else{
                        retour = mapping.findForward("erreur");
                    }
               
                }
                catch (Exception e) {
                    e.printStackTrace();
                    //retour = mapping.findForward("erreur");
                }                           
                return retour;
        }   
}

et ma classe pour contruire mon fichier xml :
package sentinelle.configxml;
import java.io.*;
import java.util.ArrayList;

import org.jdom.*;
import org.jdom.input.SAXBuilder;
import org.jdom.output.*;
import FormServeur;

public class AjoutServerXml{

    static Element racine;
    static org.jdom.Document document;
   
    public FormServeur buildListeServer()
    {
       
    //On crée une instance de SAXBuilder
    SAXBuilder sxb = new SAXBuilder();
        try
        {
        //On crée un nouveau document JDOM avec en argument le fichier XML
         document = sxb.build(new File("D:\\WSAD\\ServerParameterXML.xml"));         
         }
          catch(Exception e)
        {       
        System.out.println("Fichier non trouver : " + e);                  
        }
            //On initialise un nouvel élément racine avec l'élément racine du document.
          racine = document.getRootElement();
 
          return ajoutServer();
        }
       
    public FormServeur ajoutServer()
    {
   
     Element requete = new Element("requete");
     racine.addContent(requete);
   
     Attribute serveur = new Attribute("serveur",ajoutServer().getServerNom());
     requete.setAttribute(serveur);

     /*-------------URL---------------------------*/
     Element urls = new Element("urls");
     
     
     Element url = new Element("url");
     Attribute adresse = new Attribute("adresse",ajoutServer().getUrlNom());
     url.setAttribute(adresse);
     url.setText(ajoutServer().getAdresseHttp());
     urls.addContent(url);
     
     requete.addContent(urls);
     
     /*-------------database---------------------*/
     Element database = new Element("database");
     Attribute type = new Attribute("type",ajoutServer().getTypeDatabase());
     database.setAttribute(type);
     
     Element driver = new Element("driver");
     driver.setText(ajoutServer().getDriver());
     database.addContent(driver);
     
     Element adresseServer = new Element("adresse");
     adresseServer.setText(ajoutServer().getAdresseServer());
     database.addContent(adresseServer);
     
     Element hostname = new Element("hostname");
     driver.setText(ajoutServer().getDriver());
     database.addContent(hostname);
     
     Element dbname = new Element("dbname");
     dbname.setText(ajoutServer().getDbname());
     database.addContent(dbname);
     
     Element user = new Element("user");
     user.setText(ajoutServer().getUser());
     database.addContent(user);
     
     Element login = new Element("login");
     login.setText(ajoutServer().getPassword());
     database.addContent(login);
     
     Element requetesql = new Element("requetesql");
     requetesql.setText(ajoutServer().getRequetesql());
     database.addContent(requetesql);
     
     requete.addContent(database);
 
     enregistre("D:\\WSAD\\ServerParameterXML.xml");
   
    return ajoutServer();
 
    }

    static void enregistre(String fichier)
    {
       try
       {       
          XMLOutputter sortie = new XMLOutputter(Format.getPrettyFormat());
          sortie.output(document, new FileOutputStream(fichier));
       }
       catch (java.io.IOException e){}
    }

}

Un grand besoin d'aide merci![/code]

Filtered HTML

Plain text

CAPTCHA
Cette question permet de vérifier que vous n'êtes pas un robot spammeur :-)
 V     V   CCC  RRRR   H  H  III 
V V C R R H H I
V V C RRRR HHHH I
V V C R R H H I
V CCC R RR H H III