Benutzer mit den meisten Antworten
Fehler beim Zugriff auf WebService

Frage
-
Hallo Zusammen.
Ich habe eine Silverlight Anwendung erstellt, welche in der Entwicklungsumgebung einwandfrei läuft. Nun habe ich die Anwendung auf dem Server (2008) veröffentlicht und kann von meinem Client auch darauf zugreifen.
Sobald ich nun aber etwas Anzeigen möchte, sprich auf den WebService zugreife, erhalte ich folgende Fehlermeldung:
Fehler beim Senden einer Anforderung an den URI "http://localhost:1218/....svc". Ursache ist möglicherweise, dasss ohne die entsprechende domänenübergreifende Richtlinie oder mit einer nicht für SOAP-Dienste geeignete Richtlinie domänenübergreifend auf einen Dienst zugegriffen wurde. Möglicherweise müssen Sie sich an den Besitzer des Dienstes wenden, damit eine domänenübergreifende Richtliniendateiveröffentlicht und das Senden von sich auf SOAP beziehenden HTTP-Headern zugelassen wird. Dieser Fehler kann auch durch Verwendung von internen Typen im Webdienstproxy ohne das InternalsVisibleToAttribute-Attribut verursacht werden.
Weis vllt. jemand woran das liegt oder was ich vllt. vergessen haben könnte?
Bin für jede Hilfe dankbar!!!
MFG- Typ geändert Robert Breitenhofer Freitag, 9. Oktober 2009 08:05 Frage
- Typ geändert ThunderBold Freitag, 6. November 2009 11:11
Freitag, 9. Oktober 2009 07:32
Antworten
-
Man kann der Endpoint-Eigenschaft der Service-Instanz einen anderen Endpoint zuweisen. Die Information dazu kann man aus einer separaten Datei holen, z.B. aus einer XML-Datei, die z.B. ein serialisiertes Objekt ist und vom Anwender eingestellt werden kann.
--
Peter- Als Antwort vorgeschlagen Peter Fleischer Freitag, 6. November 2009 13:22
- Als Antwort markiert Robert Breitenhofer Freitag, 20. November 2009 07:47
Freitag, 6. November 2009 13:22
Alle Antworten
-
Du musst den Zugriff zulassen über eine ClientAccessPolicy.xml im Kernverzeichnis ( der WebSite). Der Inhalt könnte so aussehen (für Zugrif "alle"):
<?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>
--
Peter- Als Antwort vorgeschlagen Peter Fleischer Freitag, 9. Oktober 2009 20:45
- Als Antwort markiert Robert Breitenhofer Mittwoch, 4. November 2009 12:18
Freitag, 9. Oktober 2009 20:44 -
Hallo Peter,
danke für die Antwort. Den Zugriff habe ich genau so defienert.
Zudem habe ich noch die crossdomain.xml drin, die so aussieht:
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<allow-http-request-headers-from domain="*" headers="*"/>
</cross-domain-policy>
Leider funktioniert es damit nicht. Gibt es sonst noch etwas was man falsch machen könnte, oder nach was ich sonst noch schauen kann?
Gruß TBDienstag, 13. Oktober 2009 10:25 -
Hallo ThunderBold,
Schau Dir die folgende Diskussion an. Vielleicht findest Du etwas dass Dir weiter helfen kann.
Grüße,
Robert
- Als Antwort vorgeschlagen Robert Breitenhofer Mittwoch, 28. Oktober 2009 10:25
- Nicht als Antwort vorgeschlagen Robert Breitenhofer Donnerstag, 29. Oktober 2009 14:12
Dienstag, 27. Oktober 2009 14:40 -
Hallo ThunderBold,
Vielleicht können Dir die folgenden Artikel weiterhelfen:
Debuggen von Diensten für Silverlight-Anwendungen à http://msdn.microsoft.com/de-de/library/dd470100(VS.95).aspx
http://www.aspnetzone.de/forums/thread/213427.aspx
http://www.mycsharp.de/wbb2/thread.php?postid=3568184
Grüße,
Robert
- Als Antwort vorgeschlagen Robert Breitenhofer Dienstag, 3. November 2009 12:13
- Als Antwort markiert Robert Breitenhofer Mittwoch, 4. November 2009 12:18
Donnerstag, 29. Oktober 2009 14:26 -
Hallo Robert,
entschuldige die späte Antwort.
ALso es war so das der Zugriff auf die Datenbank nicht funktioniert hat. Das habe ich nun behoben und nun funktioniert alles einwandfrei.
Danke für eure Hilfe!!!
Nun habe ich aber noch eine Frage dazu:
In der ServiceReference.ClientConfig (die in der .xap Datei liegt) muss ich ja die Adresse http://localhost:1234/Service/Service.svc anpassen.
In meiner HTML Seite gebe ich ja den Pfad zur .xap Datei an, damit die Silverlight Anwendung richtig läuft.
Wenn ich meine Anwendung nun an einen Kunden ausliefern würde müsste er ja erst folgende Schritte gehen bis die Anwendung läuft:
- xap Datei in zip umbenennen
- zip Datei entpacken
- Adresse in der ServiceReference.Clientconfig anpsaaen
- Daten wieder zippen
- zip Datei in xap umbenennen
Nun wollte ich wissen ob man die ServiceReference.ClientConfig nicht auslagern kann, so das sie direkt neben der xap Datei im selben Ordner liegt und dies dann in der Html Datei mit angebe, damit der Kunde nur einen der fünf Schritte gehen muss?
gruß ThunderBold
Freitag, 6. November 2009 11:10 -
Man kann der Endpoint-Eigenschaft der Service-Instanz einen anderen Endpoint zuweisen. Die Information dazu kann man aus einer separaten Datei holen, z.B. aus einer XML-Datei, die z.B. ein serialisiertes Objekt ist und vom Anwender eingestellt werden kann.
--
Peter- Als Antwort vorgeschlagen Peter Fleischer Freitag, 6. November 2009 13:22
- Als Antwort markiert Robert Breitenhofer Freitag, 20. November 2009 07:47
Freitag, 6. November 2009 13:22