64 messaggi dal 08 settembre 2006
Come da oggetto devo richiamare un servizo web pubblicato da una pagina silverlight per acquisire dei dati, questo il codice :

Dim wbsProva As New prova.Service1SoapClient

wbsProva.wmCheckLoginAsync(txtUtente.Text, txtPassword.Password)

quando però lancio la chiamata viene generato l'errore di crossdomain :

'Errore durante il tentativo di effettuare una richiesta all'URI 'http://x.x.x.x/prova/Main.asmx'. Ciò può essere dovuto al tentativo di accesso a un servizio in modalità di interdominio senza disporre di criteri di interdominio appropriati o con criteri non adatti ai servizi SOAP. Potrebbe essere necessario contattare il proprietario del servizio per pubblicare un file di criteri di interdominio e verificare che consenta l'invio di intestazioni HTTP correlate a SOAP. Questo errore potrebbe essere anche dovuto all'utilizzo di tipi interni nel proxy del servizio web senza utilizzare l'attributo InternalsVisibleToAttribute. Per ulteriori informazioni, vedere l'eccezione interna.'

a parte il fatto che non ne capisco il motivo dato che sto eseguendo il sito dall'ambiente VS2010 ma nella stessa macchina dove è pubblicato il servizio, ho letto che per risolvere bisogna inserire un file chiamato 'clientaccesspolicy.xml' dove è presente il servizio (root) contenente :

<?xml version="1.0" encoding="utf-8"?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from http-request-headers="*">
<domain uri="*"/>
</allow-from>
<grant-to>
<resource path="/" include-subpaths="true"/>
</grant-to>
</policy>
</cross-domain-access>
</access-policy>

ma non funziona....

Grazie a tutti,
bryger ha scritto:
Come da oggetto devo richiamare un servizo web pubblicato da una pagina silverlight per acquisire dei dati, questo il codice :

Dim wbsProva As New prova.Service1SoapClient

wbsProva.wmCheckLoginAsync(txtUtente.Text, txtPassword.Password)

quando però lancio la chiamata viene generato l'errore di crossdomain :

'Errore durante il tentativo di effettuare una richiesta all'URI 'http://x.x.x.x/prova/Main.asmx'. Ciò può essere dovuto al tentativo di accesso a un servizio in modalità di interdominio senza disporre di criteri di interdominio appropriati o con criteri non adatti ai servizi SOAP. Potrebbe essere necessario contattare il proprietario del servizio per pubblicare un file di criteri di interdominio e verificare che consenta l'invio di intestazioni HTTP correlate a SOAP. Questo errore potrebbe essere anche dovuto all'utilizzo di tipi interni nel proxy del servizio web senza utilizzare l'attributo InternalsVisibleToAttribute. Per ulteriori informazioni, vedere l'eccezione interna.'

a parte il fatto che non ne capisco il motivo dato che sto eseguendo il sito dall'ambiente VS2010 ma nella stessa macchina dove è pubblicato il servizio, ho letto che per risolvere bisogna inserire un file chiamato 'clientaccesspolicy.xml' dove è presente il servizio (root) contenente :

<?xml version="1.0" encoding="utf-8"?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from http-request-headers="*">
<domain uri="*"/>
</allow-from>
<grant-to>
<resource path="/" include-subpaths="true"/>
</grant-to>
</policy>
</cross-domain-access>
</access-policy>

ma non funziona....

Grazie a tutti,

Ciao,
prova ad attaccare Fiddler, così capisci quali risorse vengono effettivamente chiamate e chi risponde "male" :)

Alessio Leoncini (SilverlightItalia.com)
.NET Developer, Interactive Designer, UX Specialist, Trainer @ 5DLabs.it

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.
Community
Ultimi messaggi
UTENTI ONLINE
In primo piano

I più letti di oggi

Media
In evidenza
MISC