SpelEvaluationException-Methode kann nicht gefunden werden

Ich stehe vor dem nächsten Problem, wenn ich versuche, den Benutzer mithilfe von SpEL an die Dienstmethode zu übergeben.

evaluate expression="commonService.userTest(user)" result="flowScope.user"

spring wirft mir die folgende Ausnahme:

org.springframework.expression.spel.SpelEvaluationException: EL1004E: (pos 14): Methodenaufruf: Die Methode userTest (com.x.domain.common.User) kann auf com.sun.proxy nicht gefunden werden. $ Proxy114 type

Aber wenn ich einen einfachen Text anstelle des Benutzerobjekts übergebe,

evaluate expression="commonService.userTest('Hello')" result="flowScope.user"

Es gibt keine Fehler.

@Entity
@Table(name = "users")
@Getter
@Setter
@NoArgsConstructor
@Slf4j
public class User extends BaseEntity implements UserDetails {

    @Column(unique = true)
    @NotEmpty
    private String username;

    @Column
    @NotEmpty
    @Size(min = 5)
    private String password;
}

@Service("commonService")
public class CommonServiceImpl implements CommonService {
    @Transactional(readOnly = true)
    @Override
    public User userTest(String name) {
        User user = createUser();
        user.setUsername(name);
        return user;
    }
    @Transactional(readOnly = true)
    @Override
    public User userTest(User user) {
        return user;
    }
}

Antworten auf die Frage(4)

Ihre Antwort auf die Frage