× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Thanks Bradley

Yes we are using the Apache server. So used yajl_stdin_load_tree() to
load the JSON data to the node.

Set switch is_UTF8 *ON as data already UTF-8.

Tested with 'Content-Type' header set to 'application/json' and works fine.


On 29 March 2017 at 15:39, Bradley Stone <bvstone@xxxxxxxxx> wrote:
That's because the Apache server (which I assume you're running in front of
our RPG web service) will not convert the data from ASCII to EBCDIC if the
content type is application/json.

Have you tried using:
yajl_stdin_load_tree(): Load JSON data from stdin (Apache)
into a tree structure.

is_utf8 (input) = *ON=data is already UTF-8.
*OFF=data is in EBCDIC
errMsg (output) = error message (if any)

To load the data? I believe the default is to treat the data as utf8.

Bradley V. Stone
www.bvstools.com
Native IBM i e-Mail solutions for Microsoft Office 365, Gmail, or any Cloud
Provider!

On Wed, Mar 29, 2017 at 8:54 AM, Keith McCully <keithmccully@xxxxxxxxx>
wrote:

I am attempting to parse a JSON formatted string from within a RPG
REST web service server program. The parsing is done via Scott
Klement's YAJL wrapper.

The web service is called from an IBM i node.js client as a HTTP 'put'
method. Since I'm passing a JSON string in the request body I have to
set the 'Content-Type' header. However if I set the Content-Type to
'application/json' I get this YAJL error: “lexical error: invalid char
in json text”.

Here's a sample of the JSON - externally validated as valid JSON.

{"pm_option":"ZZZ","pm_branch":"999","pm_accno":"
AAA1234567ZZZ","pm_snma1":"PPP","pm_trnamt":"10.78","pm_
cash":"N","pm_payee":"A.N.Other","pm_wthacc":"","pm_
wthscdc":"","pm_wthrefc":"","pm_taccn":"","pm_tsnma1":"","pm_demand":"N"}

If I now set the Content-Type to 'text/xml' YAJL doesn't complain and
parse works fine.

I get the same results if I run the web service call from SoapUI so
the error is not caused by the node client.

Any suggestions as to the cause?

Thanks,

Keith
--
This is the RPG programming on the IBM i (AS/400 and iSeries) (RPG400-L)
mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: http://amzn.to/2dEadiD
--
This is the RPG programming on the IBM i (AS/400 and iSeries) (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxx for any subscription related questions.

Help support midrange.com by shopping at amazon.com with our affiliate link: http://amzn.to/2dEadiD

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.