Holger,

Thanks - this is now fixed (the word "static" involved!)

        Andy

BTW JIRA helps the project record what has done and helps other users looking for related issues.

https://issues.apache.org/jira/browse/JENA-564

On 14/10/13 01:00, Holger Knublauch wrote:
Test case:

import org.apache.jena.atlas.json.JSON;
import org.junit.Test;

public class JSONTest {

     @Test
     public void testRepeat() {
         try {
             JSON.parse("");
         }
         catch(Exception ex) {
             // Ignore
             System.out.println("Expected error " + ex);
         }
         JSON.parse("{}");
     }
}

works fine if the first JSON.parse gets commented out, but reports

org.apache.jena.atlas.json.JsonParseException: Not a JSON object START:
[null]
     at
org.apache.jena.atlas.json.io.parser.ParserBase.exception(ParserBase.java:130)

     at org.apache.jena.atlas.json.io.parser.JSONP.parse(JSONP.java:49)
     at
org.apache.jena.atlas.json.io.parser.JSONParser.parse(JSONParser.java:58)
     at
org.apache.jena.atlas.json.io.parser.JSONParser.parse(JSONParser.java:52)
     at org.apache.jena.atlas.json.JSON._parse(JSON.java:125)
     at org.apache.jena.atlas.json.JSON._parse(JSON.java:105)
     at org.apache.jena.atlas.json.JSON.parse(JSON.java:44)
     at org.topbraid.jenax.test.JSONTest.testRepeat(JSONTest.java:17)

otherwise. The first parsing should not have an effect on subsequent
calls. Our work-around is not to ever call JSON.parse with an empty
string, so it's not high priority but I thought I'd report it anyway in
case there is a deeper problem (e.g. with concurrency of this class).

Thanks
Holger


Reply via email to