Mam nastepujace encje:

@Entity
public class Pet extends BaseClass{

	@Column(name = "pet_name")
	@Size(min=2,max=15,message="{Size}")
	private String petName;
	@OneToOne()
	@JoinColumn(name = "owner_Id")
	private Owner owner;
///
@Entity
public class Owner extends BaseClass {

    @Column(name = "first_name")
    @Size(min = 2, max = 15, message = "{Size}")
    private String firstName;

    @Column(name = "last_name")
    @Size(min = 2, max = 15, message = "{Size}")
    private String lastName;

    @Column(name = "phone")
    @Digits(fraction = 0, integer = 9)
    private String phoneNumber;

tworze z tych obiektów DTO do przekazania do widoku do formularza:

public class PetDto {
	private Pet pet;
	private Owner owner;

kontroller wyglada nastepujaco:

@RequestMapping(value = "/addPet", method = RequestMethod.POST)
	public String addPetPost(@Valid @ModelAttribute(value="petDto") PetDto petDto, BindingResult result){
		
		if(result.hasErrors())
			return "/addPet";

formularz wyglada nastepujaco

<form th:action="@{/addPet}" th:object="${petDto}" method="post">
			<table>
				<tr>
					<td>Pet name:</td>
					<td><input type="text" th:field="*{pet.petName}" /></td>
					<td th:if="${#fields.hasErrors('pet')}" th:errors="*{pet}">fieldError</td>
				</tr>
				<tr>
					<td>Owner First name:</td>
					<td><input type="text" th:field="*{owner.firstName}" /></td>
					<td th:if="${#fields.hasErrors('owner')}" th:errors="*{owner}">fieldError</td>
				</tr>
				<tr>
					<td>Owner Last name:</td>
					<td><input type="text" th:field="*{owner.lastName}" /></td>
					<td th:if="${#fields.hasErrors('owner')}" th:errors="*{owner}">fieldError</td>
				</tr>
				<tr>
					<td>Owner Number:</td>
					<td><input type="text" th:field="*{owner.phoneNumber}" /></td>
					<td th:if="${#fields.hasErrors('owner')}" th:errors="*{owner}">fieldError</td>
				</tr>
				<tr>
					<td><input type="submit" value="add" /></td>
				</tr>
			</table>
		</form>

Teraz:
Problem polega na tym aby walidacje z pol obiektów Pet i Owner, przekazac pod walidacje w obiekcie DTO, obecnie rzucany jest whitelabel page od springboota, gdyż w linii

if(result.hasErrors())

nie są wyłapywane walidacje pol obiektów , i w/w wyrazenie zwraca false;

Napisalem wlasne annotacje sprawdzające cały obiekt ale to rozwiazanie jest średnie, a zakładam ze da sie zrobic to jakos przyzwoiciej.