次の問題に直面しています。ユーザーを SpEL を使用してサービス メソッドに渡そうとすると、
evaluate expression="commonService.userTest(user)" result="flowScope.user"
春は私に次の例外をスローします:
org.springframework.expression.spel.SpelEvaluationException: EL1004E:(pos 14): メソッド呼び出し: メソッド userTest(com.x.domain.common.User) が com.sun.proxy.$Proxy114 タイプで見つかりません
しかし、User オブジェクトの代わりにプレーン テキストを渡すと、
evaluate expression="commonService.userTest('Hello')" result="flowScope.user"
エラーはありません。
@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;
}
}