Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[SPS 2003] Accès à un Web Service depuis un Web Part

3 réponses
Avatar
koubi
Bonjour à tous,

J'ai développé un premier Web Service qui reçoie un double et le
renvoie en y ajoutant 2... Je l'ai déployé sur mon poste A et testé
via un client Web http://localhost/WebService/Service1.asmx et tout
est OK. J'ai ensuite généré la classe proxy avec WSDL. J'ai inclu
cette classe dans un projet pour faire une petite appli Windows qui
accède au Web Service. Cette appli marche depuis le poste A, ainsi que
depuis le poste B. C'est à dire qu'elle envoie 10 au Web Service et
affiche le résultat : 12

J'ai ensuite fait la même chose dans un Web Part : je veux affiché le
retour de mon Web Service :
this._myCalculeur = new Service1();
this._myWSDouble = this._myCalculeur.Calcul(10);

Et là,
Erreur du composant WebPart : Une des propriétés du composant WebPart
a un format incorrect. Windows SharePoint Services ne peut
désérialiser le composant WebPart. Vérifiez le format des propriétés
et réessayez.

Une idée ?

3 réponses

Avatar
koubi
Bon je me répond à moi-même...
Le web part n'était pas en cause. C'était un problème d'autorisation à lui donner.

(Benoit Dominiak) wrote in message news:...
Bonjour à tous,

J'ai développé un premier Web Service qui reçoie un double et le
renvoie en y ajoutant 2... Je l'ai déployé sur mon poste A et testé
via un client Web http://localhost/WebService/Service1.asmx et tout
est OK. J'ai ensuite généré la classe proxy avec WSDL. J'ai inclu
cette classe dans un projet pour faire une petite appli Windows qui
accède au Web Service. Cette appli marche depuis le poste A, ainsi que
depuis le poste B. C'est à dire qu'elle envoie 10 au Web Service et
affiche le résultat : 12

J'ai ensuite fait la même chose dans un Web Part : je veux affiché le
retour de mon Web Service :
this._myCalculeur = new Service1();
this._myWSDouble = this._myCalculeur.Calcul(10);

Et là,
Erreur du composant WebPart : Une des propriétés du composant WebPart
a un format incorrect. Windows SharePoint Services ne peut
désérialiser le composant WebPart. Vérifiez le format des propriétés
et réessayez.

Une idée ?


Avatar
Renaud COMTE [MVP]
Comme quoi des fois ce n'est pas toujours la faute à SPS

Il suffisait juste de passer les credentials au Ws ou c'etait un problème de
trust ?

Renaud COMTE [MVP]
---------------------------------------------
[INFO] : Je me permet de rappeller l'importance de bien préciser la version
de SPS dans vos questions
cela eviterais des réponses erronées ou trompeuses comme récemment sur






la problématique de backup
Ca autoriserais aussi des tris plus efficaces via le moteur de recherche







Donc je vous propose donc de préfixer les posts via [SPS 2003] [SPS 2001]
[WSS]
Merci d'avance
http://www.clubSPS.org
http://spsclerics.europe.webmatrixhosting.net
---------------------------------------------
"Benoit Dominiak" a écrit dans le message de
news:
Bon je me répond à moi-même...
Le web part n'était pas en cause. C'était un problème d'autorisation à lui


donner.

(Benoit Dominiak) wrote in message


news:...
> Bonjour à tous,
>
> J'ai développé un premier Web Service qui reçoie un double et le
> renvoie en y ajoutant 2... Je l'ai déployé sur mon poste A et testé
> via un client Web http://localhost/WebService/Service1.asmx et tout
> est OK. J'ai ensuite généré la classe proxy avec WSDL. J'ai inclu
> cette classe dans un projet pour faire une petite appli Windows qui
> accède au Web Service. Cette appli marche depuis le poste A, ainsi que
> depuis le poste B. C'est à dire qu'elle envoie 10 au Web Service et
> affiche le résultat : 12
>
> J'ai ensuite fait la même chose dans un Web Part : je veux affiché le
> retour de mon Web Service :
> this._myCalculeur = new Service1();
> this._myWSDouble = this._myCalculeur.Calcul(10);
>
> Et là,
> Erreur du composant WebPart : Une des propriétés du composant WebPart
> a un format incorrect. Windows SharePoint Services ne peut
> désérialiser le composant WebPart. Vérifiez le format des propriétés
> et réessayez.
>
> Une idée ?


Avatar
koubi
De trust.
J'ai du modifier le fichier wss_mediumtrust.config pour y rajouter des
autorisations étendues spécifiques pour mon Web Part (signé en Strong
Name).

C'était ce que j'avais fait dès le début mais pas comme il fallait.
Pour que d'autres ne fassent pas la même erreur que moi :
Quand vous rajoutez une balise "CodeGroup" pour définir des conditions
à l'application d'un jeu de permission, il faut faire attention à
l'ordre des balises CodeGroup. En effet, la première qui correspond à
l'objet demandant l'autorisation est prise en compte.
Par exemple dans le cas de mon Web Part, la balise
<CodeGroup
class="UnionCodeGroup"
version="1"
PermissionSetName="ASP.Net">
<IMembershipCondition
class="UrlMembershipCondition"
version="1"
Url="$AppDirUrl$/*"
/>
</CodeGroup>
était avant
<CodeGroup
class="UnionCodeGroup"
version="1"
PermissionSetName="FullTrust">
<IMembershipCondition

class="StrongNameMembershipCondition"
version="1"
PublicKeyBlob="xxx"
Name="SimpleWebPartKoub"
/>
</CodeGroup>

La 2e n'était donc jamais atteinte car mon assembly était dans le
répertoire /bin de $AppDirUrl$/

"Renaud COMTE [MVP]" wrote in message news:...
Comme quoi des fois ce n'est pas toujours la faute à SPS

Il suffisait juste de passer les credentials au Ws ou c'etait un problème de
trust ?

Renaud COMTE [MVP]
---------------------------------------------
[INFO] : Je me permet de rappeller l'importance de bien préciser la version
de SPS dans vos questions
>>> cela eviterais des réponses erronées ou trompeuses comme récemment sur
la problématique de backup
>>> Ca autoriserais aussi des tris plus efficaces via le moteur de recherche

Donc je vous propose donc de préfixer les posts via [SPS 2003] [SPS 2001]
[WSS]
Merci d'avance
http://www.clubSPS.org
http://spsclerics.europe.webmatrixhosting.net
---------------------------------------------
"Benoit Dominiak" a écrit dans le message de
news:
> Bon je me répond à moi-même...
> Le web part n'était pas en cause. C'était un problème d'autorisation à lui
donner.
>
> (Benoit Dominiak) wrote in message
news:...
> > Bonjour à tous,
> >
> > J'ai développé un premier Web Service qui reçoie un double et le
> > renvoie en y ajoutant 2... Je l'ai déployé sur mon poste A et testé
> > via un client Web http://localhost/WebService/Service1.asmx et tout
> > est OK. J'ai ensuite généré la classe proxy avec WSDL. J'ai inclu
> > cette classe dans un projet pour faire une petite appli Windows qui
> > accède au Web Service. Cette appli marche depuis le poste A, ainsi que
> > depuis le poste B. C'est à dire qu'elle envoie 10 au Web Service et
> > affiche le résultat : 12
> >
> > J'ai ensuite fait la même chose dans un Web Part : je veux affiché le
> > retour de mon Web Service :
> > this._myCalculeur = new Service1();
> > this._myWSDouble = this._myCalculeur.Calcul(10);
> >
> > Et là,
> > Erreur du composant WebPart : Une des propriétés du composant WebPart
> > a un format incorrect. Windows SharePoint Services ne peut
> > désérialiser le composant WebPart. Vérifiez le format des propriétés
> > et réessayez.
> >
> > Une idée ?