Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Outils > XMLRAD
XMLRAD Environnement de développement Web XML/XSL. Avant de poster -> F.A.Q XMLRAD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/06/2007, 00h27   #1
Invité régulier
 
Inscription : juin 2003
Messages : 31
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 31
Points : 5
Points : 5
Par défaut Portage d'application XMLRAD6

Bonjour,

J'avais développé il y a plusieurs années une application xmlrad6 qui vivait son bonhomme de chemin sans problème. Mais voilà, ma société a changé de serveur web, nous sommes passés à Win2003/II6.
J'ai voulu suivre la prodedure que j'avais dejà appliqué pour le déploiement de mon application sur l'ancien serveur :
1. Installer le package XMLRAD6SP1.EXE (il date de 2001!)
2. Installer mon application dans IIS en suivant la procedure standard.

Le premier problème est que le package XMLRAD6SP1.EXE génère une bonne dizaine d'erreurs pendant l'installation. Au terme de l'install xmlrad semble cependant installé. Mais passons.

le vrai problème est le suivant : mon application refuse désespérément de s'executer. Quand J'execute l'url http://www.MonServeur.com/MonAppliBin/MonAppli.dll, je recois le message suivant :

"Le document XML doit contenir un élément de niveau supérieur. Erreur de traitement de la ressource http://www.Monserveur.com/A..."

J'ai le souvenir que j'obtenais la meme erreur quand xmlrad n'etait pas installé sur le serveur web.

J'ai essayé comme méthode alternative d'utiliser le didacticiel de déploiement "Deploying XMLCLX Applications". J'ai donc Installé :
- Dac.TLB (dans le rep de ma dll)
- StdXML.dll (dans le rep de ma dll)
- LibDacAdo.dll (dans c:\windows\system32 + regsvr32)

Mais ca ne change strictement rien. J'obtiens toujours la meme erreur. je précise que , bien sur, j'ai autorisé les dll ISAPI sur mon serveur web.

QQun pourrait-il m'aider ?? Je compte bien réecrire cette application dans une version plus récente du framework mais là il faut que ca fonctionne. J'ajoute que la meme application est installée sur un autre serveur, aussi en Windows 2003 mais avec IIS5. elle fonctionne sans problème sur cet autre serveur.

J'attends votre aide avec impatience.

Cordialement
FR
valfredr est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2007, 08h49   #2
Membre confirmé
 
Avatar de Jeweller
 
Inscription : août 2003
Messages : 354
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 354
Points : 226
Points : 226
Hello!

Jetes un oeil à ce fil, c'est peut etre une piste:
XMLComponent v4 et Windows2003

Michael
Jeweller est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2007, 10h52   #3
Invité régulier
 
Inscription : juin 2003
Messages : 31
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 31
Points : 5
Points : 5
Merci Michael,

Cela veut-dire en substance :
- Réinstaller l'ancien framework sur mon poste de dev (puis-je faire tourner le framework pour Delphi 6 avec Delphi 7?)
- Recompiler le projet
- Remplacer la dll sur le serveur

C'est bien ca? Pas d'autre moyen?

A+
FR
valfredr est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2007, 11h09   #4
Membre confirmé
 
Avatar de Jeweller
 
Inscription : août 2003
Messages : 354
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 354
Points : 226
Points : 226
Si tu penses qu'il s'agit du même problème, oui tu dois recompiler le framework et donc ta dll.
Retrouves tu dans les logs de ton appli la meme erreur ? Qu'est ce que tu as dans les traces ? Tu ne nous as pas donné ton message d'erreur. Au pire fait un clic droit et affiche le source de ta page d'erreur.

Michael
Jeweller est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2007, 14h29   #5
Invité régulier
 
Inscription : juin 2003
Messages : 31
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 31
Points : 5
Points : 5
"Error -2147221020 on line 0, char 0 in "\\?\D:\Inetpub\WEBEra\Activite.xml"

Il me semble que je suis en plein dans le problème que tu avais eu!

je vais donc me battre pour installer ma vielle version de XMLRAD sur Delphi7, faire ta modif, essayer de compiler et croiser les doigts^^

Rendez vous dans... je sais pas cbien de temps

Merci bcp pour ton aide.

FR
valfredr est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2007, 15h57   #6
Invité régulier
 
Inscription : juin 2003
Messages : 31
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 31
Points : 5
Points : 5
Mauvaise nouvelle...

Il n'y a aucune fonction GetAppFileName dans xmlutils.pas

L'entete de mon unite xmlutils est la suivante :

{****************************************************************************}
{ }
{ XMLComponents Library }
{ }
{ Copyright (c) 1999,2001 e-delos.com / XMLComponents. All rights reserved. }
{ See license before use. }
{ }
{ http://xmlcomponents.com }
{ }
{****************************************************************************}

Une idée qqun??? Je ne sais vraiment pas quoi faire la....

A+
FR
valfredr est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2007, 16h23   #7
Invité régulier
 
Inscription : juin 2003
Messages : 31
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 31
Points : 5
Points : 5
par contre j'ai recherché toutes les références à AppFileName dans le source de XMLCOmponents et je trouce cette liste :

...\EventLog\EVLog.pas(704): AppFileName: string;
...\EventLog\EVLog.pas(710): SetLength(AppFileName, MAX_PATH);
...\EventLog\EVLog.pas(711): SetLength(AppFileName, GetModuleFileName(hInstance, PChar(AppFileName), MAX_PATH));
...\EventLog\EVLog.pas(711): SetLength(AppFileName, GetModuleFileName(hInstance, PChar(AppFileName), MAX_PATH));
...\EventLog\EVLog.pas(712): XmlEventLog.LogFileName := ChangeFileExt(AppFileName, '.XMLComponents.log');
...\StdXML_TLB.pas(427): function Get_AppFileName: WideString; safecall;
...\StdXML_TLB.pas(436): property AppFileName: WideString read Get_AppFileName;
...\StdXML_TLB.pas(436): property AppFileName: WideString read Get_AppFileName;
...\StdXML_TLB.pas(450): property AppFileName: WideString readonly dispid 2;
...\XMLApp.pas(70): function Get_AppFileName: WideString; safecall;
...\XMLApp.pas(83): FAppFileName: string;
...\XMLApp.pas(126): procedure Set_AppFileName(const Value: WideString);
...\XMLApp.pas(171): property AppFileName: WideString read Get_AppFileName write Set_AppFileName;
...\XMLApp.pas(171): property AppFileName: WideString read Get_AppFileName write Set_AppFileName;
...\XMLApp.pas(171): property AppFileName: WideString read Get_AppFileName write Set_AppFileName;
...\XMLApp.pas(574): SetLength(FAppFileName, MAX_PATH);
...\XMLApp.pas(575): SetLength(FAppFileName, GetModuleFileName(hInstance, PChar(FAppFileName), MAX_PATH));
...\XMLApp.pas(575): SetLength(FAppFileName, GetModuleFileName(hInstance, PChar(FAppFileName), MAX_PATH));
...\XMLApp.pas(576): FAppPath := ExtractFilePath(FAppFileName);
...\XMLApp.pas(1528): function TXMLApplication.Get_AppFileName: WideString; safecall;
...\XMLApp.pas(1530): Result := FAppFileName;
...\XMLApp.pas(1891): ConfigFileName := ChangeFileExt(Self.AppFileName, '.xml');
...\XMLApp.pas(2114): FileName := ChangeFileExt(Self.AppFileName, '.Authorized.txt');
...\XMLApp.pas(2128): FileName := ChangeFileExt(Self.AppFileName, '.Forbidden.txt');
...\XMLApp.pas(2142): FileName := ChangeFileExt(Self.AppFileName, '.Priorities.txt');
...\XMLApp.pas(2251): FileName := ChangeFileExt(Self.AppFileName, '.Authorized.txt');
...\XMLApp.pas(2267): FileName := ChangeFileExt(Self.AppFileName, '.Forbidden.txt');
...\XMLApp.pas(2283): FileName := ChangeFileExt(Self.AppFileName, '.Priorities.txt');
...\XMLApp.pas(2293): procedure TXMLApplication.Set_AppFileName(const Value: WideString);
...\XMLApp.pas(2295): FAppFileName := Value;
...\XMLComponentEd.pas(657): XMLApplication.AppFileName := ChangeFileExt(ToolServices.GetProjectName, '.xml');
...\XMLComponentEd.pas(659): XMLApplication.AppFileName := ChangeFileExt(Application.ExeName, '.xml');
...\XMLModuleConfigEditor.pas(138): FXMLAppFileName: WideString;
...\XMLModuleConfigEditor.pas(164): AliasesFileName := ChangeFileExt(FXMLAppFileName, sAliasesExtension);
...\XMLModuleConfigEditor.pas(203): GlobalParamsFileName := ChangeFileExt(FXMLAppFileName, sGlobalParamsExtension);
...\XMLModuleConfigEditor.pas(225): InitParamsFileName := ChangeFileExt(FXMLAppFileName, sInitParamsExtension);
...\XMLModuleConfigEditor.pas(370): FileName := ChangeFileExt(FXMLAppFileName, sXMLModulesExtension);
...\XMLModuleConfigEditor.pas(433): FXMLAppFileName := ToolServices.GetProjectName;
...\XMLModuleConfigEditor.pas(435): FXMLAppFileName := Application.ExeName;
...\XMLModuleConfigEditor.pas(437): ConfigFileName := ChangeFileExt(FXMLAppFileName, sConfigExtension);
...\XMLModuleConfigEditor.pas(439): XMLModulesFileName := ChangeFileExt(FXMLAppFileName, sXMLModulesExtension);
...\XMLModuleConfigEditor.pas(451): DataSourcesFileName := ChangeFileExt(FXMLAppFileName, sDataSourcesExtension);
...\XMLModuleConfigEditor.pas(454): QueriesFileName := ChangeFileExt(FXMLAppFileName, QueriesExtension);
...\XMLModuleConfigEditor.pas(457): XMLServicesFileName := ChangeFileExt(FXMLAppFileName, XMLServiceExtension);

Si j'ai bien compris le thread que tu m'as indiqué je dois virer la chaîne \\?\ de la Chaine AppFileName. Est-ce bien ca? Il se debrouillera avec la suite?
Si a chaque fois qu'on utilise AppFileName, je remplace par une fonction qui tronque le debut si il est égal à \\?\ est-ce suffisant???
valfredr est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2007, 16h55   #8
Membre confirmé
 
Avatar de Jeweller
 
Inscription : août 2003
Messages : 354
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 354
Points : 226
Points : 226
C'est la ou il y a la méthode GetModuleFileName que tu dois t'arranger pour qu'en sortie il n'y ait plus le "\\?\". Fais une recherche de "GetModuleFileName" (dans XMLApp je crois) et inspire toi de ce que RDM propose pour patcher ton code.

Michael
Jeweller est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/07/2007, 11h14   #9
RDM
Membre Expert
 
Inscription : mars 2002
Messages : 1 426
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 1 426
Points : 1 546
Points : 1 546
Envoyer un message via ICQ à RDM
oui à l'époque c'était dans XMLApp.pas
__________________
RDM
Tout Est Relatif
Rubrique XMLRAD: http://xmlrad.developpez.com
FAQ XMLRAD: http://xmlrad.developpez.com/faq/
RDM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/07/2007, 12h27   #10
Invité régulier
 
Inscription : juin 2003
Messages : 31
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 31
Points : 5
Points : 5
Bonjour,

Alors j'ai pu faire la modif sur le framework. L'application qui ne fonctionnait pas sur mon serveur de test (IIS5) fonctionne désormais. Par contre quand je la déplace sur le serveur de prod (IIS6), ca plante ("service indisponible" après que ca tourne dans le vide environ une minute).

J'etais tombé qq part sur un thread expliquant comment faire tourner une dll ISAPI sur IIS6 et je ne le trouve plus (il fallait créer un pool sur IIS6). Savez-vous ou il se trouve?

Merci d'avance.
Cordialement
FR
valfredr est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/07/2007, 17h38   #11
Membre habitué
 
Inscription : novembre 2002
Messages : 243
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 243
Points : 149
Points : 149
normallement ce n'est pas trop une histoire de pool. Tu peux en créer un spécifique pour ta ou tes applis mais il y a déjà le pool par défaut.
Il faut voir si tu as autorisé l'exécution d'ISAPI. C'est dans le gestionnaire des services internet (en dessous de sites web) et ça s'appelle Extensions du service Web. Là tu ajoutes l'extension ISAPI
Pierre FORAZ est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h47.


 
 
 
 
Partenaires

Hébergement Web