0

I have the code below and I faced a NullPointerException in getContactPersonSet() method. I tried to solve it in this way but didn't work.

Optional<String> lawyerOrContractPerson;
lawyerOrContractPerson = raetsrelation.getContactPersonSet().stream()
            .filter(Objects::nonNull).findFirst().map(contactPerson -> contactPerson.getFirstName() + " " + contactPerson.getLastName());

Do you have any idea, how can I avoid the NPE? With my solution, the filter only looks at the elements of the set, not the set itself. But how can I check the set itself?

Thanks in advance.

Exception:

Caused by: java.lang.NullPointerException
    at com.raetsmarine.raetsbase3.domain.Claim.initClaimPartyLine(Claim.java:1174)
    at com.raetsmarine.raetsbase3.domain.Claim.lambda$getRelations$1(Claim.java:1157)
    at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
    at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
    at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
    at java.util.Iterator.forEachRemaining(Iterator.java:116)
    at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
    at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
    at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
    at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
    at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
    at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
    at com.raetsmarine.raetsbase3.domain.Claim.getRelations(Claim.java:1162)
    at com.raetsmarine.raetsbase3.domain.Claim.getClaimParties(Claim.java:1136)
    ... 123 more
pik4
  • 1,283
  • 3
  • 21
  • 56

0 Answers0