Вот пример:
@GET
@Path("retrieve/{uuid}")
public Response retrieveSomething(@PathParam("uuid") String uuid) {
if(uuid == null || uuid.trim().length() == 0) {
return Response.serverError().entity("UUID cannot be blank").build();
}
Entity entity = service.getById(uuid);
if(entity == null) {
return Response.status(Response.Status.NOT_FOUND).entity("Entity not found for UUID: " + uuid).build();
}
String json = //convert entity to json
return Response.ok(json, MediaType.APPLICATION_JSON).build();
}
Взгляните на класс Response .
Обратите внимание, что вы всегда должны указывать тип контента, особенно если вы передаете несколько типов содержимого, но если каждое сообщение будет представлено как JSON, вы можете просто аннотировать метод с помощью @Produces("application/json")
Card-header - это гибкий элемент карты, поэтому мы должны работать со своим свойством flex. Попробуйте следующее:
Отредактируйте, чтобы объяснить, почему работает следующий код:
.card
- это гибкая рамка с flex-direction:column
.card
имеющие два элемента гибкости: .card-header
и .card-body
flexbox
, указанная проблема не будет возникать. Но в тот момент, когда он превосходит высоту flexbox
, свойство flex-shrink
обоих элементов гибкости входит в игру и сжимает высоту обоих предметов в равной пропорции. flex-shrink
для .card-header
0
, то есть его высота не изменится, когда высота .card-body
увеличивается (за исключением переполнения)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.2/css/bootstrap.min.css" integrity="sha384-Smlep5jCw/wG7hdkwQ/Z5nLIefveQRIY9nfy6xoR1uRYBtpZgI6339F5dgvm/e9B" crossorigin="anonymous">
</head>
<style>
.card{
width: 500px;
height: 500px;
}
.card-header{
flex: 1 0 100px;
display: flex;
justify-content: space-between;
align-items: center;
}
.card-body{
overflow-y: scroll;
}
.border-red{
border: 1px solid red;
}
</style>
<body>
<div class="card text-center">
<div class="card-header border-red ">
<div>left</div>
<div>center</div>
<div>right</div>
</div>
<div class="card-body">
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
<div>overflow</div>
</div>
</div>
</body>
</html>