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;
}
}