java.lang.IllegalArgumentException: The child value is null

Jenkins JIRA | Mateusz Lewicki | 4 years ago
  1. 0

    Occurs in jenkins v 1.510 (and the older one too) with external-resource-dispatcher v1.0b Steps to reproduce: 1. Start with fresh jenkins with resources plugin 2. Create node "NodeT": launch method = launch slave agents via web start 3. Add metadata to node 4. add External Resource TreeNode "TreeNodeName" to the node metadata 5. add Resource to TreeNode: "ResourceName", id=7417, enabled 6. save node 7. start node via webstart 8. download node metadata (output attached): $ jenkins-cli -s http://localhost:8080 get-metadata -node NodeT > metadata.json 9. (optionally modify something in metadata.json) 10. try to upload metadata: $ jenkins-cli -s http://localhost:8080 update-metadata -replace -node NodeT < metadata.json Expected result: Metadata should be updated (replaced) Actual result Exception is thrown: $ jenkins-cli -s http://localhost:8080 update-metadata -replace -node NodeT < metadata.json Failed to authenticate with your SSH keys. Proceeding with anonymous access java.lang.IllegalArgumentException: The child value is null at com.sonyericsson.hudson.plugins.metadata.model.values.ParentUtil.replaceChild(ParentUtil.java:63) at com.sonyericsson.hudson.plugins.metadata.model.values.ParentUtil.replaceChildren(ParentUtil.java:100) at com.sonyericsson.hudson.plugins.metadata.cli.UpdateMetadataCommand.run(UpdateMetadataCommand.java:129) at hudson.cli.CLICommand.main(CLICommand.java:229) at hudson.cli.CliManagerImpl.main(CliManagerImpl.java:92) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at hudson.remoting.RemoteInvocationHandler$RPCRequest.perform(RemoteInvocationHandler.java:275) at hudson.remoting.RemoteInvocationHandler$RPCRequest.call(RemoteInvocationHandler.java:256) at hudson.remoting.RemoteInvocationHandler$RPCRequest.call(RemoteInvocationHandler.java:215) at hudson.remoting.UserRequest.perform(UserRequest.java:118) at hudson.remoting.UserRequest.perform(UserRequest.java:48) at hudson.remoting.Request$2.run(Request.java:326) at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72) at hudson.cli.CliManagerImpl$1.call(CliManagerImpl.java:63) at hudson.remoting.InterceptingExecutorService$2.call(InterceptingExecutorService.java:95) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) at java.lang.Thread.run(Thread.java:662) Cause of error and FIX: ExternalResourceTreeNode.ExternalResourceTreeNodeDescriptor.fromJson(..) is not implemented (always returns null). Attached patch adds implementation. it's based on similar function for ExternalResource.

    Jenkins JIRA | 4 years ago | Mateusz Lewicki
    java.lang.IllegalArgumentException: The child value is null
  2. 0

    Occurs in jenkins v 1.510 (and the older one too) with external-resource-dispatcher v1.0b Steps to reproduce: 1. Start with fresh jenkins with resources plugin 2. Create node "NodeT": launch method = launch slave agents via web start 3. Add metadata to node 4. add External Resource TreeNode "TreeNodeName" to the node metadata 5. add Resource to TreeNode: "ResourceName", id=7417, enabled 6. save node 7. start node via webstart 8. download node metadata (output attached): $ jenkins-cli -s http://localhost:8080 get-metadata -node NodeT > metadata.json 9. (optionally modify something in metadata.json) 10. try to upload metadata: $ jenkins-cli -s http://localhost:8080 update-metadata -replace -node NodeT < metadata.json Expected result: Metadata should be updated (replaced) Actual result Exception is thrown: $ jenkins-cli -s http://localhost:8080 update-metadata -replace -node NodeT < metadata.json Failed to authenticate with your SSH keys. Proceeding with anonymous access java.lang.IllegalArgumentException: The child value is null at com.sonyericsson.hudson.plugins.metadata.model.values.ParentUtil.replaceChild(ParentUtil.java:63) at com.sonyericsson.hudson.plugins.metadata.model.values.ParentUtil.replaceChildren(ParentUtil.java:100) at com.sonyericsson.hudson.plugins.metadata.cli.UpdateMetadataCommand.run(UpdateMetadataCommand.java:129) at hudson.cli.CLICommand.main(CLICommand.java:229) at hudson.cli.CliManagerImpl.main(CliManagerImpl.java:92) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at hudson.remoting.RemoteInvocationHandler$RPCRequest.perform(RemoteInvocationHandler.java:275) at hudson.remoting.RemoteInvocationHandler$RPCRequest.call(RemoteInvocationHandler.java:256) at hudson.remoting.RemoteInvocationHandler$RPCRequest.call(RemoteInvocationHandler.java:215) at hudson.remoting.UserRequest.perform(UserRequest.java:118) at hudson.remoting.UserRequest.perform(UserRequest.java:48) at hudson.remoting.Request$2.run(Request.java:326) at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72) at hudson.cli.CliManagerImpl$1.call(CliManagerImpl.java:63) at hudson.remoting.InterceptingExecutorService$2.call(InterceptingExecutorService.java:95) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) at java.lang.Thread.run(Thread.java:662) Cause of error and FIX: ExternalResourceTreeNode.ExternalResourceTreeNodeDescriptor.fromJson(..) is not implemented (always returns null). Attached patch adds implementation. it's based on similar function for ExternalResource.

    Jenkins JIRA | 4 years ago | Mateusz Lewicki
    java.lang.IllegalArgumentException: The child value is null
  3. 0
    You might send a large amount of data in the request URL. Consider sending it in the request body.
    via Coderanch by Partheban Udayakumar
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 0
    Properties of subclasses may have to be referenced in a different way. More on this here: https://goo.gl/FvnBXb
    via goo.gl
  6. 0
    URI part of the request contains invalid characters. You may try to encode the path from the URI. Check RFC7230 and RFC3986 documentation below. https://www.ietf.org/rfc/rfc3986.txt and https://tools.ietf.org/html/rfc7230

    Not finding the right solution?
    Take a tour to get the most out of Samebug.

    Tired of useless tips?

    Automated exception search integrated into your IDE

    Root Cause Analysis

    1. java.lang.IllegalArgumentException

      The child value is null

      at com.sonyericsson.hudson.plugins.metadata.model.values.ParentUtil.replaceChild()
    2. com.sonyericsson.hudson
      UpdateMetadataCommand.run
      1. com.sonyericsson.hudson.plugins.metadata.model.values.ParentUtil.replaceChild(ParentUtil.java:63)
      2. com.sonyericsson.hudson.plugins.metadata.model.values.ParentUtil.replaceChildren(ParentUtil.java:100)
      3. com.sonyericsson.hudson.plugins.metadata.cli.UpdateMetadataCommand.run(UpdateMetadataCommand.java:129)
      3 frames
    3. Hudson
      CliManagerImpl.main
      1. hudson.cli.CLICommand.main(CLICommand.java:229)
      2. hudson.cli.CliManagerImpl.main(CliManagerImpl.java:92)
      2 frames
    4. Java RT
      Method.invoke
      1. sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      2. sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      3. sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      4. java.lang.reflect.Method.invoke(Method.java:597)
      4 frames
    5. Hudson :: Remoting Layer
      InterceptingExecutorService$1.call
      1. hudson.remoting.RemoteInvocationHandler$RPCRequest.perform(RemoteInvocationHandler.java:275)
      2. hudson.remoting.RemoteInvocationHandler$RPCRequest.call(RemoteInvocationHandler.java:256)
      3. hudson.remoting.RemoteInvocationHandler$RPCRequest.call(RemoteInvocationHandler.java:215)
      4. hudson.remoting.UserRequest.perform(UserRequest.java:118)
      5. hudson.remoting.UserRequest.perform(UserRequest.java:48)
      6. hudson.remoting.Request$2.run(Request.java:326)
      7. hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
      7 frames
    6. Hudson
      CliManagerImpl$1.call
      1. hudson.cli.CliManagerImpl$1.call(CliManagerImpl.java:63)
      1 frame
    7. Hudson :: Remoting Layer
      InterceptingExecutorService$2.call
      1. hudson.remoting.InterceptingExecutorService$2.call(InterceptingExecutorService.java:95)
      1 frame
    8. Java RT
      Thread.run
      1. java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
      2. java.util.concurrent.FutureTask.run(FutureTask.java:138)
      3. java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
      4. java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
      5. java.lang.Thread.run(Thread.java:662)
      5 frames