我提供方法名称时使用ControllerLinkBuilder时遇到问题,如果我不运行它并显示结果,它将抛出错误。
错误似乎是jar问题,但我尝试使用的其他版本也仍然相同'spring-boot-starter-hateoas',它无法识别RepresentationModel&ControllerLinkBuilderlinkTo的包
@GetMapping("/{businessclass}/lists/_generic")
public ResponseEntity<POLineResponse> businessClass(@PathVariable final String businessclass,
@RequestParam String _fields, @RequestParam("company") String company) {
logger.info("Entering into businessClass {} params{} ",businessclass, _fields);
Page<PurchaseOrderLineDTO> page= mockFsmService.generateMockPurchaseOrderLines();
POLineResponse polR = new POLineResponse (page.getContent(),page.getTotalElements());
//polR.add(linkTo(LoadTestController.class).businessClass(businessclass,_fields,company)).withSelfRel();
//polR.add(ControllerLinkBuilderlinkTo(LoadTestController.class).withSelfRel());
Link selfLink = ControllerLinkBuilder.linkTo(methodOn(LoadTestController.class).businessClass(businessclass, _fields, company))
.withSelfRel();
polR.add(selfLink);
return new ResponseEntity<>(polR, HttpStatus.OK);
}
依赖项
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-commons</artifactId>
<version>2.2.0.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework.hateoas/spring-hateoas -->
<dependency>
<groupId>org.springframework.hateoas</groupId>
<artifactId>spring-hateoas</artifactId>
<version>1.0.3.RELEASE</version>
</dependency>
maven pom
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.4.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
<groupId>com.demo.c2c</groupId>
<artifactId>c2c-loadtest</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>c2c loadtest</name>
<description>C2C LoadTest</description>
<properties>
<java.version>12</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.opencsv</groupId>
<artifactId>opencsv</artifactId>
<version>4.1</version>
</dependency>
<dependency>
<groupId>com.googlecode.json-simple</groupId>
<artifactId> json-simple</artifactId>
<version>1.1</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.9</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<dependency>
<groupId>io.codearte.jfairy</groupId>
<artifactId>jfairy</artifactId>
<version>0.5.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-hateoas -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-ha
您可以再次添加以下依赖项并运行应用程序吗?>
<dependency>
<groupId>org.springframework.hateoas</groupId>
<artifactId>spring-hateoas</artifactId>
<version>0.25.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.plugin</groupId>
<artifactId>spring-plugin-core</artifactId>
<version>1.0.3.RELEASE</version>
</dependency>