could you throw an exception instead of returning the `NullValue` ? (except for `java == null`)
The problem with returning the `NullValue` by default is that it will be really hard for developers to debug errors in their jobs if they run into this condition.