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

Silverlight Discussion :

Erreur à la publication


Sujet :

Silverlight

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    196
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 196
    Par défaut Erreur à la publication
    Bonjour

    J'en suis au stade de la publication de mon application, Site silverlight + services WCF. La publication elle même (sur un serveur IIS distant) se passe bien. Résultat des courses :
    - Ca marche bien en débug local
    - La publication marche sur mon poste
    - Elle ne marche pas sur d'autres postes, même avec ma session.

    J'ai truffé tous les niveaux de mon arborescence de crossdomain.xml & clientaccesspolicy.xml histoire d'être sur.
    Pour tester j'appelle un service "testAsync" qui doit renvoyer "Ca marche" sans se poser de question. En accédant au e.Error du "test_Completed", j'ai la réponse suivante

    Error : System.ServiceModel.ProtocolException: [UnexpectedHttpResponseCode]
    Arguments :Not Found
    Les chaines de ressources de débogage ne sont pas disponibles, blablabla.
    La même chose en HTTPS me parle de CrossDomain, mais bon je ne m'y fie pas trop dans la mesure ou ca n'est pas censé marcher avec.


    Voilà, quelqu'un a t'il une suggestion pour avancer sur le problème ?

  2. #2
    Expert confirmé
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    C'est pas un problème de lien dans le ServiceReference de ton appli Silverlight ?

    Tu as bien modifié le endpoint ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    196
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 196
    Par défaut
    J'ai laissé cet aspect à Visual Studio via le mécanisme de publication. Mais je vérifierai demain au taf si je n'en ai pas un en dur (ca m'étonnerai, mais bon...)

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    196
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 196
    Par défaut
    Bon, tout ce joyeux bordel à évolué.

    Contrairement à ce que je pensais, VS n'adapte pas les adresses des endpoints du serviceconfig au déploiement. Du coup ma publication marchait en local, simplement parce que le serveur ASP de test de Visual tournait encore dans son coin.

    J'ai donc attribué les EndpointAddress dans el code, comme ceci.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    //test = new ServicesBDReference.ServiceDBClient();
                test = new Accueil.ServicesBDReference.ServiceDBClient(
                    new BasicHttpBinding(BasicHttpSecurityMode.TransportCredentialOnly), 
                    new EndpointAddress(new Uri(Application.Current.Host.Source, "../ServiceDB.svc")));
                test.TestCompleted += new EventHandler<TestCompletedEventArgs>(test_TestCompleted);
                test.TestAsync();
    A coup de (beaucoup de ) tests, j'ai réussi à obtenir une réponse des services en réglant BasicHttpSecurityMode.TransportCredentialOnly et en cochant l'option Anonymous Login sur le serveur IIS.

    Résultat des courses : une des fonctionnalités incontournable de mon service ne fionctionne plus, à savoir la récupération du login de l'user

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    var id = System.Security.Principal.WindowsIdentity.GetCurrent();
                    var myP = new System.Security.Principal.WindowsPrincipal(id);      
                    var thread = System.Threading.Thread.CurrentPrincipal.Identity.Name;
                    var httpc = HttpContext.Current.User.Identity.Name;
                    return "via httpcontext = " + httpc + "\nvia thread = " + thread + "\nvia myP = " + myP.Identity.Name;
    Et j'ai pour retour :
    via httpcontext =
    via thread =
    via myP = AUTORITE NT\SERVICE RÉSEAU

    Bilan :

  5. #5
    Expert confirmé
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    Pourquoi tu ne modifies pas simplement le fichier de conf une fois ton service deployé ?

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    196
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 196
    Par défaut
    Ca me permet effectivement de ne pas avoir à préciser le EndpointAddress dans le code. Mais au final le résultat est le même que celui où j'en suis actuellement :
    Le service est bien là, mais je doit bidouiller les paramètres (Anonymous + TransportCredentialOnly) pour me connecter au service. Du coup impossible d'obtenir le nom de l'utilisateur connecté...

Discussions similaires

  1. Erreur de publication
    Par Le gris dans le forum C#
    Réponses: 6
    Dernier message: 20/04/2010, 18h04
  2. [Spip] Message d'erreur dans public.php
    Par lobotos44 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 07/09/2009, 01h40
  3. erreur de publication
    Par Papy214 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 17/06/2008, 18h03
  4. Erreur de publication
    Par Azephel dans le forum ASP.NET
    Réponses: 1
    Dernier message: 15/05/2007, 11h08

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