1
SpringVaadinIntegration 애드온에서 Spring과 Vaadin을 사용하는 어플리케이션을 개발 중입니다. 이제 Vaadin UI 클래스에 서비스를 삽입 할 때마다 문제가 해결됩니다. 다른 클래스에이 주석을 사용Vaadin Spring 통합 애드온이 작동하지 않습니다.
이이 MyUI에 사실 MYSERVICE에서 @Autowired 일 내 주요 angel이라는 UI 클래스
@Component
@Scope("prototype")
public class MyUI extends UI
{
@Autowired
private transient ApplicationContext applicationContext;
@Autowired
private MyService myService;
private MainPanel mainPanel;
private VerticalLayout verticalLayout;
@Override
protected void init(VaadinRequest request) {
// TODO Auto-generated method stub
verticalLayout = new VerticalLayout();
mainPanel = new MainPanel();
verticalLayout.addComponent(mainPanel);
setContent(verticalLayout);
}
}
이다이면 MyService
@Component
@Scope("session")
public class MyService {
public MyService() {
// TODO Auto-generated constructor stub
}
public String getLabel(){
return "this is my label";
}
public void saveUser(Utente utente){
System.out.println("save user");
}
}
입니다 주 패널에서 작동하지 않는 동안 null이 아닙니다.
@Component
public class MainPanel extends CustomComponent implements View {
private VerticalLayout mainLayout;
private Button button;
@Autowired
MyService secondService;
public MainPanel() {
buildMainLayout();
setCompositionRoot(mainLayout);
// TODO add user code here
}
@AutoGenerated
private VerticalLayout buildMainLayout() {
// common part: create layout
button = new Button();
mainLayout = new VerticalLayout();
mainLayout.addComponent(button);
button.addClickListener(new Button.ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
// TODO Auto-generated method stub
secondService.saveUser(new Utente());
}
});
return mainLayout;
}
}
여기서 사용자를 저장하려고하면 서비스가 null입니다. 내가 도대체 뭘 잘못하고있는 겁니까?
안녕하세요. 나는 똑같은 문제를 겪고있다. 문제가 뭔지 알아 냈어? – RAN
나는 다른 방법으로 해결했습니다. 만약 당신이 어떤 조언을 원한다면 어떻게 연락 드릴 수 있습니까? – Skizzo
감사합니다. 그러나 나는 그것을 어떻게 다룰 지 짐작했습니다. https://vaadin.com/forum#!/thread/1811101 – RAN