java.lang.NullPointerException: null

Apereo Issues | Paul Spaude | 9 months ago
  1. 0

    From the field... If you assign a campus routing and follow the instructions, there are certain cases where the client will get a 500 error and can't complete the Early Alert. Right now I've identified a scenario where this occurs every time. 1. Log in as Admin goto Early Alert Campus config and select a campus 2. Click icon to edit routings 3. Add a new routing for an EA Reason that isn't being used, and leave Person blank. Notice the instructions say you can pick one or the other. 4. Login or impersonate factory and use that reason and campus when saving an alert and you'll get a 500. I'm fairly certain having a Person but not a Group Email also causes this, but it seems less than 100%. Having multiple reason routings per Campus one or more having Person and the others Group works fine. However, having multiples of the same, still causes this issue. Also, editing an existing routing doesn't work because the select drop-down doesn't allow you to de-select a Person. Seems to be related to EarlyAlertServiceImpl with sendMessageToAdvisor and line 480: _if (alreadySent.contains(route.getPerson().getPrimaryEmailAddress()))_ {code} DEV: 11:40:02.436 [http-8080-4] /ssp/api/1/person/59f98b08-4d66-bf6a-caa5-a0c92030ca64/earlyAlert ERROR o.j.s.w.a.PersonEarlyAlertController - Error: java.lang.NullPointerException: null at org.jasig.ssp.service.impl.EarlyAlertServiceImpl.sendMessageToAdvisor(EarlyAlertServiceImpl.java:480) ~[EarlyAlertServiceImpl.class:na] at org.jasig.ssp.service.impl.EarlyAlertServiceImpl.create(EarlyAlertServiceImpl.java:194) ~[EarlyAlertServiceImpl.class:na] at org.jasig.ssp.service.impl.EarlyAlertServiceImpl.create(EarlyAlertServiceImpl.java:109) ~[EarlyAlertServiceImpl.class:na] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.7.0_67] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[na:1.7.0_67] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.7.0_67] at java.lang.reflect.Method.invoke(Method.java:606) ~[na:1.7.0_67] at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317) ~[spring-aop-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183) ~[spring-aop-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150) ~[spring-aop-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96) ~[spring-tx-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260) ~[spring-tx-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94) ~[spring-tx-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) ~[spring-aop-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) ~[spring-aop-3.2.8.RELEASE.jar:3.2.8.RELEASE] at com.sun.proxy.$Proxy171.create(Unknown Source) ~[na:na] at org.jasig.ssp.web.api.AbstractPersonAssocController.create(AbstractPersonAssocController.java:225) ~[AbstractPersonAssocController.class:na] at org.jasig.ssp.web.api.PersonEarlyAlertController.create(PersonEarlyAlertController.java:155) ~[PersonEarlyAlertController.class:na] at org.jasig.ssp.web.api.PersonEarlyAlertController$$FastClassBySpringCGLIB$$a31a514.invoke(<generated>) ~[spring-core-3.2.8.RELEASE.jar:na] at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) ~[spring-core-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:629) ~[spring-aop-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.jasig.ssp.web.api.PersonEarlyAlertController$$EnhancerBySpringCGLIB$$257a5be2.create(<generated>) ~[spring-core-3.2.8.RELEASE.jar:na] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.7.0_67] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[na:1.7.0_67] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.7.0_67] at java.lang.reflect.Method.invoke(Method.java:606) ~[na:1.7.0_67] at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:215) ~[spring-web-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132) ~[spring-web-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) ~[spring-webmvc-3.2.8.RELEASE.jar:3.2.8.RELEASE] ... {code}

    Apereo Issues | 9 months ago | Paul Spaude
    java.lang.NullPointerException: null
  2. 0

    From the field... If you assign a campus routing and follow the instructions, there are certain cases where the client will get a 500 error and can't complete the Early Alert. Right now I've identified a scenario where this occurs every time. 1. Log in as Admin goto Early Alert Campus config and select a campus 2. Click icon to edit routings 3. Add a new routing for an EA Reason that isn't being used, and leave Person blank. Notice the instructions say you can pick one or the other. 4. Login or impersonate factory and use that reason and campus when saving an alert and you'll get a 500. I'm fairly certain having a Person but not a Group Email also causes this, but it seems less than 100%. Having multiple reason routings per Campus one or more having Person and the others Group works fine. However, having multiples of the same, still causes this issue. Also, editing an existing routing doesn't work because the select drop-down doesn't allow you to de-select a Person. Seems to be related to EarlyAlertServiceImpl with sendMessageToAdvisor and line 480: _if (alreadySent.contains(route.getPerson().getPrimaryEmailAddress()))_ {code} DEV: 11:40:02.436 [http-8080-4] /ssp/api/1/person/59f98b08-4d66-bf6a-caa5-a0c92030ca64/earlyAlert ERROR o.j.s.w.a.PersonEarlyAlertController - Error: java.lang.NullPointerException: null at org.jasig.ssp.service.impl.EarlyAlertServiceImpl.sendMessageToAdvisor(EarlyAlertServiceImpl.java:480) ~[EarlyAlertServiceImpl.class:na] at org.jasig.ssp.service.impl.EarlyAlertServiceImpl.create(EarlyAlertServiceImpl.java:194) ~[EarlyAlertServiceImpl.class:na] at org.jasig.ssp.service.impl.EarlyAlertServiceImpl.create(EarlyAlertServiceImpl.java:109) ~[EarlyAlertServiceImpl.class:na] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.7.0_67] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[na:1.7.0_67] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.7.0_67] at java.lang.reflect.Method.invoke(Method.java:606) ~[na:1.7.0_67] at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317) ~[spring-aop-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183) ~[spring-aop-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150) ~[spring-aop-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96) ~[spring-tx-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260) ~[spring-tx-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94) ~[spring-tx-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) ~[spring-aop-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) ~[spring-aop-3.2.8.RELEASE.jar:3.2.8.RELEASE] at com.sun.proxy.$Proxy171.create(Unknown Source) ~[na:na] at org.jasig.ssp.web.api.AbstractPersonAssocController.create(AbstractPersonAssocController.java:225) ~[AbstractPersonAssocController.class:na] at org.jasig.ssp.web.api.PersonEarlyAlertController.create(PersonEarlyAlertController.java:155) ~[PersonEarlyAlertController.class:na] at org.jasig.ssp.web.api.PersonEarlyAlertController$$FastClassBySpringCGLIB$$a31a514.invoke(<generated>) ~[spring-core-3.2.8.RELEASE.jar:na] at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) ~[spring-core-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:629) ~[spring-aop-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.jasig.ssp.web.api.PersonEarlyAlertController$$EnhancerBySpringCGLIB$$257a5be2.create(<generated>) ~[spring-core-3.2.8.RELEASE.jar:na] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.7.0_67] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[na:1.7.0_67] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.7.0_67] at java.lang.reflect.Method.invoke(Method.java:606) ~[na:1.7.0_67] at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:215) ~[spring-web-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132) ~[spring-web-3.2.8.RELEASE.jar:3.2.8.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) ~[spring-webmvc-3.2.8.RELEASE.jar:3.2.8.RELEASE] ... {code}

    Apereo Issues | 9 months ago | Paul Spaude
    java.lang.NullPointerException: null
  3. 0

    HQL Exception (org.hibernate.dialect.Dialect$3)

    Stack Overflow | 4 years ago | Hari
    java.lang.NullPointerException: null
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 0

    Error loading model properties in JPA on play 2.0.3

    Stack Overflow | 4 years ago | Chappies
    java.lang.NullPointerException: null

    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.NullPointerException

      null

      at org.jasig.ssp.service.impl.EarlyAlertServiceImpl.sendMessageToAdvisor()
    2. org.jasig.ssp
      EarlyAlertServiceImpl.create
      1. org.jasig.ssp.service.impl.EarlyAlertServiceImpl.sendMessageToAdvisor(EarlyAlertServiceImpl.java:480)[EarlyAlertServiceImpl.class:na]
      2. org.jasig.ssp.service.impl.EarlyAlertServiceImpl.create(EarlyAlertServiceImpl.java:194)[EarlyAlertServiceImpl.class:na]
      3. org.jasig.ssp.service.impl.EarlyAlertServiceImpl.create(EarlyAlertServiceImpl.java:109)[EarlyAlertServiceImpl.class:na]
      3 frames
    3. Java RT
      Method.invoke
      1. sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[na:1.7.0_67]
      2. sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)[na:1.7.0_67]
      3. sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[na:1.7.0_67]
      4. java.lang.reflect.Method.invoke(Method.java:606)[na:1.7.0_67]
      4 frames
    4. Spring AOP
      ReflectiveMethodInvocation.proceed
      1. org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)[spring-aop-3.2.8.RELEASE.jar:3.2.8.RELEASE]
      2. org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)[spring-aop-3.2.8.RELEASE.jar:3.2.8.RELEASE]
      3. org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)[spring-aop-3.2.8.RELEASE.jar:3.2.8.RELEASE]
      3 frames
    5. Spring Tx
      TransactionInterceptor.invoke
      1. org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)[spring-tx-3.2.8.RELEASE.jar:3.2.8.RELEASE]
      2. org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)[spring-tx-3.2.8.RELEASE.jar:3.2.8.RELEASE]
      3. org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)[spring-tx-3.2.8.RELEASE.jar:3.2.8.RELEASE]
      3 frames
    6. Spring AOP
      JdkDynamicAopProxy.invoke
      1. org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)[spring-aop-3.2.8.RELEASE.jar:3.2.8.RELEASE]
      2. org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)[spring-aop-3.2.8.RELEASE.jar:3.2.8.RELEASE]
      2 frames
    7. com.sun.proxy
      $Proxy171.create
      1. com.sun.proxy.$Proxy171.create(Unknown Source)[na:na]
      1 frame
    8. org.jasig.ssp
      PersonEarlyAlertController$$FastClassBySpringCGLIB$$a31a514.invoke
      1. org.jasig.ssp.web.api.AbstractPersonAssocController.create(AbstractPersonAssocController.java:225)[AbstractPersonAssocController.class:na]
      2. org.jasig.ssp.web.api.PersonEarlyAlertController.create(PersonEarlyAlertController.java:155)[PersonEarlyAlertController.class:na]
      3. org.jasig.ssp.web.api.PersonEarlyAlertController$$FastClassBySpringCGLIB$$a31a514.invoke(<generated>)[spring-core-3.2.8.RELEASE.jar:na]
      3 frames
    9. Spring Core
      MethodProxy.invoke
      1. org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)[spring-core-3.2.8.RELEASE.jar:3.2.8.RELEASE]
      1 frame
    10. Spring AOP
      CglibAopProxy$DynamicAdvisedInterceptor.intercept
      1. org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:629)[spring-aop-3.2.8.RELEASE.jar:3.2.8.RELEASE]
      1 frame
    11. org.jasig.ssp
      PersonEarlyAlertController$$EnhancerBySpringCGLIB$$257a5be2.create
      1. org.jasig.ssp.web.api.PersonEarlyAlertController$$EnhancerBySpringCGLIB$$257a5be2.create(<generated>)[spring-core-3.2.8.RELEASE.jar:na]
      1 frame
    12. Java RT
      Method.invoke
      1. sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[na:1.7.0_67]
      2. sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)[na:1.7.0_67]
      3. sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[na:1.7.0_67]
      4. java.lang.reflect.Method.invoke(Method.java:606)[na:1.7.0_67]
      4 frames
    13. Spring
      InvocableHandlerMethod.invokeForRequest
      1. org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:215)[spring-web-3.2.8.RELEASE.jar:3.2.8.RELEASE]
      2. org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132)[spring-web-3.2.8.RELEASE.jar:3.2.8.RELEASE]
      2 frames
    14. Spring MVC
      ServletInvocableHandlerMethod.invokeAndHandle
      1. org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104)[spring-webmvc-3.2.8.RELEASE.jar:3.2.8.RELEASE]
      1 frame