title: Spring Hateoas / HAL throw Exception
body: <p>I've got weird issue because everything works fine in my application, by after do GET method I always get exception:</p>
  
  <pre><code>2018-05-10 12:17:18.608  WARN 16031 --- [nio-8080-exec-1] tion$ResourceSupportHttpMessageConverter : Failed to evaluate Jackson serialization for type [class com.computeralchemist.domain.components.OpinionDto]: java.lang.IllegalStateException: Cannot override _serializer: had a `org.springframework.hateoas.hal.Jackson2HalModule$HalLinkListSerializer`, trying to set to `org.springframework.data.rest.webmvc.json.PersistentEntityJackson2Module$NestedEntitySerializer`
  </code></pre>
  
  <p>My DTO object is simple:</p>
  
  <pre><code>@Getter
  @Setter
  @JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY)
  public abstract class ComputerComponent extends ResourceSupport {
  
      ....
  }
  </code></pre>
  
  <p>And one of child class:</p>
  
  <pre><code>@Getter
  @Setter
  @Document(collection = "cpu")
  public class Cpu extends ComputerComponent {
  
      @Id
      private long productId;
  
      private CpuParameters cpuParameters;
  
  }
  </code></pre>
  
  <p>And REST controller's method:</p>
  
  <pre><code>@GetMapping(value = "/{id}", produces = "application/json; charset:UTF-8")
  @ResponseStatus(HttpStatus.OK)
  public ComputerComponent getComponent(@PathVariable("component") String component,
                                        @PathVariable("id") long id) {
  
      ComputerComponent computerComponent = repositoryProvider.findComponent(component, id);
  
      if (computerComponent == null)
          throw new ComponentNotFoundException(component, id);
  
      computerComponent.add(linkTo(methodOn(ComponentsController.class)
              .getComponent(component, id)).withSelfRel());
  
      computerComponent.add(linkTo(methodOn(ComponentsController.class)
              .getListOfComponents(computerComponent.getComponentType().toString()))
              .withRel("collection"));
  
      return computerComponent;
  }
  </code></pre>
  
  <p>Json returned (looks correctly, but I don't want null values):</p>
  
  <pre><code>{
    "componentType" : "cpu",
    "producent" : "AMD",
    "model" : "Ryzen 5 1600",
      "content" : [ ],
      "links" : [ ]
    },
    "links" : [ {
      "rel" : "self",
      "href" : "http://localhost:8080/components/cpu/1",
      "hreflang" : null,
      "media" : null,
      "title" : null,
      "type" : null,
      "deprecation" : null,
      "content" : [ ],
      "links" : [ ]
    }, {
      "rel" : "collection",
      "href" : "http://localhost:8080/components/cpu",
      "hreflang" : null,
      "media" : null,
      "title" : null,
      "type" : null,
      "deprecation" : null,
      "content" : [ ],
      "links" : [ ]
    } ]
  }
  </code></pre>
  
  <p>PS: Why in Links property is "hreflang","media" etc?  </p>