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 :

WCF et metadata (encore un)


Sujet :

Windows Communication Foundation .NET

  1. #1
    Membre éclairé
    Profil pro
    Développeur Web
    Inscrit en
    février 2008
    Messages
    1 032
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : février 2008
    Messages : 1 032
    Points : 899
    Points
    899
    Par défaut WCF et metadata (encore un)
    Bonjour tout le monde,

    V'là-t-y pas que mon service WCF ne présente pas de metadata, dites donc !

    Quelqu'un saurait-il me trouver le pot-aux-roses ?

    Question subsidiaire : j'ai démarré WCF (il y a un bout de temps de ça), sur un système dont on disait pis que pendre, mais une fois le service écrit il suffisait d'appuyer sur F5 pour afficher un client de test. Et ça marchait du premier coup.

    Est-ce qu'il y a un avantage à enlever cette configuration par défaut qui fonctionne, et à balancer tout le monde sur les forums pour se débrouiller avant même de savoir si le service contient bien les données qu'on veut ?


    Pour en revenir au cas présent, je trouve un indice dans la bouillie qui apparaît comme message d'erreur avec les e accent aigu remplacés par des virgules : "il n'y avait pas de point de terminaison". Pourtant, sur la ligne juste en dessous de service ...

    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
    <configuration>
    	<system.serviceModel>
    		<bindings>
    			<webHttpBinding>
    				<binding allowCookies="true"
    								 bypassProxyOnLocal="false"
    								 closeTimeout="20"
    								 hostNameComparisonMode="WeakWildcard"
    								 maxBufferPoolSize="500"
    								 maxBufferSize="500"
    								 maxReceivedMessageSize="120"
    								 name="string"
    								 openTimeout="20"
    								 proxyAddress="URI"
    								 receiveTimeout="20"
    								 sendTimeout="20"
    								 transferMode="StreamedRequest"
    								 useDefaultWebProxy="true"
    								 >
    					<security mode="None">
    						<transport clientCredentialType="Windows"
    											 proxyCredentialType="Windows"
    											 realm="string" />
    					</security>
    					<readerQuotas maxArrayLength="64"
    												maxBytesPerRead="64"
    												maxDepth="64"
    												maxNameTableCharCount="64"
    												maxStringContentLength="64" />
    				</binding>
    			</webHttpBinding>
    		</bindings>
    		<services>
    			<service name="WcfService1.Service1">
    				<endpoint address=""
    					behaviorConfiguration ="restfulBehavior"
    					binding="webHttpBinding" contract="WcfService1.IService1"
    				  />
    				<host>
    					<baseAddresses>
    						<add baseAddress="http://localhost:57194//service1.svc"/>
    					</baseAddresses>
    				</host>
    			</service>
    		</services>
    		<behaviors>
    			<serviceBehaviors>
    				<behavior name="restfulBehavior">
    					<serviceMetadata httpGetEnabled="true"/>
    				</behavior>
    			</serviceBehaviors>
    			<endpointBehaviors>
    				<behavior name="restfulBehavior">
    					<webHttp/>
    				</behavior>
    			</endpointBehaviors>
    		</behaviors>
    	</system.serviceModel>
    	<system.web>
    		<compilation debug="true"/>
            </system.web>
    </configuration>
    Je mets l'original de la bouillie, ça peut servir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Erreurÿ: Impossible de r‚cup‚rer les m‚tadonn‚es de http://localhost:57194/Service1.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://localhost:57194/Service1.svc Metadata contient une r‚f‚rence qui ne peut pas ˆtre r‚solue : 'http://localhost:57194/Service1.svc'. Il n'existait pas de point de terminaison … l'‚coute sur http://localhost:57194/Service1.svc pouvant accepter le message. Ceci est souvent d– … une adresse ou une action SOAP incorrecte. S'il est pr‚sent, voir l'‚l‚ment InnerException pour plus d'informations. Le serveur distant a retourn‚ une erreurÿ: (404) Introuvable.HTTP GET Error URI: http://localhost:57194/Service1.svc Le document HTML ne contient pas d'informations de d‚couverte de service web.
    (Gloops, Gluups ... c'est un peu pareil)

  2. #2
    Membre éclairé
    Profil pro
    Développeur Web
    Inscrit en
    février 2008
    Messages
    1 032
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : février 2008
    Messages : 1 032
    Points : 899
    Points
    899
    Par défaut
    Voilà qui va permettre de voir jusqu'à quel point j'ai été mauvaise langue.
    J'ai renommé le fichier web.config, et j'ai mis une copie d'un web.config tout neuf de projet WCF.
    Le client de test s'ouvre et affiche les noms des fonctions, je peux afficher une liste, le problème qui se pose est que l'interface de saisie de paramètres n'apparaît pas, donc le nom du nouveau "bookin" est à null.
    C'est après avoir obtenu ça la première fois que j'ai suivi (enfin ... essayé de suivre, on dirait) la section "Restful WCF service Configuration", là :
    http://rahulrajatsingh.com/2014/06/a...rest-services/

    Ce faisant, il semblerait que je me sois mélangé copieusement les crayons.
    (Gloops, Gluups ... c'est un peu pareil)

  3. #3
    Membre éclairé
    Profil pro
    Développeur Web
    Inscrit en
    février 2008
    Messages
    1 032
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : février 2008
    Messages : 1 032
    Points : 899
    Points
    899
    Par défaut
    Argh, c'est l'interface utilisateur du client de test qui m'a dérouté : j'avais l'impression d'avoir affaire à des "label", mais en cliquant dessus il y a possibilité de changer la valeur.
    Peut-être une histoire de feuille de style ...

    C'est ballot, un fil si long pour en arriver là ...
    En un sens, savoir où voulait en venir l'auteur et quelles erreurs j'ai commises dans cette configuration a quand même un intérêt, semble-t-il ?

    Au demeurant, quelqu'un saurait-il me dire comment sélectionner le jeu de caractères des messages d'erreur ?
    C'est avec Visual Studio Community 2017, version 15.9.8, sur Windows 10 64 bits version 1809.
    (Gloops, Gluups ... c'est un peu pareil)

Discussions similaires

  1. Programmer encore en VB 6 c'est pas bien ? Pourquoi ?
    Par Nektanebos dans le forum Débats sur le développement - Le Best Of
    Réponses: 85
    Dernier message: 10/03/2009, 14h43
  2. choix sgbdr (encore!)
    Par _Gabriel_ dans le forum Décisions SGBD
    Réponses: 9
    Dernier message: 23/03/2004, 10h39
  3. TEdit (encore)
    Par dj.motte dans le forum C++Builder
    Réponses: 5
    Dernier message: 23/12/2002, 19h02
  4. TPalette (encore)
    Par Flipper dans le forum Langage
    Réponses: 3
    Dernier message: 28/11/2002, 23h45

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