FAQ XMLRADConsultez toutes les FAQ

Nombre d'auteurs : 4, nombre de questions : 55, dernière mise à jour : 26 octobre 2006 

 
OuvrirSommaireGénéralités

XMLRAD est un environnement de développement Web basé sur la technologie XML/XSL, c'est à dire que les pages HTML sont générés par transformation d'un document XML par un XSL. le document XML est généré en général par extraction de données d'une base de données SQL.

L'environnement permet de créer des écrans à partir de description d'extraction de la base de données. très peu de code est à faire pour obtenir cela. Les applications que XMLRAD génère sont dites dirigées par les données.

XMLRAD s'associe aux environnements de développement tel que Delphi, Kylix, Borland C++Builder, Visual Studio .NET, JBuilder, Eclipse et permet de générer des applications pour les plateformes Windows (Win32), .NET et Linux avec les Serveurs Web IIS ou Apache.

Créé le 7 septembre 2004  par RDM

Le principal problème pour migrer les applications est de gérer les nouveaux pools.

  • Le fichier AdmXMLModules.xml doit être maintenant intégré dans le fichier XMLModules.xml
 
Sélectionnez

<XMLModules>
  <XMLModule>
    <Name>dmdXMLAdm</Name>
    <XMLPath>XML\Adm</XMLPath>
    <Import>
      <HRef>dmdXMLAdm.XMLServices.xml</HRef>
      <NodePath>/XMLServices</NodePath>
    </Import>
  </XMLModule>
  ...
</XMLModules>
  • Enregistrez votre projet dans XMLRAD 2005.
  • Dans XMLRAD, assignez tous les XMLModules dans au moins le pool User. Sur l'écran de configuration du XMLModule, cliquez sur le bouton Options, sélectionnez le pool User et cliquez sur plus.
  • le module dmdXMLAdm doit être assigné au pool XMLCAdm
  • Dans l'écran de configuraition du datasource, cliquez sur le bouton Options, sélectionnez le pool User et cliquez sur plus.
  • Copiez du Repository \e-delos\XMLRAD\Bin\Repository\XML\* dans le répertoire \Bin\XML de votre application.
  • Copiez du Repository \e-delos\XMLRAD\Bin\Repository\XML\Adm\* dans le répertoire \Bin\XML\Adm de votre application.
  • Copiez du Repository \e-delos\XMLRAD\Bin\Repository\XML\XMLC\* dans le répertoire \Bin\XML\XMLC de votre application.
  • Si vous utilisez Delphi pour coder les gestionnaires d'événements, recompilez votre projet.
  • Si vous utilisez le scripting, remplacez votre dll de projet avec celle qui se trouve dans \e-delos\XMLRAD\Bin\Repository\Common\Bin\IIS\XMLServer.dll. Renommez la en votre nom de projet.
  • Config.xml
  • dmdXMLAdm.XMLServices.xml
  • EventLog.xml
  • Hooks.xml
  • Pools.xml
  • Profiles.xml
  • XDBServerWM.XMLServices.xml
  • XMLMailWM.XMLServices.xml
  • XMLMessengerWM.XMLServices.xml
  • XMLProfileWM.XMLServices.xml
  • XMLSecurityWM.XMLServices.xml
  • XMLUtilsWM.XMLServices.xml
  • Le fichier AdmXMLModules.xml peut être maitenant supprimé.
  • Copiez du Repository \e-delos\XMLRAD\Bin\Repository\Common\Config\ les fichiers suivants dans le répertoire Bin de l'application à migrer:

NB: Si vous avez une erreur du style "Component X not found", vérifiez si votre XMLModule contenant le XMLService X est assigné à un pool (comme User).

Créé le 7 décembre 2004  par RDM

A partir de la version 2005 R2, XMLRAD intègre un module d'importation automatique des applications faites avec des versions précédentes.

Pour ce faire, faites register project dans XMLRAD et indiquez le chemin d'accès au fichier de configuration principal (Config.xml ou <nom du projet>.xml). L'écran suivant essaye de détecter la version de XMLRAD avec laquelle l'application a été générée. Vous pouvez modifier si ce n'est pas correct. Puis, vous avez un ensemble d'option de migration:

  • Upgrade Binary: Met à jour la DLL de l'application ou du framework. Cochez cette case si vous êtes en Scripting, en .NET ou en Java.
  • Upgrade XML configuration files: Met à jour les fichier de configuration XML (InitParams, XMLModules.xml, ...). Il est conseillé de laisser cette case cochée.
  • Upgrade Adm Directory: Met à jour le répertoire Adm avec toutes les actions d'administration. Il est conseillé de laisser cette case cochée sauf si vous avez modifié un écran comme XMLC_FormLogin.
  • Upgrade xslc.xsl: Met à jour le fichier xslc.xsl en l'écrasant avec la nouvelle version. Si vous avez modifié xslc.xsl, ne cochez pas cette case et faites la mise à jour à la main.
  • Upgrade XMLC Directory: Met à jour le répertoire XMLC avec toutes les actions du framework (XMLC_*). Il est conseillé de laisser cette case cochée.
  • Create a quick backup before Upgrade: Crée une sauvegarde de votre projet avant d'effectuer la mise à jour. Il est conseillé de laisser cette case cochée.

Pour .NET, Java et Delphi, il est nécessaire de recompiler votre application pour prendre en compte les modifications du framework.

Pour Java, le répertoire WEB-INF ayant bougé du répertoire du projet vers Bin, il vous faut retirer le répertoire Bin dans l'appel à System.load: voilà a quoi doit ressembler la méthode init:

Java
Sélectionnez
if (!loaded)
{
ServletContext context = config.getServletContext();
String path = context.getRealPath("/");
if (System.getProperty("os.name").startsWith("Windows")) 
System.load(path+"/XMLCLX.dll");
else
System.load(path+"/XMLCLX.so");
loaded = true;
}
Créé le 12 octobre 2005  par RDM

Le Context est un objet du framework XMLCLX qui peut être assimilé a une sorte de pot de données. Nous y versons, ou bien le framework le fait pour nous, des données provenant de sources diverses: Paramètres HTTP, cookies, enregistrements de base de données, variables, constantes, etc.

Techniquement c'est une liste d'association de noms et de valeurs. Pour ceux qui ont déjà travaillé avec les conteneurs Java ou C++, le Context est une Map.

Le Context est initialisé par le framework au début de la requête HTTP avec les paramètres HTTP, les cookies et quelques valeurs du framework.

Les enregistrements de base de données y passent aussi lors des extractions et les paramètres de requêtes sont pris de cet objet.

On peut accéder au Context et aux données qui s'y trouvent à partir des gestionnaires d'événements. Pour récupérer une valeur on utilise la méthode GetValue:

Delphi
Sélectionnez

  Value := Context.GetValue('Prenom');
JSCript
Sélectionnez

  Value = Context.GetValue("Prenom");
C#
Sélectionnez

  Value = Context.GetValue("Prenom");
Java
Sélectionnez

  Value = context.getValue("Prenom");

pour y stocker une valeur on utilisera la méthode SetValue:

Delphi
Sélectionnez

  Context.SetValue('Prenom', 'Jean-Philippe');
JScript
Sélectionnez

  Context.SetValue("Prenom", "Jean-Philippe");
C#
Sélectionnez

  Context.SetValue("Prenom", "Jean-Philippe");
Java
Sélectionnez

  context.setValue("Prenom", "Jean-Philippe");

pour plus d'info sur l'utilisation du Context: Le Context ou comment transmettre des valeurs d'une page à l'autre

Créé le 24 novembre 2005  par RDM

Lien : Le Context ou comment transmettre des valeurs d'une page à l'autre

L'OutputDoc est un document XML qui est généré par tout XMLService. Ce document XML contient les donnes propres aux XMLServices et le résultat de l'execution des instructions du XMLGram. Ce document est utilisé pour générer la page HTML à l'aide du fichier XSL associé au XMLService.

Voici un exemple d'OutputDoc:

 
Sélectionnez

<document>
<XMLC_Params>
<XMLC_Date>2004/12/22 22:40:07</XMLC_Date>
<XMLC_RequestNo>13</XMLC_RequestNo>
<XMLC_XMLModule>PubsWM</XMLC_XMLModule>
<XMLC_Action>Listpublishers</XMLC_Action>
<XMLC_NavigatorName>Mozilla</XMLC_NavigatorName>
<XMLC_NavigatorVersion>5</XMLC_NavigatorVersion>
<XMLC_InstanceName>Pubs</XMLC_InstanceName>
<XMLC_HTTPS>0</XMLC_HTTPS>
<XMLC_Host>amaryl</XMLC_Host>
<XMLC_ScriptName>/DemosBin/Pubs/Bin/Pubs.dll</XMLC_ScriptName>
<XMLC_InputParams/>
<XMLC_NavigationParams/>
<XMLC_AbsolutePortal>0</XMLC_AbsolutePortal>
<XMLC_Portal>SharedPortal</XMLC_Portal>
<XMLC_Skin>graylight</XMLC_Skin>
<XMLC_Pictos>msn</XMLC_Pictos>
<XMLC_TrapJavascriptError/>
<XMLC_DisplayTabControl>1</XMLC_DisplayTabControl>
<XMLC_DisplayTabs>1</XMLC_DisplayTabs>
<XMLC_DisplayToolbar>0</XMLC_DisplayToolbar>
<XMLC_DisplayPageTitle>1</XMLC_DisplayPageTitle>
<XMLC_DisplayActionMenu>0</XMLC_DisplayActionMenu>
<XMLC_DisplayButtonRollover>1</XMLC_DisplayButtonRollover>
<XMLC_DisplayToolbarRollover>1</XMLC_DisplayToolbarRollover>
<XMLC_Culture>EN</XMLC_Culture>
<XMLC_Language>FRANCAIS</XMLC_Language>
<XMLC_UserID>1003</XMLC_UserID>
<XMLC_UserName>supervisor@mycorp.com</XMLC_UserName>
<XMLC_Authenticated>0</XMLC_Authenticated>
<XMLC_Administrator>1</XMLC_Administrator>
<XMLC_Supervisor>1</XMLC_Supervisor>
<XMLC_User>1</XMLC_User>
<XMLC_Guest>0</XMLC_Guest>
<XMLC_PoweredBy>Powered by XMLRAD</XMLC_PoweredBy>
<XMLC_RegisteredEmail>jpbempel@fr.delos.us</XMLC_RegisteredEmail>
<XMLC_RegisterURL>http://e-delos.com/index.html?http://e-delos.com/DownloadBin/Download.dll/</XMLC_RegisterURL>
<XMLC_ProductName>XMLRAD</XMLC_ProductName>
<XMLC_OptionMail>1</XMLC_OptionMail>
<XMLC_OptionMessenger>1</XMLC_OptionMessenger>
</XMLC_Params>
<publishersS EOF="1" StartingRow="0" LastRow="7" RowCount="8" MaxRows="10" RecordName="publishers">
<publishers>
<pub_id>0736</pub_id>
<pub_name>New Moon Books</pub_name>
<city>Boston</city>
</publishers>
<publishers>
<pub_id>0877</pub_id>
<pub_name>Binnet & Hardley</pub_name>
<city>Washington</city>
</publishers>
<publishers>
<pub_id>1389</pub_id>
<pub_name>Algodata Infosystems</pub_name>
<city>Berkeley</city>
</publishers>
<publishers>
<pub_id>1622</pub_id>
<pub_name>Five Lakes Publishing</pub_name>
<city>Chicago</city>
</publishers>
<publishers>
<pub_id>1756</pub_id>
<pub_name>Ramona Publishers</pub_name>
<city>Dallas</city>
</publishers>
<publishers>
<pub_id>9901</pub_id>
<pub_name>GGG&G</pub_name>
<city>München</city>
</publishers>
<publishers>
<pub_id>9952</pub_id>
<pub_name>Scootney Books</pub_name>
<city>New York</city>
</publishers>
<publishers>
<pub_id>9999</pub_id>
<pub_name>Lucerne Publishing</pub_name>
<city>Paris</city>
</publishers>
</publishersS>
<XMLC_Profile>
<XMLC_ProfileName>Standard</XMLC_ProfileName>
<XMLC_ActionMenuPosition>LEFT</XMLC_ActionMenuPosition>
<XMLC_Culture>EN</XMLC_Culture>
<XMLC_DisplayActionMenu>0</XMLC_DisplayActionMenu>
<XMLC_DisplayButtonPad>1</XMLC_DisplayButtonPad>
<XMLC_DisplayButtonRollover>1</XMLC_DisplayButtonRollover>
<XMLC_DisplayHeaderGradient>0</XMLC_DisplayHeaderGradient>
<XMLC_DisplayPageTitle>1</XMLC_DisplayPageTitle>
<XMLC_DisplayTabControl>1</XMLC_DisplayTabControl>
<XMLC_DisplayTabs>1</XMLC_DisplayTabs>
<XMLC_DisplayToolbar>0</XMLC_DisplayToolbar>
<XMLC_DisplayToolbarButtonPad>0</XMLC_DisplayToolbarButtonPad>
<XMLC_DisplayToolbarGradient>0</XMLC_DisplayToolbarGradient>
<XMLC_DisplayToolbarRollover>1</XMLC_DisplayToolbarRollover>
<XMLC_Language>FRANCAIS</XMLC_Language>
<XMLC_MainAction/>
<XMLC_MenuWidth>300</XMLC_MenuWidth>
<XMLC_Pictos>msn</XMLC_Pictos>
<XMLC_Skin>graylight</XMLC_Skin>
<TreeviewStyle>XP</TreeviewStyle>
<DisplayPageTitle>0</DisplayPageTitle>
</XMLC_Profile>
<Aliases>
<PubsDLL>/DemosBin/Pubs/Bin/Pubs.dll/</PubsDLL>
<XMLRADDLL>/XMLRADBin/XMLRAD.dll/</XMLRADDLL>
</Aliases>
<Locales>
<New>Nouveau</New>
<publishers>Editeurs</publishers>
<pub_name>Editeur</pub_name>
<city>Ville</city>
<Listpublishers>Editeurs</Listpublishers>
<DataGridpublishers>Grille des éditeurs</DataGridpublishers>
<Searchpublishers>Recherche éditeurs</Searchpublishers>
<ListpublishersTitle>Liste éditeurs</ListpublishersTitle>
<Done>Sauvegarder et archiver l'événement</Done>
<Save>Sauvegarder</Save>
<Permissions>Permissions</Permissions>
<Submit>Valider</Submit>
<Reset>Réinitialiser</Reset>
<Refresh>Rafraîchir</Refresh>
<Delete>Supprimer</Delete>
<DoublePrevious>2 pages en arrière</DoublePrevious>
<Previous>Page précédente</Previous>
<More>Page suivante</More>
<DoubleMore>2 pages en avant</DoubleMore>
<ShowHideActionMenu>Afficher / Masquer le menu action</ShowHideActionMenu>
<errorMessageNotNull>Ce champ doit être saisi : </errorMessageNotNull>
<questionDeleteRecordBegin>Etes vous sûr de vouloir supprimer ce </questionDeleteRecordBegin>
<questionDeleteRecordEnd> ?\nCliquez OK pour confirmer.</questionDeleteRecordEnd>
<DeletePrompt>Etes vous sûre de vouloir supprimer cet élément ?</DeletePrompt>
<AltEmail>Envoyer cette page par e-mail</AltEmail>
<AltFax>Faxer le document attaché </AltFax>
<AltIM>Envoyer cette page par message instantané</AltIM>
<AltPrint>Imprimer cette page</AltPrint>
<AltHome>Accueil</AltHome>
<AltHelp>Aide</AltHelp>
<AltLogin>Login</AltLogin>
<AltLogout>Logout</AltLogout>
<AltOpenThisActionInXMLRAD>Ouvrir XMLRAD</AltOpenThisActionInXMLRAD>
<AltRefresh>Rafraîchir</AltRefresh>
<AltXMLOutputFormat>Afficher le document XML</AltXMLOutputFormat>
<PublishersActionTitle>Editeurs</PublishersActionTitle>
<ListpublishersAction>Liste éditeurs</ListpublishersAction>
<DataGridpublishersAction>Edition éditeurs</DataGridpublishersAction>
<SearchFormpublishersAction>Recherche éditeur</SearchFormpublishersAction>
<FormCreatepublishersAction>Nouvel éditeur</FormCreatepublishersAction>
<TitlesActionTitle>Livres</TitlesActionTitle>
<ListtitlesAction>Liste livres</ListtitlesAction>
<DataGridtitlesAction>Edition livres</DataGridtitlesAction>
<SearchFormtitlesAction>Recherche livre</SearchFormtitlesAction>
<FormpublishersAction>Edition éditeur</FormpublishersAction>
</Locales>
</document>

Dans cet OutpuDoc on retrouve généralement les informations suivantes:

  • Les XMLC_Params: Donnes du frameworks souvent utilisées par les composants de xslc.xsl
  • Les données des XMLInstructions: résultat de l'execution par exemle du DBExtract (noeuds Params,publishers)
  • Le XMLC_Profile: Profile utilisateur
  • Le XMLC_Aliases: URL de l'application utilisée pour contruire les liens
  • Les XMLC_Locales: Traduction des libellées utilisées pour gérer le multilingue
Créé le 24 novembre 2005  par RDM
  

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2005 Developpez. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.