APAR status
Closed as fixed if next.
Error description
Error Description￘ Abstract: LS2J crash when null returned by Java method declared as returning String[] Problem Description: LS2J crashes when a Java method declared as returning array of String returns null. For example, using this code using the LS2J JavaObject class results = myJavaObject.returnNullForStringArray() calling this Java method public String[] returnNullForStringArray() { return null; } Results in a crash, whether the method is run on the server, or the client. Crash from this test case has been reproduced on Domino 7.0.3FP1 and Domino 8.5.3. Crash stack from 8.5.3 Server includes j9vm24._getArrayLength@8+32 nJAVACON.RF_Array::getValue+49 nJAVACON.JavaMethodADT::Invoke+548 nJAVACON.JavaObjectADT::ClassControl+731 nnotes.LSsInstance::AdtCallBack+269 nnotes.LScObjCli::ProdMethodCall+61 nnotes.LSsThread::AdtCallMethodExp+154 nnotes.LSsThread::NRun+6137 Crash stack from 7.0.3 Server includes jvm.IBM_GetInterface@4+20422 nJAVACON.JavaMethodADT::Invoke+487 nJAVACON.JavaObjectADT::ClassControl+731 nnotes.LSsInstance::AdtCallBack+269 nnotes.LScObjCli::ProdMethodCall+61 nnotes.LSsThread::AdtCallMethodExp+154 nnotes.LSsThread::NRun+5916 Some related cases A. No crash occurs if the method returns a String[] containing 1 or more Strings. B. No crash occurs if the method is declared to return just String, not String[]. C. An error indication occurs if the method returns an empty array of Strings, new String[]{} D. A similar crash occurs if String[] function returns null via JavaMethod Invoke(). Set myMethod = myClass.GetMethod( "returnNullForStringArray", "()[Ljava/lang/String;" ) results = myMethod.Invoke(myObject)
Local fix
Local Fix￘ Have LSJ2 call the original Java method via an intermediate Java code subsituting an alternative value, such as new String[]{""} when the original method returns null.
Problem summary
This APAR is closed as FIN. We have deferred the fix to a future release.
Problem conclusion
Temporary fix
Comments
This APAR is associated with SPR# JDAE8RC524. This APAR is closed as FIN. We have deferred the fix to a future release.
APAR Information
APAR number
LO67238
Reported component name
DOMINO SERVER
Reported component ID
5724E6200
Reported release
853
Status
CLOSED FIN
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2012-02-09
Closed date
2012-04-18
Last modified date
2012-04-18
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Applicable component levels
R853 PSN
UP
[{"Business Unit":{"code":"BU055","label":"Cognitive Applications"},"Product":{"code":"SSKTMJ","label":"Lotus Domino"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.5.3","Edition":"","Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
18 April 2012