| Version | Date | Description |
|---|---|---|
| 0.5.0 | 2007-05-01 | The second release with development status: Beta |
| 0.4.0 | 2007-03-04 | This is the first release with development status: Beta |
| 0.3.0 | 2007-01-08 | The third release |
| 0.2.0 | 2006-11-06 | The second release |
| 0.1.0 | 2006-10-15 | The first version 0.1.0 |
| Type | Changes | By |
|---|---|---|
![]() |
Can't create a new instance of StackTraceElement in Java 5 (Bug: 1678348). | lm |
![]() |
Classloaders issue: In muliple classloaders environment (like application container) it would be nice if Sojo could be loaded by parent classloader of classloader of the application. Solution: Replacing Class.forName(className) with Class.forName(className, true, Thread.currentThread().getContextClassloader()). (Bug: 1686733, thanks B. Hunt). | lm |
![]() |
Deserialization of JSON object breaks on valid unicode char. (Bug: 1686652, thanks B. Hunt). | lm |
![]() |
Deserialization of JSON object breaks on Timestamp. (Bug: 1688969, thanks B. Hunt). | lm |
![]() |
Methods: equals and compare are breaking. (Bug: 1692340). | lm |
![]() |
JsonSerializer not Thread Safe. JsonSerializer.deserialize cannot be used in a Thread safe way, since the method delegates calls to satic parser JsonParserGenerate. A better way would be to generate the JsonParserGenerate with STATIC=false and use one Parser per JsonSerializer. (Bug: 1694100, thanks T. Huhtanen). | lm |
![]() |
Repeated call of JSONSerializer with different value. (Bug: 1705249, thanks T. Nagy). | lm |
![]() |
Sort List, Set, Map and Array there contains JavaBeans. (Feature Request: 1673100) | lm |
![]() |
Support for filtering by equals, hashCode and compa re. (Feature Request: 1692337) | lm |
![]() |
Support for regexp by filtering. (Feature Request: 1706577) | lm |
| Type | Changes | By |
|---|---|---|
![]() |
Inconsistences return types between Xml and Json Serializer: the return type from XmlRpcSerializer.deserialize is a list that contain a desterilized Object as first element but this is not the same in JsonSerializer.deserialize , as this method return the desterilized Object directly not in a List (Bug: 1633051). | lm |
![]() |
XmlRpcSerializer is not thread safe in version 0.3. In version 0.2 of sojo the XmlRpcSerializer was a thread safe but in 0.3 this isn't true. The XmlRpcSerializer was changed, because so that is uniform to the other Serializer (JsonSerializer for example) (Bug: 1632206). | lm |
![]() |
By the org.xml.sax.helpers.DefaultHandler class in the characters-method can be data lose. The reason is to call this callback-method more than one times for more performance from the SAXParser. This is the case by the xerces implementation (org.apache.xerces.jaxp.SAXParserFactoryImpl). This can be a promlem by big XML-files. (Bug: 1664621). | lm |
![]() |
CSV data interchange (Feature Request: 1639781) | lm |
![]() |
Calculate over all values the hashCode. This is the complement to the ObjectUtil.equals - Method. (Feature Request: 1671151) | lm |
![]() |
CompareTo method for all objects (JavaBeans too) (Feature Request: 1671946) | lm |
![]() |
Extend Serializer method deserialize: The Serializer get a second deserialize meth od with an additional parameter: public abstract Object deserialize(Object pvSourceObject, Class pvRootClass); So can deserialize Objects, where in the serialize isen't the class information. (Feature Request: 1656910) | lm |
![]() |
Create ThrowableConverterInterceptor: Can add a ThrowableConverterInterceptor to the Converter. This interceptor transform a Exception to a ThrowableWrapper. The benefit of this Conversion is, that can wrap a Throwable instance and can do an StackTrace or show the ExceptionMessage without a knowledge of the original ExceptionClass. For example, the server thrown a 'HibernateException' and the client don't know the hibernate library. In the StackTrace you can see the StackTrace of the server. (Feature Request: 1662346) | lm |
![]() |
Add parameter to type by ConverterInterceptor (beforeConvert / afterConvert). This is more flexible to define the to class type. (Feature Request: 1662347) | lm |
![]() |
Set desired date format:CURRENT serialized with JSON: {"dob":"Tue Feb 20 10:25:19 EST 2007","id":10} DESIRED serialized form: {"dob":"02/20/2007","id":10} (Feature Request: 1664604, thanks J. Saremi) | lm |
| Type | Changes | By |
|---|---|---|
![]() |
Can't call twice time the method ObjectUtil.makeSimple. By the second call is the result the same, how call of method ObjectUtil.makeComplex (Bug: 1622475). | lm |
![]() |
The result-Maps of ReflectionMethodHelper are modifiable (e.g. getAllGetterMethod). This is critical, because this Map's are static. If one instance this map change, work all instances with this changed map. (Bug: 1621357) | lm |
![]() |
JsonSerializer serialize Map with no String key not corr ect. This mean, the key was ignored (Bug: 1615199). | lm |
![]() |
JsonSerializer don't wrapped in double quotes and using backslash escapes (Bug: 1616053, thanks T. Nagy). | lm |
![]() |
Filter for properties. Not all properties of a class want to include by converting objects. Especial by interchange data are not all data (properties) relevant. With a filter can select the (transient) properties, that are filtered by serialize objects (Feature Request: 1612707, thanks G. Greg). | lm |
![]() |
Refactor package and class-names (remove common loggings library and replace with net.sf.sojo.core.NonCriticalExceptionHandler) (Feature Request: 1615202). | lm |
![]() |
Remove all dependencies to external libraries (Feature Request: 1625003) | lm |
| Type | Changes | By |
|---|---|---|
![]() |
Conversions don't detect cycels by Collections and Maps. This problem is occurrence, if Collections/Maps are nested in a other Collections/Maps. (Bug: 1589317) | lm |
![]() |
Only the call in the constructor CommonObjectUtil (true/false) is effected. (Bug: 1580303) | lm |
![]() |
Support for interchange format JSON. (Feature Request: 1580533) | lm |
![]() |
Support for interchange format XML-RPC. (Feature Request: 1583118) | lm |
| Type | Changes | By |
|---|---|---|
![]() |
serialize/deserialize complex object graph (Feature Requests: 1576716). | lm |
![]() |
easy navigate on the complex object graph (Feature Requests: 1576711). | lm |
![]() |
compare complex object graph (Feature Requests: 1576709). | lm |
![]() |
copy or clone complex object graph (Feature Requests: 1576708). | lm |