Hi,
280 -- Italy (i think) -- all "normal ccsid" setting working 280 the DB2 clobs used by PHP toolkit would just naturally convert between client (ascii) and server (ebcdic) ... like breathing air it just works .. so try step 0) below first.
0) First ... maybe you should try PHP toolkit 1.4.0 and xmlservice 1.7.5 before 1208 setting or anything else below, because there was a big problem with double convert in PHP toolkit where internal use SimpleXML ws being overly helpful and messed up -- this may fix all (leave 819, C, httpd.conf 280).
download:
http://www.youngiprofessionals.com/wiki ... XMLSERVICESecond (if fails) ...
1) fastcgi.conf: You may want LANG=C and CCSID=1208, where 1208 is UTF-8, but i am not Italian , so i do not work in 280 CCSID (other people do).
2) Actual XML going between IBM i results in a PASE sh call (below) ...
- Code: Select all
<?xml version="1.0" encoding="ISO-8859-1"?>
<script>
<cmd>addlible ZENDSVR</cmd>
<sh rows='on'>/QOpenSys/usr/bin/system -i 'DSPLIBL'</sh>
</script>
2.5) You can try PASE sh call on a 5250 green screen see if it works default on your system
- Code: Select all
call qp2term
> /QOpenSys/usr/bin/system -i 'DSPLIBL'
Next still fails ...
3) We have all manner of CCSID overrides in toolkit/xmlservice 1.4.0/1.75 ...
Maybe my bug ....
4) ... but i think there is a bug in XMLSERVICE for this path
===============
email from a XMLSERVICE DBCS tester today (12/18/2012)
=================
These days, I have tested XMLService.
It is great!
But I found PASE <sh> call does not return a result if it has DBCS data.
I found the CCSID 819 value is hard coded in XMLSERVICE/QRPGLESRC(PLUGPASE) like this.
- Code: Select all
Qp2RunPase(iarg1: *NULL: *NULL: 0: 819: %ADDR(iarg1): %ADDR(ienv1));
Off course, it is not for DBCS environments. I have changed it to 1208 and confirmed to get DBCS characters correctly
- Code: Select all
CALL XMLSERVICE.iPLUGR32K('/tmp/onoda','*SBMJOB','<?xml version=''1.0''?>
<sh rows=''on''>/QOpenSys/usr/bin/system ''WRKACTJOB''</sh>
')
The "Run Display Library (DSPLIBL) command (/Samples/Toolkit/CLCommand.php) " sample also return DBCS characters fine with this patch and encoding = "UTF-8" setting in toolkit.ini.
I hope we can set a PASE CCSID value in a future release not to need patch the program.
Regards,