-
Ja vorhin habe ich bereits einen Thread gefunden wo du dies erklärst (Link)
Habe die Prozedur dann auch demtnsprechend einmal angepasst:
Code:
ctl-opt main(main) dftactgrp(*no) option(*nounref);
//------------------------------------------------------------------//
// Procedure - Main //
//------------------------------------------------------------------//
dcl-proc main;
dcl-s myfile sqltype(CLOB_FILE); // CLOB-File
dcl-s myurl varchar(256); // URL
dcl-s myheader varchar(1500); // HTTP-Header
dcl-s query varchar(256); // QueryString
dcl-ds WebserviceRequest qualified;
email varchar(100);
email_allowed varchar(5);
fax varchar(20);
has_registered varchar(5);
kundeid varchar(10);
locked varchar(5);
telefon varchar(20);
terms_of_service_accepted varchar(5);
terms_of_service_accepted_on varchar(10);
anrede varchar(5);
display_name varchar(100);
firma varchar(100);
name varchar(100);
ort varchar(100);
plz varchar(100);
strasse varchar(100);
username varchar(10);
vorname varchar(50);
id varchar(10);
end-ds;
dcl-c XMLOPTIONS 'doc=file case=any trim=all +
allowmissing=yes allowextra=yes';
dcl-s testvar char(1);
dcl-s xmlPath char(1000);
EXEC SQL SET OPTION DATFMT=*ISO, timfmt=*ISO, COMMIT=*NONE,
CLOSQLCSR=*ENDACTGRP;
myurl = 'http://prodportal01/Portal/api/v2/users?filter=';
query = 'username:testüser';
// URL-Encoding
exec sql set :query = systools.urlencode(:query,'UTF-8');
myurl += query; // URL + QueryString
myfile_name = '/WebServices/GetUserData/test' + %char(%timestamp()) + '.xml'; // StreamFile
myfile_nl = %len(%trim(myfile_name)); // NameLength
myfile_fo = SQFOVR; // FileOverwrite
EXEC SQL VALUES systools.httpgetclob (:myurl, :myheader)
INTO :myfile;
clear WebserviceRequest;
xmlPath = myfile_name;
xml-into(e) WebserviceRequest %xml(%trim(xmlPath):'path=PagedListView'
+ 'ModelOfuserNcCATIYq/items/user'
+ ' '
+ XMLOPTIONS);
testvar = '1';
end-proc;
Das klappt soweit auch jetzt alles, ich bekomme nun endlich auch bei Umlauten Daten zurück!
Das einzige Problem was ich nun habe ist das meine Daten wenn Sie Umlaute enthalten so aussehen:
Code:
WEBSERVICEREQUEST.USERNAME = 'testüser
Ich hätte jetzt gedacht das kommt dadurch das die XML nicht UTF-8 codiert ist, dies scheint aber der Fall zu sein, jedenfalls steht folgendes zu Beginn der XML: version="1.0" encoding="utf-8"
Es scheint wohl ein Codepage Problem zu sein, aber ich habe keine Ahnung wie ich einen String in RPG in eine andere Codepage überführen kann....unter wrkjobd habe ich jedenfalls keine Option für die CCSID gefunden
"Mit dem ersten Glied ist die Kette geschmiedet. Wenn die erste Rede zensiert, der erste Gedanke verboten, die erste Freiheit verweigert wird, dann sind wir alle unwiderruflich gefesselt." - Cpt. Jean-Luc Picard
Similar Threads
-
By svit in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 02-03-17, 15:13
-
By Malte in forum NEWSboard Programmierung
Antworten: 3
Letzter Beitrag: 12-02-17, 10:07
-
By Malte in forum NEWSboard Programmierung
Antworten: 18
Letzter Beitrag: 11-11-16, 13:18
-
By svit in forum NEWSboard Programmierung
Antworten: 5
Letzter Beitrag: 11-09-14, 13:23
-
By harbir in forum NEWSboard Programmierung
Antworten: 3
Letzter Beitrag: 26-03-14, 13:13
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks