Skip to content

Fix NPE when sample.sampleClass is null #1864

@ao508

Description

@ao508

Additional underlying issue is that the sampleClass might not be getting updated (if prev value is null/empty) when new sample updates are coming in through the dashboard.

Stack trace

2026-05-19T19:05:00.323Z ERROR 1 --- [ool-2-thread-11] s.s.i.ResearchMessageHandlingServiceImpl : Error during handling of research sample metadata update

java.lang.NullPointerException: Cannot invoke "java.lang.String.equals(java.lang.Object)" because the return value of "org.mskcc.smile.model.SmileSample.getSampleClass()" is null
	at org.mskcc.smile.service.impl.SampleServiceImpl.saveSmileSample(SampleServiceImpl.java:99) ~[service-0.1.0.jar!/:0.1.0]
	at org.mskcc.smile.service.impl.SampleServiceImpl.updateSampleMetadata(SampleServiceImpl.java:292) ~[service-0.1.0.jar!/:0.1.0]
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[na:na]
	at java.base/java.lang.reflect.Method.invoke(Method.java:586) ~[na:na]
	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:355) ~[spring-aop-6.1.12.jar!/:6.1.12]
	at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:716) ~[spring-aop-6.1.12.jar!/:6.1.12]
	at org.mskcc.smile.service.impl.SampleServiceImpl$$SpringCGLIB$$0.updateSampleMetadata(<generated>) ~[service-0.1.0.jar!/:0.1.0]
	at org.mskcc.smile.service.impl.ResearchMessageHandlingServiceImpl$ResearchSampleMetadataUpdateHandler.run(ResearchMessageHandlingServiceImpl.java:244) ~[service-0.1.0.jar!/:0.1.0]
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[na:na]
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[na:na]
	at java.base/java.lang.Thread.run(Thread.java:1595) ~[na:na]

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions