Sandor Molnar created KNOX-3317:
-----------------------------------
Summary: Fix NPE when no token metadata headers defined for
ICEBERG-REST
Key: KNOX-3317
URL: https://issues.apache.org/jira/browse/KNOX-3317
Project: Apache Knox
Issue Type: Bug
Components: Server
Affects Versions: 3.0.0
Reporter: Sandor Molnar
Assignee: Sandor Molnar
Fix For: 3.0.0
NOX-3279 introduces the ability to apply custom headers Knox dispatches to
ICEBERG-REST.
The issue is that {{service.xml}} doesn't contain any dispatch element with `
token-metadata-headers` which ends up in the following runtime exception:
{noformat}
Caused by: java.lang.NullPointerException: Cannot invoke "String.split(String)"
because "tokenMetadataHeadersConfig" is null at
org.apache.knox.gateway.service.restcatalog.TokenMetadataHeaderHandler.getMetadataHeaderConfig(TokenMetadataHeaderHandler.java:93)
~[gateway-service-restcatalog-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT] at
org.apache.knox.gateway.service.restcatalog.TokenMetadataHeaderHandler.<init>(TokenMetadataHeaderHandler.java:67)
~[gateway-service-restcatalog-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT] at
org.apache.knox.gateway.service.restcatalog.RestCatalogHaDispatch.<init>(RestCatalogHaDispatch.java:36)
~[gateway-service-restcatalog-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT] at
jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
~[?:?] at
jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
~[?:?] at
jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
~[?:?] at
java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
~[?:?] at java.lang.reflect.Constructor.newInstance(Constructor.java:481)
~[?:?] at
org.apache.knox.gateway.dispatch.GatewayDispatchFilter.newInstanceFromName(GatewayDispatchFilter.java:226)
~[gateway-spi-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT] at
org.apache.knox.gateway.dispatch.GatewayDispatchFilter.init(GatewayDispatchFilter.java:75)
~[gateway-spi-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT] at
org.apache.knox.gateway.GatewayFilter$Holder.getInstance(GatewayFilter.java:421)
~[gateway-server-3.0.0-SNAPSHOT.jar:3.0.0-SNAPSHOT]{noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)