Enviar list em formulario HTML

24/07/2023

0

Criei um endpoint post na minha aplicação java e preciso criar um formulario, no formulario adiciono os campos username, password e roles(uma lista) porem ao dar submit o console imprime que roles está indo vazia, oque pode estar errado que não está enviando as roles ?

<form method="post">
            <div class="form-group">
                <input type="text" class="form-control" name="username" placeholder="Username" required>
            </div>
            <div class="form-group">
                <input type="password" class="form-control" name="password" placeholder="Senha" required>
            </div>
            <div class="form-group">
                <input type="password" class="form-control" name="confirmPassword" placeholder="Confirmar Senha" required>
            </div>
            <!-- Listagem das ROLES (Seleção múltipla) -->
            <div class="form-group">
                <select class="form-control" name="roles[]" multiple>
                    <option value="ROLE_ADMIN">ROLE_ADMIN</option>
                    <option value="ROLE_QUALIDADE">ROLE_QUALIDADE</option>
                    <option value="ROLE_USER">ROLE_USER</option>
                </select>
            </div>
            <button type="submit" class="btn btn-primary" style="margin-top: 10px;">Cadastrar</button>
            <a href="/" class="btn btn-light" role="button" style="margin-top: 10px;">Cancelar</a>
        </form>


Esse é o post:

 @RequestMapping(value = "/usuariosForm", method = RequestMethod.POST)
    public String saveUsuario(@Valid UserModel userModel, BindingResult result, RedirectAttributes attributes){
        System.out.println(userModel.toString());
        //userService.save(userModel);
        return "redirect:/usuarios";
    }



Este é o user model:
@Entity
@Table(name = "TB_USER")
public class UserModel implements UserDetails, Serializable {
    private static final long serialVersionUID=1L;


    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private long userId;
    @Column(nullable = false, unique = true)
    private String username;
    //@Column(nullable = false)
    private String password;

    @ManyToMany
    @JoinTable(name = "TB_USERS_ROLES",
            joinColumns = @JoinColumn(name = "user_id"),
            inverseJoinColumns = @JoinColumn(name = "roleid"))
    private List<RoleModel> roles;
Gustavo Nascimento

Gustavo Nascimento

Responder

Posts

26/07/2023

Gustavo Nascimento

Corrigido.
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar