2017-12-13 11 views
2

우리가 스프링 카프카-2.0.1.RELEASE를 사용하여 생산이 오류를 얻을 수 있습니다 :가능한 Nullpointer 스프링 카프카

예외 java.lang.NullPointerException이 java.lang.NullPointerException이를 : 널 (null) org.springframework.kafka.listener.KafkaMessageListenerContainer $ ListenerConsumer.access $ 000 (KafkaMessageListenerContainer.java:271) 에서 ~ [봄 카프카 - 2.0.1.RELEASE.jar : 2.0.1.RELEASE] org.springframework에서. kafka.listener.KafkaMessageListenerContainer.getAssignedPartitions (KafkaMessageListenerContainer.java:152) ~ [spring-ka FKA-2.0.1.RELEASE.jar :

Map<String, Object> props = new HashMap<>(); 
props.put(ConsumerConfig.BOOTSTRAP_SERVERS_CONFIG, host); 
props.put(ConsumerConfig.GROUP_ID_CONFIG, groupId); 
props.put(ConsumerConfig.ENABLE_AUTO_COMMIT_CONFIG, autoCommit); 
props.put(ConsumerConfig.SESSION_TIMEOUT_MS_CONFIG, sessionTimeout); 
props.put(ConsumerConfig.KEY_DESERIALIZER_CLASS_CONFIG, StringDeserializer.class); 
props.put(ConsumerConfig.VALUE_DESERIALIZER_CLASS_CONFIG, EspDLPResponseDeserializer.class); 
props.put(ConsumerConfig.RECONNECT_BACKOFF_MS_CONFIG, reconnectMs); // when esp server unreachable, default value too small 
props.put(ConsumerConfig.RETRY_BACKOFF_MS_CONFIG, retryBackoff); // default value too small 
props.put(ConsumerConfig.MAX_POLL_RECORDS_CONFIG, maxPollRec); 

if (saslEnabled) { 
props.put(SaslConfigs.SASL_MECHANISM, "PLAIN"); 
props.put(CommonClientConfigs.SECURITY_PROTOCOL_CONFIG, "SASL_SSL"); 
// jaas.conf with -D server start parameter 
props.put(SaslConfigs.SASL_JAAS_CONFIG, jaas_config); 
props.put(SslConfigs.SSL_TRUSTSTORE_LOCATION_CONFIG, ssl_keystore); 
} 

당신이 확인하십시오 수 : 2.0.1.RELEASE]

에서 우리는 다음과 같은 소품을 사용하고 있습니까?

고맙습니다.

답변

0

이것은 분명히 버그입니다. this.listenerConsumer != null 인 경우 실제로 확인하지 않습니다. 이 속성은 doStart()에서 채워 지지만 그 전에는 getAssignedPartitions()이 호출되지 않을 것이라고 보장 할 수 없습니다.

public String toString() { 
     return "KafkaMessageListenerContainer [id=" + getBeanName() 
       + (this.clientIdSuffix != null ? ", clientIndex=" + this.clientIdSuffix : "") 
       + ", topicPartitions=" + getAssignedPartitions() 
       + "]"; 
    } 

이 문제에 GH의 문제를 제기하십시오 : 해결 방법으로 https://github.com/spring-projects/spring-kafka/issues

는 콩 작성을하지 않는 예를 들어 나는 toString()에서의 사용을 참조하십시오.

+0

문제에 대한 문제 : https://github.com/spring-projects/spring-kafka/issues/522. 답변을 수락 할 시간 : 설명 할 내용이 없습니다! –