Skip to content

Null pointer while trying to validate file with rvf version 7.3.0 and 8.0 #73

@dewansh15025

Description

@dewansh15025

for curl request was similar to this one.

curl -X 'POST' \
  'http://IP_ADDRESS:PORT/run-post?rf2DeltaOnly=false&writeSuccesses=false&groups=common-authoring&droolsRulesGroups=common-authoring&dependencyRelease=SnomedCT_InternationalRF2_PRODUCTION_20250601T120000Z.zip&previousDependencyEffectiveTime=20250301&runId=18625&failureExportMax=10&storageLocation=Result18&enableDrools=true&releaseAsAnEdition=false&standAloneProduct=false&defaultModuleId=13941000189108&includedModules=13941000189108&enableMRCMValidation=false&enableTraceabilityValidation=false&enableChangeNotAtTaskLevelValidation=false' \
  -H 'accept: /' \
  -H 'Content-Type: multipart/form-data' \
  -F 'file=@SnomedCT_IndiaDrugExtensionRF2_PRODUCTION_IN1000189_20250620T120000Z.zip;type=application/x-zip-compressed' \
  -F 'manifest='

this error comes for rvf 7.3.0

java.lang.NullPointerException: Cannot read the array length because "array" is null
        at java.base/java.util.Arrays.stream(Arrays.java:5428)
        at org.ihtsdo.otf.resourcemanager.ResourceManager.listFilenames(ResourceManager.java:225)
        at org.ihtsdo.otf.resourcemanager.ResourceManager.listFilenames(ResourceManager.java:162)
        at org.ihtsdo.otf.resourcemanager.ResourceManager.doListFilenames(ResourceManager.java:241)
        at org.ihtsdo.otf.resourcemanager.ResourceManager.doListFilenames(ResourceManager.java:233)
        at org.snomed.module.storage.ModuleStorageCoordinator.getDependencies(ModuleStorageCoordinator.java:767)
        at org.snomed.module.storage.ModuleStorageCoordinator.getRequiredDependencies(ModuleStorageCoordinator.java:569)
        at org.ihtsdo.rvf.core.service.ValidationVersionLoader.downloadPreviousReleaseAndDependencyFiles(ValidationVersionLoader.java:365)
        at org.ihtsdo.rvf.core.service.ValidationRunner.runValidations(ValidationRunner.java:93)
        at org.ihtsdo.rvf.core.service.ValidationRunner.run(ValidationRunner.java:70)
        at org.ihtsdo.rvf.core.messaging.ValidationMessageListener.runValidation(ValidationMessageListener.java:60)
        at org.ihtsdo.rvf.core.messaging.ValidationMessageListener.processMessage(ValidationMessageListener.java:45)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:569)
        at org.springframework.messaging.handler.invocation.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:169)
        at org.springframework.messaging.handler.invocation.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:119)
        at org.springframework.jms.listener.adapter.MessagingMessageListenerAdapter.invokeHandler(MessagingMessageListenerAdapter.java:110)
        at org.springframework.jms.listener.adapter.MessagingMessageListenerAdapter.onMessage(MessagingMessageListenerAdapter.java:84)
        at org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:786)
        at org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:743)
        at org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:721)
        at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:333)
        at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:270)
        at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1257)
        at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1247)
        at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:1140)
        at java.base/java.lang.Thread.run(Thread.java:840)

similarly error for 8.0

2025-09-15T09:53:39.031Z ERROR 1642636 --- [ntContainer#0-1] o.i.rvf.core.service.ValidationRunner    : Exception thrown, writing as result

java.lang.NullPointerException: Cannot read the array length because "array" is null
        at java.base/java.util.Arrays.stream(Arrays.java:5428)
        at org.ihtsdo.otf.resourcemanager.ResourceManager.listFilenames(ResourceManager.java:225)
        at org.ihtsdo.otf.resourcemanager.ResourceManager.listFilenames(ResourceManager.java:162)
        at org.ihtsdo.otf.resourcemanager.ResourceManager.doListFilenames(ResourceManager.java:241)
        at org.ihtsdo.otf.resourcemanager.ResourceManager.doListFilenames(ResourceManager.java:233)
        at org.snomed.module.storage.ModuleStorageCoordinator.getRF2Packages(ModuleStorageCoordinator.java:653)
        at org.snomed.module.storage.ModuleStorageCoordinator.getDependencies(ModuleStorageCoordinator.java:588)
        at org.ihtsdo.rvf.core.service.ValidationVersionLoader.downloadPreviousReleaseAndDependencyFiles(ValidationVersionLoader.java:363)
        at org.ihtsdo.rvf.core.service.ValidationRunner.runValidations(ValidationRunner.java:93)
        at org.ihtsdo.rvf.core.service.ValidationRunner.run(ValidationRunner.java:70)
        at org.ihtsdo.rvf.core.messaging.ValidationMessageListener.runValidation(ValidationMessageListener.java:60)
        at org.ihtsdo.rvf.core.messaging.ValidationMessageListener.processMessage(ValidationMessageListener.java:45)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:569)
        at org.springframework.messaging.handler.invocation.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:169)
        at org.springframework.messaging.handler.invocation.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:119)
        at org.springframework.jms.listener.adapter.MessagingMessageListenerAdapter.invokeHandler(MessagingMessageListenerAdapter.java:110)
        at org.springframework.jms.listener.adapter.MessagingMessageListenerAdapter.onMessage(MessagingMessageListenerAdapter.java:84)
        at org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:786)
        at org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:743)
        at org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:721)
        at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:333)
        at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:270)
        at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1257)
        at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1247)
        at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:1140)
        at java.base/java.lang.Thread.run(Thread.java:840)

2025-09-15T09:53:43.227Z  INFO 1642636 --- [nio-8081-exec-8] o.apache.coyote.http11.Http11Processor   : Error parsing HTTP request header
 Note: further occurrences of HTTP request parsing errors will be logged at DEBUG level.

java.lang.IllegalArgumentException: Invalid character found in method name [0x160x030x010x07m0x010x000x07i0x030x03$7 ]. HTTP method names must be tokens
        at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:403)
        at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:271)
        at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
        at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:903)
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1769)
        at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
        at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1189)
        at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:658)
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
        at java.base/java.lang.Thread.run(Thread.java:840)


Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions