1Danke
ERLEDIGT
JA
JA
ANTWORTEN
4
4
ZUGRIFFE
1772
1772
EMPFEHLEN
-
12.02.10 08:57 #1
- Registriert seit
- Oct 2003
- Beiträge
- 117
Hi Forum
ich habe einen simplen Web Service:
POST /bla/blu.asmx HTTP/1.1
Host: www.tutorials.de
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "www.tutorials.de/webservice//test"
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<test xmlns="http://www.tutorials.de/webservice/">
<auth>
<ID>int</ID>
<Value>string</Value>
</auth>
</test>
</soap:Body>
</soap:Envelope>
Wenn ich nun mit JAVA auf diesen Web Service poste, funktioniert alles, solange ich in VALUE keine Sonderzeichen (ä, ö, ü, èéà) sende.... mach ich das, dann erhalte ich einen Bad Request!
Was genau muss ich am .NET Web-Service ändern, damit er in VALUE effektiv die Sonderzeichen akzeptiert?Oder sonst irgendwo etwas zusätzlich angeben?
Ich könnte natürlich alle Sonderzeichen in JAVA maskieren, und dann im .NET Web Service wieder dekodieren, aber das Problem ist, dass der Web Service bei uns läuft und die Java-Datei beim Kunden und wir diese nicht so einfach ersetzen können?
Dann noch dies:
Wie ist die korrekte Vorgehensweise beim Versenden von Sonderzeichen via Web-Service?
cheerioh & thx
SiSGeändert von StehtimSchilf (12.02.10 um 09:04 Uhr)
-
12.02.10 09:39 #2
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
Hi.
Wie bzw. womit erstellst du denn die Anfragen an den Web Service auf der Java Seite?
Wenn du die Daten korrekt als UTF-8 kodierst, muß das funktionieren.
GrußIf at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
18.02.10 09:22 #3
- Registriert seit
- Oct 2003
- Beiträge
- 117
hi
danke, richtig, wenn ich auf der Clientseite (Java), die
verwende, dann funktionierts. Nur leider habe ich dies beim ersten Release vergessenCode :1
byte[] bytes = content.getBytes("UTF-8")
. Drum schwirren eben noch Clients rum, in deren Code keine UTF-8 Kodierung vorgenommen wurde. Diese zu aktualisieren ist nicht so einfach. Daher meine Idee, evtl. am WebService was zu schrauben, denn dieser läuft auf unseren Servern im Hause.
Danke & Gruess
SiS
-
18.02.10 10:04 #4
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
Das Problem ist das du sowohl im HTTP Header als auch im XML Dokument als charset bzw. encoding UTF-8 angibst, aber dann kein UTF-8 sendest.
Hast du denn den Java Webservice Client per Hand programmiert?!
Du könntest evtl. einen ASHX Handler schreiben, den du dann vor deinen ASMX Webservice schaltest. In dem HttpRequest schaust du dir das XML Dokument an ob es valides UTF-8 ist. Wenn nicht müßtest du es umkodieren und als Proxy eine Anfrage an den Webservice stellen. Wenn alles OK ist könntest du die Anfrage einfach weiterleiten.
GrußIf at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
19.02.10 12:23 #5
- Registriert seit
- Oct 2003
- Beiträge
- 117
Hey das mit dem ASHX-Handler ist noch ne super Idee - nicht nur für dieses Problem, sondern für künftige (die werden schon kommen
) 
Danke!
Und ja, das mit dem Java Web Service war ne händische Arbeit vor langer Zeit...
Aber am einfachsten ist es, wenn ich einfach jedem der mit einer alten Client-Version daherkommt ne aktuelle Version verpasse - nur müssen sich diese halt zuerst bei mir beschweren!
Hey Danke vielmals!
cheerioh
SiS
Ähnliche Themen
-
Empfehlung für Implementierung: Http Request an einen WebService
Von yigiter im Forum JavaAntworten: 0Letzter Beitrag: 13.03.10, 14:46 -
non faces request (email) in faces request
Von navino im Forum Enterprise Java (JEE, J2EE, Spring & Co.)Antworten: 0Letzter Beitrag: 08.10.07, 17:33 -
HTTP Request an einen Webservice
Von LongDonJohn im Forum PHPAntworten: 6Letzter Beitrag: 15.02.07, 21:13 -
Der Begrif REQUEST
Von Peter Klein im Forum PHPAntworten: 1Letzter Beitrag: 17.01.06, 01:18 -
& Request
Von thrall im Forum ASPAntworten: 1Letzter Beitrag: 29.03.04, 06:32





Zitieren

Login





