title: fasterxml.jackson.databind Invalid Definition Exception
body: <p>I am trying to do a post request using a URL which I've defined as the endpoint.</p>
  
  <p>Controller Code:</p>
  
  <pre><code> import java.util.List;
  
  import org.springframework.beans.factory.annotation.Autowired;
  import org.springframework.stereotype.Controller;
  import org.springframework.web.bind.annotation.CrossOrigin;
  import org.springframework.web.bind.annotation.GetMapping;
  import org.springframework.web.bind.annotation.PostMapping;
  import org.springframework.web.bind.annotation.RequestBody;
  import org.springframework.web.bind.annotation.RequestMapping;
  import org.springframework.web.bind.annotation.ResponseBody;
  
  import com.abc.datacollection.Constants;
  import com.abc.datacollection.dao.UserClickDataRepository;
  import com.abc.datacollection.entity.UserClickData;
  import com.abc.datacollection.entity.UserClickProjection;
  import com.abc.datacollection.entity.UserClickProjection2;
  
  @Controller    
  @RequestMapping(path="/user_click_data") 
  public class UserClickDataController {
      @Autowired 
      private UserClickDataRepository userClickDataRepository;
      /**
       * this method adds user click data records into user_click_data table
       * @param searchHisObj
       * @return
       */
      @CrossOrigin(origins = "*")
      @PostMapping(path="/add", consumes = "application/json", produces = "application/json") // Map ONLY POST Requests
      public @ResponseBody String addUserClickDataRecord (@RequestBody List&lt;UserClickData&gt; searchHisObj) {
          userClickDataRepository.saveAll(searchHisObj);
          System.out.println("saved click data:"+searchHisObj);
          return Constants.STATUS_OK;
      }
      /**
  
   * this method fetches all user click data records from user_click_data table
   * @return
   */
  @CrossOrigin(origins = "*")
  @GetMapping(path="/all")
  public @ResponseBody List&lt;UserClickProjection&gt; getAllUserClickDataRecords() {
      return userClickDataRepository.findAllProjectedBy();
  }
  
  @CrossOrigin(origins = "*")
  @GetMapping(path="/allsecond")
  public @ResponseBody List&lt;UserClickProjection2&gt; getAllUserClickDataRecords2() {
      return userClickDataRepository.findAllProjectedBy2();
  }
  </code></pre>
  
  <p>}</p>
  
  <p>DAO Code:</p>
  
  <pre><code>import java.util.List;
  
  import org.springframework.data.jpa.repository.Query;
  import org.springframework.data.repository.CrudRepository;
  
  import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
  import com.abc.datacollection.entity.UserClickData;
  import com.abc.datacollection.entity.UserClickProjection;
  import com.abc.datacollection.entity.UserClickProjection2;
  import com.abc.datacollection.entity.UserProjection;
  
  @JsonDeserialize(as = com.abc.datacollection.entity.UserClickData.class)
  public interface UserClickDataRepository extends CrudRepository&lt;UserClickData, Integer&gt; {
      public static final String FIND_QUERY = 
      "select new com.abc.datacollection.entity.UserClickData(user.u_type, COUNT(user.u_type)) from UserClickData user GROUP BY user.u_type ORDER BY COUNT(user.u_type) DESC";
      @Query(value = FIND_QUERY)
      //public List&lt;UserProjection&gt; getAllRequestResponseRecords();
       List&lt;UserClickProjection&gt; findAllProjectedBy();
  
      public static final String FIND_QUERY_2 = 
              "select new com.abc.datacollection.entity.UserClickData(user.u_type, COUNT(user.u_type), user.sys_updated_on) from UserClickData user GROUP BY user.sys_updated_on ORDER BY sys_updated_on DESC";
              @Query(value = FIND_QUERY_2)
              //public List&lt;UserProjection&gt; getAllRequestResponseRecords();
               List&lt;UserClickProjection2&gt; findAllProjectedBy2();
  }
  </code></pre>
  
  <p>Class:</p>
  
  <pre><code>import java.util.Date;
  
  import javax.persistence.Entity;
  import javax.persistence.GeneratedValue;
  import javax.persistence.GenerationType;
  import javax.persistence.Id;
  import javax.persistence.Transient;
  
  
  
  @Entity // This tells Hibernate to make a table out of this class
  public class UserClickData {
  
      @Id
      @GeneratedValue(strategy = GenerationType.IDENTITY)
      private int sys_id;
      private String u_search_term;
      private String u_index;
      private String u_sysid;
      private String u_table;
      private String u_facet_id;
      private String department;
      private Date sys_updated_on;
      private String u_type;
      private int flag;
      private String u_user;
      private String u_solr_request_response;
      private String u_title;
      private String u_page;
      private String u_portal;
  
      @Transient
      private long count;
  
  //  public UserClickData(int sys_id, String u_search_term, String u_index, String u_sysid, String u_table, String u_facet_id, String department, Date sys_updated_on, String u_type, int flag, String u_user, String u_solr_request_response, String u_title, String u_page, String u_portal) {
  //      this.sys_id = sys_id;
  //      this.u_search_term = u_search_term;
  //      this.u_index = u_index;
  //      this.u_sysid = u_sysid;
  //      this.u_table = u_table;
  //      this.u_facet_id = u_facet_id;
  //      this.department = department;
  //      this.sys_updated_on = sys_updated_on;
  //      this.u_type = u_type;
  //      this.flag = flag;
  //      this.u_user = u_user;
  //      this.u_solr_request_response = u_solr_request_response;
  //      this.u_title = u_title;
  //      this.u_page = u_page;
  //      this.u_portal = u_portal;
  //  }
  
      public UserClickData(String u_type, long count) {       //, long count
          this.u_type = u_type;
          this.count=count;
      }
  
      public UserClickData(String u_type, long count, Date sys_updated_on ) {
          this.u_type = u_type;
          this.count=count;
          this.sys_updated_on=sys_updated_on;
      }
  
      public long getCount() {
          return count;
      }
      public void setCount(long count) {
          this.count=count;
      }
  
      public int getSys_id() {
          return sys_id;
      }
      public void setSys_id(int sys_id) {
          this.sys_id = sys_id;
      }
      public String getU_search_term() {
          return u_search_term;
      }
      public void setU_search_term(String u_search_term) {
          this.u_search_term = u_search_term;
      }
      public String getU_index() {
          return u_index;
      }
      public void setU_index(String u_index) {
          this.u_index = u_index;
      }
      public String getU_sysid() {
          return u_sysid;
      }
      public void setU_sysid(String u_sysid) {
          this.u_sysid = u_sysid;
      }
      public String getU_table() {
          return u_table;
      }
      public void setU_table(String u_table) {
          this.u_table = u_table;
      }
      public String getU_facet_id() {
          return u_facet_id;
      }
      public void setU_facet_id(String u_facet_id) {
          this.u_facet_id = u_facet_id;
      }
      public String getDepartment() {
          return department;
      }
      public void setDepartment(String department) {
          this.department = department;
      }
      public Date getSys_updated_on() {
          return sys_updated_on;
      }
      public void setSys_updated_on(Date sys_updated_on) {
          this.sys_updated_on = sys_updated_on;
      }
      public String getU_type() {
          return u_type;
      }
      public void setU_type(String u_type) {
          this.u_type = u_type;
      }
      public int getFlag() {
          return flag;
      }
      public void setFlag(int flag) {
          this.flag = flag;
      }
      public String getU_user() {
          return u_user;
      }
      public void setU_user(String u_user) {
          this.u_user = u_user;
      }
      public String getU_solr_request_response() {
          return u_solr_request_response;
      }
      public void setU_solr_request_response(String u_solr_request_response) {
          this.u_solr_request_response = u_solr_request_response;
      }
      public String getU_title() {
          return u_title;
      }
      public void setU_title(String u_title) {
          this.u_title = u_title;
      }
      public String getU_page() {
          return u_page;
      }
      public void setU_page(String u_page) {
          this.u_page = u_page;
      }
      public String getU_portal() {
          return u_portal;
      }
      public void setU_portal(String u_portal) {
          this.u_portal = u_portal;
      }
  }
  </code></pre>
  
  <p>Error Stack:</p>
  
  <pre><code>2019-10-16 16:02:29.394 ERROR 9058 --- [nio-9000-exec-6] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.http.converter.HttpMessageConversionException: Type definition error: [simple type, class com.servicenow.datacollection.entity.UserClickData]; nested exception is com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of `com.servicenow.datacollection.entity.UserClickData` (no Creators, like default construct, exist): cannot deserialize from Object value (no delegate- or property-based Creator)
   at [Source: (PushbackInputStream); line: 1, column: 3] (through reference chain: java.util.ArrayList[0])] with root cause
  
  com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of `com.abc.datacollection.entity.UserClickData` (no Creators, like default construct, exist): cannot deserialize from Object value (no delegate- or property-based Creator)
   at [Source: (PushbackInputStream); line: 1, column: 3] (through reference chain: java.util.ArrayList[0])
      at com.fasterxml.jackson.databind.exc.InvalidDefinitionException.from(InvalidDefinitionException.java:67) ~[jackson-databind-2.9.9.jar!/:2.9.9]
      at com.fasterxml.jackson.databind.DeserializationContext.reportBadDefinition(DeserializationContext.java:1452) ~[jackson-databind-2.9.9.jar!/:2.9.9]
      at com.fasterxml.jackson.databind.DeserializationContext.handleMissingInstantiator(DeserializationContext.java:1028) ~[jackson-databind-2.9.9.jar!/:2.9.9]
      at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeFromObjectUsingNonDefault(BeanDeserializerBase.java:1297) ~[jackson-databind-2.9.9.jar!/:2.9.9]
      at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:326) ~[jackson-databind-2.9.9.jar!/:2.9.9]
      at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:159) ~[jackson-databind-2.9.9.jar!/:2.9.9]
      at com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:286) ~[jackson-databind-2.9.9.jar!/:2.9.9]
      at com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:245) ~[jackson-databind-2.9.9.jar!/:2.9.9]
      at com.fasterxml.jackson.databind.deser.std.CollectionDeserializer.deserialize(CollectionDeserializer.java:27) ~[jackson-databind-2.9.9.jar!/:2.9.9]
      at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4013) ~[jackson-databind-2.9.9.jar!/:2.9.9]
      at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3084) ~[jackson-databind-2.9.9.jar!/:2.9.9]
      at org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.readJavaType(AbstractJackson2HttpMessageConverter.java:239) ~[spring-web-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.read(AbstractJackson2HttpMessageConverter.java:227) ~[spring-web-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodArgumentResolver.readWithMessageConverters(AbstractMessageConverterMethodArgumentResolver.java:204) ~[spring-webmvc-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.readWithMessageConverters(RequestResponseBodyMethodProcessor.java:157) ~[spring-webmvc-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.resolveArgument(RequestResponseBodyMethodProcessor.java:130) ~[spring-webmvc-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:126) ~[spring-web-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:167) ~[spring-web-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:134) ~[spring-web-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) ~[spring-webmvc-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:892) ~[spring-webmvc-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797) ~[spring-webmvc-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) ~[spring-webmvc-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1039) ~[spring-webmvc-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942) ~[spring-webmvc-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005) ~[spring-webmvc-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:908) ~[spring-webmvc-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:660) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882) ~[spring-webmvc-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) ~[tomcat-embed-websocket-9.0.21.jar!/:9.0.21]
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.springframework.boot.actuate.web.trace.servlet.HttpTraceFilter.doFilterInternal(HttpTraceFilter.java:88) ~[spring-boot-actuator-2.1.6.RELEASE.jar!/:2.1.6.RELEASE]
      at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) ~[spring-web-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99) ~[spring-web-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) ~[spring-web-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:92) ~[spring-web-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) ~[spring-web-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:93) ~[spring-web-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) ~[spring-web-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.filterAndRecordMetrics(WebMvcMetricsFilter.java:114) ~[spring-boot-actuator-2.1.6.RELEASE.jar!/:2.1.6.RELEASE]
      at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:104) ~[spring-boot-actuator-2.1.6.RELEASE.jar!/:2.1.6.RELEASE]
      at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) ~[spring-web-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) ~[spring-web-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:109) ~[spring-web-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]
      at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]
      at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.21.jar!/:9.0.21]
      at java.base/java.lang.Thread.run(Thread.java:835) ~[na:na]
  </code></pre>
  
  <p>URL I'm trying to access:  <a href="http://127.0.0.1:9000/user_click_data/add" rel="nofollow noreferrer">http://127.0.0.1:9000/user_click_data/add</a></p>
  
  <p>Payload I'm trying to post: </p>
  
  <pre><code>[
  
      {
          "u_search_term":"madrid",
          "u_index":1,
          "u_sysid":"0db06114db4cc8904819fb2439961991",
          "u_table":"",
          "u_facet_id":"",
          "department":"",
          "sys_updated_on":"2019-10-16T10:32:29.108Z",
          "u_type":"METROCOMM",
          "flag":0,
          "u_user":"",
          "u_solr_request_response":"\"madrid\" OR madrid",
          "u_title":"",
          "u_page":"",
          "u_portal":""
      }
  
  ]
  </code></pre>
  
  <p>As you can see, I've added @JsonDeserialize annotation which I imported from com.fasterxml.jackson.databind.annotation.JsonDeserialize. 
  Can someone tell me what I'm doing wrong here. Thanks.</p>