Re: Can you parse JSON with the eXist database?

Joern Turner <[email protected]> Mon, 19 Aug 2024 09:19:45 +0200
Newsgroups gmane.text.xml.exist
Message-ID <CALTdk8aGQ7Y1QEEnw2zNkhXOMBswKgAmsjkB44Uqna56+KpPrQ@mail.gmail.com>
Ted,

Make sure that your json is returned by your app by testing the  Get
request in the Browser.  Most likely your controller.xql doesn't return
that file and your need a rule for that.

hth,

Joern

Ted Hickox <[email protected]> schrieb am Mo., 19. Aug. 2024, 07:26:

> My apology for giving you incorrect Javascript code.  I corrected my
> code.  Here it is:
>
> function Setup() {
>     var XMLHttp;
>     var JSON_Data;
>
>
>     XMLHttp = new XMLHttpRequest();
>     XMLHttp.open("GET", "
> http://localhost:8080/exist/rest/db/apps/HTML_Student/people.json", true);
>     XMLHttp.onreadystatechange = function () {
>          if(XMLHttp.readyState == 4){}{
>              JSON_Data = XMLHttp.responseText;
>              document.getElementById("JSON_Text").value = JSON_Data;
>          }
>
>     };
>
> }
>
> When I run the code and check the console, it states that it can't find
> people.json.  I don't know why my webpage can't find people.json  Can you
> assist me?
>
> On Sun, Aug 18, 2024 at 11:42 AM Jean-Paul Rehr <[email protected]> wrote:
>
>> Ted, none of this has to do with eXist parsing JSON.
>>
>> The URL http://localhost:8080/exist/rest/db/apps/HTML_Student/people.json
>> is requesting a JSON document from eXist, that is, eXist is serving the
>> document not parsing it.
>>
>> Incidentally, one can parse a json document in Xquery with the command:
>>
>> fn:json-doc("/db/apps/HTML_Student/people.json")
>>
>> JPR
>>
>> On Sun, Aug 18, 2024 at 6:26 PM Ted Hickox <[email protected]> wrote:
>>
>>> If it's possible to parse JSON with the eXist database, why is the
>>> following code retrieving any data from my JSON document:
>>>
>>> JSON Example.xhtml
>>>
>>> <html xmlns="http://www.w3.org/1999/xhtml">
>>> <head>
>>> <title>First JSON Experiment</title>
>>> <link rel="stylesheet" type="text/css" href="
>>> http://localhost:8080/exist/rest/db/apps/HTML_Student/JSON_Example.css
>>> "/>
>>> <script language="javascript" src="
>>> http://localhost:8080/exist/rest/db/apps/HTML_Student/JSON_Example.js"/>
>>> </head>
>>> <body onload = "Setup()">
>>> <input type = "text" id = "JSON_Text">
>>> </input>
>>> </body>
>>> </html>
>>>
>>> JSON Example.css
>>>
>>> #JSON_Text {
>>>     position: absolute;
>>>     top: 200px;
>>>     left: 300px;
>>>     height: 25px;
>>>     width: 300px;
>>> }
>>>
>>> JSON Example.js
>>>
>>> function Setup() {
>>>     var XMLHttp;
>>>     var JSON_Data;
>>>
>>>     XMLHttp = new XMLHttpRequest();
>>>
>>>     XMLHttp.onreadystatechange = function () {
>>>          if(XMLHttp.readyState == 4){
>>>              JSON_Data = JSON.parse(XMLHttp.responseText);
>>>          }
>>>     };
>>>
>>>     XMLHttp.open("Get", "
>>> http://localhost:8080/exist/rest/db/apps/HTML_Student/people.json",
>>> true);
>>>     XMLHttp.send();
>>>
>>>
>>>     document.getElementById("JSON_Text").value = JSON_Data;
>>> }
>>>
>>> People.json
>>>
>>> {
>>>      "People":{
>>>           {
>>>                "name": "Alex",
>>>                "online": true
>>>           },
>>>           {
>>>                "name": "Billy",
>>>                "online": false
>>>           }
>>>
>>>      }
>>> }
>>> _______________________________________________
>>> Exist-open mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/exist-open
>>>
>> _______________________________________________
> Exist-open mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/exist-open
>

_______________________________________________
Exist-open mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/exist-open