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

Windows Communication Foundation .NET Discussion :

VS 2008 ne veut pas référencer mon service web


Sujet :

Windows Communication Foundation .NET

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 34
    Points : 25
    Points
    25
    Par défaut VS 2008 ne veut pas référencer mon service web
    Bonjour,
    Je désire développer un service web qui sera utilisé via un PDA sous Windows mobile. J’ai donc écrit un web service WCF hébergé par le serveur web de développent de VS. Je l’ai testé via le Client test Microsoft WCF, aucun problème.
    J’écris donc un formulaire pour le PDA et référence le service web dans le projet (en remplaçant «localhost» par l’adresse de la machine) et c’est là que commencent les ennuis. Impossible de référencer le service web avec le message d’erreur «Aucune connexion n'a pu être établie car l'ordinateur cible l'a expressément refusée». Je fini par trouver sur le net que le serveur web de développement n’accepterait que les connexions à partir de localhost. Je décide donc d’installer IIS7 sur ma machine (Vista Ultimate) et là je constate que l’ajout de fonctionnalités mouline pendant un long moment puis renvoie un message d’erreur. J’ai essayé avec d’autres fonctionnalités, même résultat. Je ne peux plus ajouter de fonctionnalités à Windows (au passage si quelqu’un à la solution à ce problème, je suis preneur).
    Je décide donc d’installer IIS7 sur un P.C. portable (Vista Edition Familiale Premium), aucun problème. J’y déploie le service web. Je peux le voir dans IE en tapant son adresse, mais je ne peux pas le référencer dans VS, j’ai le message d’erreur suivant :
    Une erreur s'est produite lors du téléchargement de 'http://pc-de-sandrine/service.svc'.
    Impossible de se connecter au serveur distant
    Une tentative de connexion a échoué car le parti connecté n'a pas répondu convenablement au-delà d'une certaine durée ou une connexion établie a échoué car l'hôte de connexion n'a pas répondu 169.254.215.56:80
    Metadata contient une référence qui ne peut pas être résolue*: «*http://pc-de-sandrine/service.svc*».
    Connexion à http://pc-de-sandrine/service.svc impossible. Code d’erreur TCP 10060*: Une tentative de connexion a échoué car le parti connecté n'a pas répondu convenablement au-delà d'une certaine durée ou une connexion établie a échoué car l'hôte de connexion n'a pas répondu 169.254.215.56:80.
    Impossible de se connecter au serveur distant
    Une tentative de connexion a échoué car le parti connecté n'a pas répondu convenablement au-delà d'une certaine durée ou une connexion établie a échoué car l'hôte de connexion n'a pas répondu 169.254.215.56:80
    Si le service est défini dans la solution actuelle, essayez de générer la solution et d'ajouter de nouveau la référence du service.
    Si je tente d’ajouter le service dans Client test Microsoft WCF j’ai le message suivant :
    Erreur : Impossible de r‚cup‚rer les m‚tadonn‚es de http://pc-de-sandrine/service.svc Si vous avez accŠs … un service Windows (R) Communication Foundation, v‚rifiez que vous avez activ‚ la publication des m‚tadonn‚es … l'adresse sp‚cifi‚e. Pour plus d'informations sur l'activation de la publication des m‚tadonn‚es, consultez la documentation MSDN … l'adresse http://go.microsoft.com/fwlink/?LinkId=65455.Erreur de WS-Metadata Exchange URI : http://pc-de-sandrine/service.svc Metadata contient une r‚f‚rence qui ne peut pas ˆtre r‚solueÿ: ®ÿhttp://pc-de-sandrine/service.svcÿ¯. Connexion … http://pc-de-sandrine/service.svc impossible. Code d'erreur TCP 10061ÿ: Aucune connexion n'a pu ˆtre ‚tablie car l'ordinateur cible l'a express‚ment refus‚e 192.168.1.23:80. Impossible de se connecter au serveur distant Aucune connexion n'a pu ˆtre ‚tablie car l'ordinateur cible l'a express‚ment refus‚e 192.168.1.23:80HTTP GET Error URI: http://pc-de-sandrine/service.svc Une erreur s'est produite lors du t‚l‚chargement de 'http://pc-de-sandrine/service.svc'. Impossible de se connecter au serveur distant Aucune connexion n'a pu ˆtre ‚tablie car l'ordinateur cible l'a express‚ment refus‚e 192.168.1.23:80
    Et là je n’ai aucune idée pour m’en sortir (j’ai cherché en vain sur le net), car si je vois le service dans IE, donc avec la même adresse IP et le même port que VS, pourquoi ce dernier boude ?
    Merci pour toute éventuelle réponse…

  2. #2
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    As tu ajouté les métadonnées ('mex') dans ton service WCF ?

    Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...


    Une réponse vous a aidé ? utiliser le bouton

    "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 34
    Points : 25
    Points
    25
    Par défaut
    Merci pour cette réponse.
    En regardant les métadonnées j’ai vu la section «identity» et je me suis dit que j’avais oublié de la mettre en remarque. La connexion refusée devait venir de là. Par contre, pour les métadonnées, il doit manquer quelque chose car je n’arrive toujours pas à le référencer. Je vais chercher, mais si c’est évident il serait aimable de me le dire, voici le fichier web.config :

    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
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    <?xml version="1.0"?>
    <!--
        Remarque : au lieu d'éditer manuellement ce fichier, vous 
        pouvez utiliser l'outil d'administration Web pour configurer les
        paramètres de votre application. Utilisez l'option Site Web->
        Configuration Asp.Net de Visual Studio. Vous trouverez la liste
        complète des paramètres et commentaires dans
        machine.config.comments, situé généralement dans
        \Windows\Microsoft.Net\Framework\v2.x\Config 
    -->
    <configuration>
    	<configSections>
    		<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
    			<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
    				<section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
    				<sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
    					<section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="Everywhere"/>
    					<section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
    					<section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
    					<section name="roleService" type="System.Web.Configuration.ScriptingRoleServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
    				</sectionGroup>
    			</sectionGroup>
    		</sectionGroup>
    	</configSections>
    	<appSettings/>
    	<connectionStrings/>
    	<system.web>
    		<!--
                Définissez compilation debug="true" pour insérer des 
                symboles de débogage dans la page compilée. Comme 
                ceci affecte les performances, définissez cette valeur
                sur true uniquement lors du développement.
            -->
    		<compilation debug="true">
    			<assemblies>
    				<add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    				<add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    			</assemblies>
    		</compilation>
    		<!--
                La section <authentication> permet de configurer 
                le mode d’authentification de la sécurité utilisé par 
                ASP.NET pour identifier un utilisateur entrant. 
            -->
    		<authentication mode="Windows"/>
    		<!--
                La section <customErrors> permet de configurer 
                les actions à exécuter si/quand une erreur non gérée se
                produit lors de l'exécution d'une demande. Plus 
                précisément, elle permet aux développeurs de configurer 
                les pages d'erreur html pour qu'elles s'affichent à la place
                d'une trace de pile de l'erreur.
     
            <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
                <error statusCode="403" redirect="NoAccess.htm" />
                <error statusCode="404" redirect="FileNotFound.htm" />
            </customErrors>
            -->
    		<pages>
    			<controls>
    				<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    			</controls>
    		</pages>
    		<httpHandlers>
    			<remove verb="*" path="*.asmx"/>
    			<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    			<add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    			<add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false"/>
    		</httpHandlers>
    		<httpModules>
    			<add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    		</httpModules>
    	</system.web>
    	<system.codedom>
    		<compilers>
    			<compiler language="c#;cs;csharp" extension=".cs" warningLevel="4" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    				<providerOption name="CompilerVersion" value="v3.5"/>
    				<providerOption name="WarnAsError" value="false"/>
    			</compiler>
    		</compilers>
    	</system.codedom>
    	<system.web.extensions>
    		<scripting>
    			<webServices>
    				<!--
                  Ne commentez pas cette section pour activer le service
                  d'authentification. Incluez requireSSL="true" le cas 
                  échéant.
     
              <authenticationService enabled="true" requireSSL = "true|false"/>
              -->
    				<!--
                  Ne commentez pas ces lignes pour activer le service 
                  de profil et choisir les propriétés du profil qui
                  peuvent être récupérées et modifiées dans les
                  applications ASP.NET AJAX.
     
              <profileService enabled="true"
                              readAccessProperties="propertyname1,propertyname2"
                              writeAccessProperties="propertyname1,propertyname2" />
              -->
    				<!--
                  Ne commentez pas cette section pour activer le
                  service de rôle.
     
              <roleService enabled="true"/>
              -->
    			</webServices>
    			<!--
            <scriptResourceHandler enableCompression="true" enableCaching="true" />
            -->
    		</scripting>
    	</system.web.extensions>
    	<!--
            La section system.webServer est requise pour l'exécution
            de ASP.NET AJAX sous Internet Information Services 7.0.
            Elle n'est pas obligatoire pour la version précédente de IIS.
        -->
    	<system.webServer>
    		<validation validateIntegratedModeConfiguration="false"/>
    		<modules>
    			<add name="ScriptModule" preCondition="integratedMode" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    		</modules>
    		<handlers>
    			<remove name="WebServiceHandlerFactory-Integrated"/>
    			<add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    			<add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    			<add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    		</handlers>
    	</system.webServer>
    	<system.serviceModel>
    		<services>
    			<service name="ACReintegration.Reintegration" behaviorConfiguration="ServiceBehavior">
    				<!-- Service Endpoints -->
    				<endpoint address="" binding="wsHttpBinding" contract="ACInterfaces.IReintegration">
    					<!-- 
                  Lors du déploiement, l'élément d'identité suivant doit être supprimé ou remplacé pour refléter 
                  l'identité sous laquelle le service déployé s'exécute.  En cas de suppression, WCF déduira automatiquement une identité 
                  appropriée.
              -->
    					<!--<identity>
    						<dns value="localhost"/>
    					</identity>-->
    				</endpoint>
    				<endpoint address="" binding="mexHttpBinding" contract="IMetadataExchange"/>
    			</service>
    		</services>
    		<behaviors>
    			<serviceBehaviors>
    				<behavior name="ServiceBehavior">
    					<!-- Pour éviter la divulgation des informations sur les métadonnées, définissez la valeur ci-dessous sur false et supprimez le point de terminaison des métadonnées ci-dessus avant le déploiement -->
    					<serviceMetadata httpGetEnabled="true" policyVersion="Policy15"/>
    					<!-- Pour recevoir les détails d'exception des erreurs à des fins de débogage, définissez la valeur ci-dessous sur true.  Définissez-la sur false avant le déploiement pour éviter la divulgation des informations d'exception -->
    					<serviceDebug includeExceptionDetailInFaults="true"/>
    				</behavior>
    			</serviceBehaviors>
    		</behaviors>
    	</system.serviceModel>
    </configuration>
    Merci encore…

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 34
    Points : 25
    Points
    25
    Par défaut
    Merci beaucoup,
    Je ne sais pas exactement pourquoi mais en supprimant (dans le fichier web.config) <identity> et en remettant dans <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/> address="mex" au lieu de address="", ça fonctionne.
    J'ai donc encore beaucoup à apprendre sur WCF, car si les exemples ne posent pas de problème en local, dès qu'il sont déployés les WCF demandent manifestement un minimum de paramétrages.
    Bonne soirée...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Google] Bizarre il ne veut pas référencer mon site !
    Par Aspic dans le forum Référencement
    Réponses: 6
    Dernier message: 24/06/2012, 15h53
  2. Eclipse WTP ne veut pas créer de services Web
    Par DJ Caësar 9114 dans le forum Eclipse Java
    Réponses: 0
    Dernier message: 30/10/2007, 10h32
  3. je n'arrive pas à interroger mon service web
    Par karimspace dans le forum Services Web
    Réponses: 2
    Dernier message: 09/02/2007, 20h33
  4. Pourquoi PHPMYADmin 2.9.0.3 veut pas de mon SQL ?
    Par santiago_cw dans le forum Débuter
    Réponses: 8
    Dernier message: 30/12/2006, 22h04
  5. tomcat ne veut pas démarrer mon projet
    Par diamonds dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 10/12/2006, 02h48

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