Package org.apache.struts2.json
Class JSONUtil
java.lang.Object
org.apache.struts2.json.JSONUtil
Wrapper for JSONWriter with some utility methods.
- 
Nested Class SummaryNested ClassesModifier and TypeClassDescriptionstatic interfaceRealizes the visit(Class) method called by vistInterfaces for all encountered classes/interfaces
- 
Field SummaryFields
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionstatic Objectdeserialize(Reader reader) Deserializes a object from JSONstatic Objectdeserialize(String json) Deserializes a object from JSONstatic booleanisGzipInRequest(jakarta.servlet.http.HttpServletRequest request) static Method[]listSMDMethods(Class clazz, boolean ignoreInterfaces) List visible methods carrying the @SMDMethod annotationprocessIncludePatterns(Set<String> includePatterns, String type) voidSerializes an object into JSON to the given writer.voidSerializes an object into JSON to the given writer.voidserialize(Writer writer, Object object, Collection<Pattern> excludeProperties, Collection<Pattern> includeProperties, boolean excludeNullProperties) Serializes an object into JSON to the given writer, excluding any properties matching any of the regular expressions in the given collection.voidserialize(Writer writer, Object object, Collection<Pattern> excludeProperties, Collection<Pattern> includeProperties, boolean excludeNullProperties, boolean cacheBeanInfo) Serializes an object into JSON to the given writer, excluding any properties matching any of the regular expressions in the given collection.Serializes an object into JSON.serialize(Object object, Collection<Pattern> excludeProperties, Collection<Pattern> includeProperties, boolean ignoreHierarchy, boolean excludeNullProperties) Serializes an object into JSON, excluding any properties matching any of the regular expressions in the given collection.serialize(Object object, Collection<Pattern> excludeProperties, Collection<Pattern> includeProperties, boolean ignoreHierarchy, boolean excludeNullProperties, boolean cacheBeanInfo) Serializes an object into JSON, excluding any properties matching any of the regular expressions in the given collection.serialize(Object object, Collection<Pattern> excludeProperties, Collection<Pattern> includeProperties, boolean ignoreHierarchy, boolean enumAsBean, boolean excludeNullProperties, String defaultDateFormat) Serializes an object into JSON, excluding any properties matching any of the regular expressions in the given collection.serialize(Object object, Collection<Pattern> excludeProperties, Collection<Pattern> includeProperties, boolean ignoreHierarchy, boolean enumAsBean, boolean excludeNullProperties, String defaultDateFormat, boolean cacheBeanInfo) Serializes an object into JSON, excluding any properties matching any of the regular expressions in the given collection.voidsetContainer(Container container) voidsetWriter(JSONWriter writer) static booleanvisitInterfaces(Class aClass, JSONUtil.ClassVisitor visitor) Visit all the interfaces realized by the specified object, its superclasses and its interfaces
 Visitation is performed in the following order: aClass aClass' interfaces the interface's superclasses (interfaces) aClass' superclass superclass' interfaces superclass' interface's superclasses (interfaces) super-superclass and so on
 The Object base class is base excluded.static voidwriteJSONToResponse(SerializationParams serializationParams) 
- 
Field Details- 
RFC3339_FORMAT- See Also:
 
- 
CACHE_BEAN_INFO_DEFAULTpublic static final boolean CACHE_BEAN_INFO_DEFAULT- See Also:
 
- 
REGEXP_PATTERN- See Also:
 
- 
WILDCARD_PATTERN- See Also:
 
 
- 
- 
Constructor Details- 
JSONUtilpublic JSONUtil()
 
- 
- 
Method Details- 
setWriter
- 
setContainer
- 
serializeSerializes an object into JSON.- Parameters:
- object- to be serialized
- cacheBeanInfo- Specifies whether to cache bean info in the JSONWriter
- Returns:
- JSON string
- Throws:
- JSONException- in case of error during serialize
 
- 
serializepublic String serialize(Object object, Collection<Pattern> excludeProperties, Collection<Pattern> includeProperties, boolean ignoreHierarchy, boolean excludeNullProperties) throws JSONException Serializes an object into JSON, excluding any properties matching any of the regular expressions in the given collection.- Parameters:
- object- to be serialized
- excludeProperties- Patterns matching properties to exclude
- includeProperties- Patterns matching properties to include
- ignoreHierarchy- whether to ignore properties defined on base classes of the root object
- excludeNullProperties- enable/disable excluding of null properties
- Returns:
- JSON string
- Throws:
- JSONException- in case of error during serialize
 
- 
serializepublic String serialize(Object object, Collection<Pattern> excludeProperties, Collection<Pattern> includeProperties, boolean ignoreHierarchy, boolean excludeNullProperties, boolean cacheBeanInfo) throws JSONException Serializes an object into JSON, excluding any properties matching any of the regular expressions in the given collection.- Parameters:
- object- to be serialized
- excludeProperties- Patterns matching properties to exclude
- includeProperties- Patterns matching properties to include
- ignoreHierarchy- whether to ignore properties defined on base classes of the root object
- excludeNullProperties- enable/disable excluding of null properties
- cacheBeanInfo- Specifies whether to cache bean info in the JSONWriter
- Returns:
- JSON string
- Throws:
- JSONException- in case of error during serialize
 
- 
serializepublic String serialize(Object object, Collection<Pattern> excludeProperties, Collection<Pattern> includeProperties, boolean ignoreHierarchy, boolean enumAsBean, boolean excludeNullProperties, String defaultDateFormat) throws JSONException Serializes an object into JSON, excluding any properties matching any of the regular expressions in the given collection.- Parameters:
- object- to be serialized
- excludeProperties- Patterns matching properties to exclude
- includeProperties- Patterns matching properties to include
- ignoreHierarchy- whether to ignore properties defined on base classes of the root object
- enumAsBean- whether to serialized enums a Bean or name=value pair
- excludeNullProperties- enable/disable excluding of null properties
- defaultDateFormat- date format used to serialize dates
- Returns:
- JSON string
- Throws:
- JSONException- in case of error during serialize
 
- 
serializepublic String serialize(Object object, Collection<Pattern> excludeProperties, Collection<Pattern> includeProperties, boolean ignoreHierarchy, boolean enumAsBean, boolean excludeNullProperties, String defaultDateFormat, boolean cacheBeanInfo) throws JSONException Serializes an object into JSON, excluding any properties matching any of the regular expressions in the given collection.- Parameters:
- object- to be serialized
- excludeProperties- Patterns matching properties to exclude
- includeProperties- Patterns matching properties to include
- ignoreHierarchy- whether to ignore properties defined on base classes of the root object
- enumAsBean- whether to serialized enums a Bean or name=value pair
- excludeNullProperties- enable/disable excluding of null properties
- defaultDateFormat- date format used to serialize dates
- cacheBeanInfo- Specifies whether to cache bean info in the JSONWriter
- Returns:
- JSON string
- Throws:
- JSONException- in case of error during serialize
 
- 
serializeSerializes an object into JSON to the given writer.- Parameters:
- writer- Writer to serialize the object to
- object- object to be serialized
- Throws:
- IOException- in case of IO errors
- JSONException- in case of error during serialize
 
- 
serializepublic void serialize(Writer writer, Object object, boolean cacheBeanInfo) throws IOException, JSONException Serializes an object into JSON to the given writer.- Parameters:
- writer- Writer to serialize the object to
- object- object to be serialized
- cacheBeanInfo- Specifies whether to cache bean info in the JSONWriter
- Throws:
- IOException- in case of IO errors
- JSONException- in case of error during serialize
 
- 
serializepublic void serialize(Writer writer, Object object, Collection<Pattern> excludeProperties, Collection<Pattern> includeProperties, boolean excludeNullProperties) throws IOException, JSONException Serializes an object into JSON to the given writer, excluding any properties matching any of the regular expressions in the given collection.- Parameters:
- writer- Writer to serialize the object to
- object- object to be serialized
- excludeProperties- Patterns matching properties to ignore
- includeProperties- Patterns matching properties to include
- excludeNullProperties- enable/disable excluding of null properties
- Throws:
- IOException- in case of IO errors
- JSONException- in case of error during serialize
 
- 
serializepublic void serialize(Writer writer, Object object, Collection<Pattern> excludeProperties, Collection<Pattern> includeProperties, boolean excludeNullProperties, boolean cacheBeanInfo) throws IOException, JSONException Serializes an object into JSON to the given writer, excluding any properties matching any of the regular expressions in the given collection.- Parameters:
- writer- Writer to serialize the object to
- object- object to be serialized
- excludeProperties- Patterns matching properties to ignore
- includeProperties- Patterns matching properties to include
- excludeNullProperties- enable/disable excluding of null properties
- cacheBeanInfo- Specifies whether to cache bean info in the JSONWriter
- Throws:
- IOException- in case of IO errors
- JSONException- in case of error during serialize
 
- 
deserializeDeserializes a object from JSON- Parameters:
- json- string in JSON
- Returns:
- desrialized object
- Throws:
- JSONException- in case of error during serialize
 
- 
deserializeDeserializes a object from JSON- Parameters:
- reader- Reader to read a JSON string from
- Returns:
- deserialized object
- Throws:
- JSONException- when IOException happens
 
- 
writeJSONToResponse- Throws:
- IOException
 
- 
asSet
- 
listSMDMethodsList visible methods carrying the @SMDMethod annotation- Parameters:
- clazz- class
- ignoreInterfaces- if true, only the methods of the class are examined. If false, annotations on every interfaces' methods are examined.
- Returns:
- array of SMD methods
 
- 
visitInterfacesVisit all the interfaces realized by the specified object, its superclasses and its interfaces
 Visitation is performed in the following order: aClass aClass' interfaces the interface's superclasses (interfaces) aClass' superclass superclass' interfaces superclass' interface's superclasses (interfaces) super-superclass and so on
 The Object base class is base excluded. Classes/interfaces are only visited once each- Parameters:
- aClass- the class to start recursing upwards from
- visitor- this vistor is called for each class/interface encountered
- Returns:
- true if all classes/interfaces were visited, false if it was exited early as specified by a ClassVisitor result
 
- 
isGzipInRequestpublic static boolean isGzipInRequest(jakarta.servlet.http.HttpServletRequest request) 
- 
processIncludePatterns
 
-