Comments (10)
This seems like a reasonable request. According to the JSON specification,
string
values should be quoted.
We will add an options on the Gson Builder to allow for "lenient" parsing;
however,
all objects that get serialized by Gson (or your outgoing responses) will have
quoted
string. My gut instinct is that this should be fine since it abides by the JSON
spec, but I just wanted to make you aware that if you are currently returning
JSON
responses with unquoted string then this may break your clients.
We will aim to get this into the 1.2.1 release which is slotted for early
October.
Original comment by [email protected]
on 14 Sep 2008 at 7:30
- Added labels: Type-Enhancement
- Removed labels: Type-Defect
from google-gson.
Original comment by [email protected]
on 14 Sep 2008 at 7:30
- Changed state: Accepted
from google-gson.
Thanks for your response. I think generating strings with quotes is fine. I was
worried about handling requests from people with other libraries.
I agree that this new behaviour should be optional.
Original comment by [email protected]
on 16 Oct 2008 at 4:55
from google-gson.
I am not clear about how it is even supposed to parse. If there are no quotes,
what
is the delimiter indicating end of a string?
Can someone point me to a library that handles unquoted strings?
Original comment by inder123
on 16 Oct 2008 at 5:09
from google-gson.
Ah I see that the request is being made for the field names, not values. There
it
makes a little more sense.
Can the header names have arbitrary string values? Can they contain the ':'
character
? Can they contain the white space?
Original comment by inder123
on 17 Oct 2008 at 10:27
from google-gson.
The initial post included a link to the javadoc for a library that supports
this.
The values need to be quoted if they contain the characters you describe or are
reserved words etc. Additional rules as listed here:
http://www.json.org/javadoc/org/json/JSONObject.html
Original comment by [email protected]
on 21 Oct 2008 at 3:44
from google-gson.
A slight variation on this is allowing *any* value that the parser otherwise
recognizes to be assigned to a String. In particular, I would like to see
{ "foo": 1}
be compatible with
class bar {
String foo;
};
Now, you get a gson exception stating in effect that a java.lang.Integer can't
be
assigned to a java.lang String. But I thought *all* java objects had a
toString()
function that could be used for the conversion? (Might be wrong on this in
general,
but it is certainly true for Integer, Boolean, etc.)
The motivation for this, among other things, is that when you're first
exploring a
new JSON source, you can declare everything to be a String, see what you get,
then
make adjustments either in class declarations or in processing logic.
I suppose you could declare everything to be an Object and see what you get,
but I
haven't (yet!) tried this and don't know how it works.
Thanks in advance,
Jim Renkel
Original comment by [email protected]
on 22 Oct 2008 at 4:14
from google-gson.
Original comment by [email protected]
on 25 Nov 2008 at 6:58
from google-gson.
Added a test in r313
Original comment by inder123
on 26 Nov 2008 at 6:27
from google-gson.
Fixed in r314
Original comment by inder123
on 26 Nov 2008 at 6:27
- Changed state: Fixed
from google-gson.
Related Issues (20)
- Should support custom serializers for map keys HOT 4
- please add support for getter method HOT 1
- Permit type data in the serialized JSON HOT 7
- Unbearable when toJson a long string(1M) HOT 2
- Gson should provide a way to configure order for field navigation HOT 5
- Not able to deserialize. HOT 2
- Not able to deserialize. HOT 3
- support java.sql.Date and Timestamp types HOT 6
- Having an inner class gives this error - No-args constructor for B does not exist. HOT 1
- Extend Expose annotation to support classes HOT 3
- Support circular references HOT 18
- Gson should have a way to provide custom exclusion strategies HOT 2
- all should be strings HOT 2
- Error Deserializing objects using fromJson(string, type) HOT 4
- com.google.gson.Gson should be able to toJson JsonElements/JsonObjects HOT 3
- Deserialization/Serialization issue when json is injected via spring annotations HOT 5
- Set formatting style in pretty printing HOT 1
- suggestion: Add @Verification annotation for easy verification of POJO validity HOT 6
- compilation via maven fails due to generics bug in javac HOT 1
- Gson needs a more obust inclusion and exclusion mechanism HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from google-gson.