Кулака раза я сказать, я совершенно новый для весны ...служба не впрыскивается в контроллере весной 3
У меня есть метод, который должен быть транзакционным, но в разных классах. Эти методы получают некоторые параметры из приложения для Android. Итак, я написал GeneralServiceImp:
public class GeneralServiceImp implements GeneralService{
UserDao userDao;
VehiculoDao vehicleDao;
@Override
@Transactional
public String addUserAndVehicle(User user, Vehiculo vehiculo) {
System.out.println("Method addUserAndVehicle() invpked");
userDao.addUser(user);
vehicleDao.addVehiculo(vehiculo);
return null;
}
public void setUsuarioDao(UserDao userDao) {
this.userDao = userDao;
}
public void setVehiculoDao(VehiculoDao vehicleDao) {
this.vehicleDao = vehicleDao;
}
}
Это UserController:
@Controller
public class UsuarioControllers {
@Autowired
UsuarioService usuarioService;
GeneralService generalService;
@RequestMapping("/usuario/add")
@ResponseBody
public String addUsuario(@ModelAttribute("usuario")
User usuario,@ModelAttribute("vehiculo")Vehiculo vehiculo,BindingResult result){
System.out.println("Petition received");
if(usuario==null){
System.out.println("Usuario is null");
}
if(vehiculo==null){
System.out.println("Vehiculo is null");
}
try{
//usuarioService.addUsuario(usuario);
if(generalService!=null){
generalService.addUserAndVehicle(usuario, vehiculo);
}else{
System.out.println("generalService is null");
return "fail";
}
}catch (DuplicateKeyException e){
return "duplicated";
}
return "ok";
}
И в файле определения XML боб я имею generalService определяется следующим образом:
<bean name="generalService" class="com.goatsoft.appark.services.GeneralServiceImp">
<property name="usuarioDao" ref="userDao"/>
<property name="vehiculoDao" ref="vehiculoDao"/>
</bean>
Thigs таким образом, программа вводит «generalService null», если, и я не знаю, почему! Если вы видите, есть прокомментированная строка «//usuarioService.addUsuario(usuario»; ». Это сработало отлично. Не могли бы вы мне помочь?
спасибо.
Конечно ... Какая глупость! Теперь я полностью поддерживаю generalService и его работу. Кстати, мне не нужно было автоустанавливать Daos, и это действительно сработало. Спасибо за ответ! Я соглашусь, когда таймер позволяет мне :) – Fustigador