[gelöst] webservice - unternehmensname mit sonderzeichen

17. April 2009 11:09

ich bin beim testen von webservices und habe ein problem, da hier ein mandant sonderzeichen im namen enthält im stil von (bla GmbH & Co. KG). in der hilfe zu webservices steht als url nur //<Server>:<WebServicePort>/<ServerInstance>/WS/<CompanyName>/Page/<ServiceName>, wobei ich bei einem beispiel mit der cronus ltd gefunden habe, dass die dort das leerzeichen durch ein unterstrich ersetzen!
dies ist ja kein "normales" url encoding, da sonst eigentlich aus einem leerzeichen ein %20 werden würde. ich weiß daher nicht, was mit dem & und dem . passieren muss, damit es funktioniert. alle bisherigen versuche sind fehlgeschlagen und man findet keine dokumentation, was sich navision dabei gedacht hat.

weiß dazu jemand mehr?

daniel
Zuletzt geändert von dr am 20. April 2009 08:46, insgesamt 1-mal geändert.

Re: webservice - unternehmensname mit sonderzeichen

17. April 2009 11:13

Das Problem besteht nicht nur bei Webservices, sondern schon beim Starten des RTC. Daraufhin haben wir die Mandanten umbenannt. Eine andere Möglichkeit ist mir derzeit nicht bekannt. Ich rechne damit, dass dies - wenn nicht schon geschehen - mit SP1 behoben sein wird.

Re: webservice - unternehmensname mit sonderzeichen

17. April 2009 11:21

hi natalie,
deine aussage kann ich nicht bestätigen. genau den besagten mandanten mit sonderzeichen im namen kann ich mit dem role tailored client öffnen und ihn einwandfrei benutzen.

Re: webservice - unternehmensname mit sonderzeichen

17. April 2009 12:22

dr hat geschrieben:hi natalie,
deine aussage kann ich nicht bestätigen. genau den besagten mandanten mit sonderzeichen im namen kann ich mit dem role tailored client öffnen und ihn einwandfrei benutzen.

Dann war es irgend etwas anderes - ich weiß nur, dass wir das "&" im Mandantennamen nicht verwenden konnten, und es hatte nichts mit Websevices zu tun.

Re: webservice - unternehmensname mit sonderzeichen

17. April 2009 18:44

Oha, ja, da wr was mit der Umsetzung von Sonderzeichen. Vorerst mal ohne Garantie. kann gern nochmal nachsehen in der kommenden Woche:

- Leer- und Sonderzeichen werden in "_" (Unterstrich) umgesetzt.
- Es gibt nie mehr als 2 aufeinanderfolgende "_", Rest wird ausgelassen

Ich glaub es war noch eine Sache, aber da muss ich nun gänzlich passen. Gefühlt würde ich sagen, dass die "Ich & Du GmbH & Co. KG" dann "Ich__Du_GmbH__Co__KG" heisst, aber nagel mich nicht drauf fest. Alternativ auch nur jeweils 1 "_" testen...

Re: webservice - unternehmensname mit sonderzeichen

17. April 2009 19:49

Ok, habs doch noch gefunden:

  • Alle '@', '\', '/', '"', ' ', '(', ')', '.', '-' werden umgesetzt in '_'. Aber nur, wenn das vorhergehende Zeichen kein '_' ist. Sprich entweder ein Unterstrich eh im Namen vorkommt, oder vorher ein Sonderzeichen umgesetzt wurde.
  • Abschließende Unterstriche werden entfernt
  • XML Codieren des Ergebnisses. Also Umsetzen von weiteren nicht XML konformen Sonderzeichen in eine Hex Representation in der Form '_xYYYY_', wobei YYYY der Hex Wert ist, also z.B. 0026 für ein '&'. Ergäbe also '_x0026_'. Damit hat man also maximal 2 Unterstriche am Stück.

Damit wird aus meinem Beispiel von vorhin: "Ich & Du GmbH & Co. KG" --> "Ich__x0026__Du_GmbH__x0026__Co_KG".

Und aus deiner ursprünglichen Anfrage: "bla GmbH & Co. KG" --> "bla_GmbH__x0026__Co_KG".

Umlaute sind zumindest fragwürdig, würde ich niemals einsetzen. Weiterhin gibt es wohl auch noch andere Ausnahmefälle. Aber wer dann einen solchen Namen hat, der tut mir Leid :)

EDIT: Korrektur Unterstriche,
NavWebServiceAddress1.0.0.0.zip
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Re: webservice - unternehmensname mit sonderzeichen

20. April 2009 08:46

SilverX hat geschrieben:Ok, habs doch noch gefunden:
[...]


wo bitte findet mans sowas? ;) aber vielen dank, es funktioniert doch tatsächlich.

daniel