class SimpleEntity{
@Id
int id;
String name;
}
< /code>
Ein zugehöriges Repository: < /p>
class SimpleEntityRepository extends JpaRepository{
Slice findByName(String name, Pageable pageable);
}
< /code>
Ein verwandter Dienst: < /p>
class SimpleEntityService{
@Autowired
SimpleEntityRepository repository;
public Mono findByName(String name, Pageable pageable){
//All business logic excluded
return Mono.just(
repository.findByName(name, pageable);
);
}
}
< /code>
Ein zugehöriger Controller: < /p>
class SimpleEntityController{
@Autowired
SimpleEntityService service;
@RequestMapping("/some-mapping")
public Mono findByName(@Requestparam String name, int pageNum){
return service.findByName(name, Pageable.of(pageNum, 100));
}
}
< /code>
In meinen Integrationstests versuche ich jetzt mit WebTestClient auf den Controller, aber ich kann nicht verstehen, wie ich die Antwort abrufen und deserialisieren kann: < /p>
@Test
public void someIntegrationTest(){
WebTestClient.ResponseSpec responseSpec = webTestClient.get()
.uri(URI)
.accept(MediaType.APPLICATION_JSON)
.exchange();
responseSpec.returnResult(SliceImpl.class).getResponseBody.blockFirst();
}
< /code>
Die letzte Zeile löst die folgende Ausnahme aus: < /p>
com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of org.springframework.data.domain.Pageable (no Creators, like default constructor, exist): abstract types either need to be mapped to concrete types, have custom deserializer, or contain additional type information at [Source: UNKNOWN; byte offset: #UNKNOWN] (through reference chain: org.springframework.data.domain.SliceImpl["pageable"])
Was ich im Wesentlichen möchte, ist in der Lage, die Scheibe zu erhalten und in der Lage zu sein, Behauptungen darüber auszuführen.
Ich bin neu in der reaktiven Programmierung und bei Problemen. Ich habe ein sehr einfaches Szenario, < /p> Eine Entität: < /p> [code]class SimpleEntity{ @Id int id; String name; } < /code> Ein zugehöriges Repository: < /p> class SimpleEntityRepository extends JpaRepository{
Slice findByName(String name, Pageable pageable);
} < /code> Ein verwandter Dienst: < /p> class SimpleEntityService{ @Autowired SimpleEntityRepository repository;
public Mono findByName(String name, Pageable pageable){ //All business logic excluded return Mono.just( repository.findByName(name, pageable); ); }
} < /code> Ein zugehöriger Controller: < /p> class SimpleEntityController{
@Autowired SimpleEntityService service;
@RequestMapping("/some-mapping") public Mono findByName(@Requestparam String name, int pageNum){ return service.findByName(name, Pageable.of(pageNum, 100)); }
} < /code> In meinen Integrationstests versuche ich jetzt mit WebTestClient auf den Controller, aber ich kann nicht verstehen, wie ich die Antwort abrufen und deserialisieren kann: < /p> @Test public void someIntegrationTest(){ WebTestClient.ResponseSpec responseSpec = webTestClient.get() .uri(URI) .accept(MediaType.APPLICATION_JSON) .exchange(); responseSpec.returnResult(SliceImpl.class).getResponseBody.blockFirst(); } < /code> Die letzte Zeile löst die folgende Ausnahme aus: < /p> com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of org.springframework.data.domain.Pageable (no Creators, like default constructor, exist): abstract types either need to be mapped to concrete types, have custom deserializer, or contain additional type information at [Source: UNKNOWN; byte offset: #UNKNOWN] (through reference chain: org.springframework.data.domain.SliceImpl["pageable"])[/code] Was ich im Wesentlichen möchte, ist in der Lage, die Scheibe zu erhalten und in der Lage zu sein, Behauptungen darüber auszuführen.
Problem mit manuell einstellen ID im Spring -Boot -Integrationstest mit WebTestClient
Ich schreibe einen Integrationstest für meinen Spring -Boot -Controller mit WebTestClient. Wenn ich jedoch die ID...
Ich habe also 3 Linux -Maschinen wie SO:
Machine 1 Machine 2 Machine 3
----------------------- ------------------------ -----------------------
| eth0: 172.17.0.1/16 |======| eth0: 172.17.0.2/16 |...
Ich verwende die Flutter -Linux -App, um APIs auszuführen, die ich mit schnellen APIs geschrieben habe, die lokal auf meinem Ubuntu -Computer ausgeführt werden. flutter: Error during registration:...
Irgendwie verliert Jobject und Jarray neben Dynamic den Wert. Hier ist der Handler
var jsonAllProvince = JObject.Parse(await uKraineService.GetAllLivinProvince())
.SelectToken( result.provinceList...
Die Web -Forum -Struktur hier. Meine aktuelle Abfrage erhält die Zeitstempel von den ältesten und neuesten Beiträgen, die jedem Thread zugeordnet sind. Was ich anscheinend nicht herausfinden kann,...