java: cannot find symbol symbol: method getPassword() location: variable user of type org.apache.tomcat.jni.User

У меня небольшое учебное spring-boot приложение, которое при запуске выдаёт ошибку. Вот метод, в котором она возникает:

package com.jm.spring_boot.service.service;
import com.jm.spring_boot.service.repository.UserRepository;
import org.apache.tomcat.jni.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;


import java.util.List;

@Service
@Transactional
public class UserService {

    private PasswordEncoder passwordEncoder;
    private UserRepository userRepository;

    @Autowired
    public UserService(PasswordEncoder passwordEncoder, UserRepository userRepository) {
        this.passwordEncoder = passwordEncoder;
        this.userRepository = userRepository;
    }

    public List<User> getAllUsers() {
        return userRepository.findAll();
    }
    public User getUserById(long id) {
        return userRepository.findById(id).get();
    }

    public void deleteUser(long id) {
        userRepository.deleteById(id);
    }
    public User saveUser(User user) {
        user.setPassword(passwordEncoder.encode(user.getPassword()));
        return userRepository.save(user);
    }

    public User updateUser(User user) {
        user.setPassword(passwordEncoder.encode(user.getPassword()));
        return userRepository.save(user);
    }

    public User findByEmail(String email) {
        return userRepository.findByEmail(email);
    }

    public String getUserByUsername(String name) {
        return name;
    }
}

Ссылка на весь проект https://github.com/faraponoff/spring_boot311


Ответы (1 шт):

Автор решения: DmitriyD

Вы импортировали класс User из пакета org.apache.tomcat.jni, в котором нет метода getPassword()

Замените импорт в UserService

import org.apache.tomcat.jni.User;

на

import com.jm.spring_boot.service.model.User;
→ Ссылка