• Bug
  • Status: Closed
  • 2 Major
  • Resolution: Fixed
  • DSO:L1
  • teck
  • Reporter: ssubbiah
  • February 27, 2007
  • 0
  • Watchers: 1
  • July 27, 2012
  • March 04, 2007

Description

class Pojo { Integer i; }

When this object gets shared for the first time, if “i” contains some valid Integer, then the server generates a class that can hold an “int” for i.

But later if ever the reference is set to null, then that change cannot be applied in the server since it generated the type as “int”

This is true for other primitive types too.

Comments

Saravanan Subbiah 2007-02-27

I think we should be able to fix it by changing TCFieldFactory method from

public static boolean isReferenceClass(Class type) { return !literalValues.isLiteral(type.getName()); }

to something like this

public static boolean isReferenceClass(Class type) { return !literalValues.isJAVALiteral(type.getName()); }

thought it might increase the server memory foot print for primitive values (only the java.lan.* ones though)

Fiona OShea 2007-02-28

Fix in 2.2.1 and merge to trunk