Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 2017-07-25 16:37:25.462:WARN:oejd.DeploymentManager:Scanner-1: Unable to reach node goal: started
- java.lang.NoSuchMethodError: org.springframework.beans.factory.support.RootBeanDefinition.setTargetType(Lorg/springframework/core/ResolvableType;)V
- at org.springframework.statemachine.config.configuration.StateMachineConfiguration.buildBeanDefinition(StateMachineConfiguration.java:109)
- at org.springframework.statemachine.config.common.annotation.AbstractImportingAnnotationConfiguration.registerBeanDefinitions(AbstractImportingAnnotationConfiguration.java:92)
- at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitionsFromRegistrars(ConfigurationClassBeanDefinitionReader.java:352)
- at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitionsForConfigurationClass(ConfigurationClassBeanDefinitionReader.java:143)
- at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitions(ConfigurationClassBeanDefinitionReader.java:116)
- at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:333)
- at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:243)
- at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:273)
- at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:98)
- at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:678)
- at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:520)
- at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:444)
- at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:326)
- at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107)
- import org.springframework.context.annotation.Bean;
- import org.springframework.context.annotation.Configuration;
- import org.springframework.statemachine.config.EnableStateMachine;
- import org.springframework.statemachine.config.EnumStateMachineConfigurerAdapter;
- import org.springframework.statemachine.config.builders.StateMachineConfigurationConfigurer;
- import org.springframework.statemachine.config.builders.StateMachineStateConfigurer;
- import org.springframework.statemachine.config.builders.StateMachineTransitionConfigurer;
- import org.springframework.statemachine.listener.StateMachineListener;
- import org.springframework.statemachine.listener.StateMachineListenerAdapter;
- import org.springframework.statemachine.state.State;
- import java.util.EnumSet;
- @Configuration
- @EnableStateMachine
- public class StateMachineConfig
- extends EnumStateMachineConfigurerAdapter<States, Events> {
- @Override
- public void configure(StateMachineConfigurationConfigurer<States, Events> config)
- throws Exception {
- config
- .withConfiguration()
- .autoStartup(true)
- .listener(listener());
- }
- @Override
- public void configure(StateMachineStateConfigurer<States, Events> states)
- throws Exception {
- states
- .withStates()
- .initial(States.SI)
- .states(EnumSet.allOf(States.class));
- }
- @Override
- public void configure(StateMachineTransitionConfigurer<States, Events> transitions)
- throws Exception {
- transitions
- .withExternal()
- .source(States.SI).target(States.S1).event(Events.E1)
- .and()
- .withExternal()
- .source(States.S1).target(States.S2).event(Events.E2);
- }
- @Bean
- public StateMachineListener<States, Events> listener() {
- return new StateMachineListenerAdapter<States, Events>() {
- @Override
- public void stateChanged(State<States, Events> from, State<States, Events> to) {
- System.out.println("State change to " + to.getId());
- }
- };
- }
- }
- @Controller
- @RequestMapping("/")
- public class HomeController {
- private StateMachine<States, Events> stateMachine;
- @RequestMapping(method = RequestMethod.GET)
- public String index() {
- stateMachine.sendEvent(Events.E1);
- return "redirect:/target/list";
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement