Quantcast
Channel: Spring Community Forums - Social
Viewing all articles
Browse latest Browse all 145

Override methods from ProviderSigninController/ComectController

$
0
0
What I am trying to achieve is first when trying to connect to a service provider if no session is available - create one and second because my client is not a browser but HttpClient I want the connectionStatus method to return json instead of html?

I tried directly extending from ConnectController but I suspect a lot is happening behind the scenes so not quite clear what exactly the error is telling me:


@Controller
@RequestMapping("/connect")
public class MyConnectController extends ConnectController {

@Inject
public MyConnectController(
ConnectionFactoryLocator connectionFactoryLocator,
ConnectionRepository connectionRepository) {
super(connectionFactoryLocator, connectionRepository);
// TODO Auto-generated constructor stub
}

@RequestMapping(value = "/{providerId}", method = RequestMethod.GET)
public String get(@PathVariable String providerId, NativeWebRequest request) {
return "I'll return a json string here, OK?";
}

@Override
@RequestMapping(value = "/{providerId}", method = RequestMethod.POST)
public RedirectView connect(@PathVariable String providerId,
NativeWebRequest request) {
System.out.println("I'll create a new session here, OK?");
return super.connect(providerId, request);
}
}


and I am getting the following error:


SEVERE: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListe ner
org.springframework.beans.factory.BeanCreationExce ption: Error creating bean with name 'requestMappingHandlerMapping' defined in class path resource [org/springframework/web/servlet/config/annotation/DelegatingWebMvcConfiguration.class]: Invocation of init method failed; nested exception is java.lang.IllegalStateException: Ambiguous mapping found. Cannot map 'myConnectController' bean method
public java.lang.String org.springframework.social.connect.web.ConnectCont roller.connectionStatus(java.lang.String,org.sprin gframework.web.context.request.NativeWebRequest,or g.springframework.ui.Model)
to {[/connect/{providerId}],methods=[GET],params=[],headers=[],consumes=[],produces=[],custom=[]}: There is already 'myConnectController' bean method
public org.springframework.web.servlet.view.RedirectView com.buzz.social.connect.MyConnectController.get(ja va.lang.String,org.springframework.web.context.req uest.NativeWebRequest) mapped.
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.initializeBean(Abstract AutowireCapableBeanFactory.java:1486)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.doCreateBean(AbstractAu towireCapableBeanFactory.java:524)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.createBean(AbstractAuto wireCapableBeanFactory.java:461)
at org.springframework.beans.factory.support.Abstract BeanFactory$1.getObject(AbstractBeanFactory.java:2 95)
at org.springframework.beans.factory.support.DefaultS ingletonBeanRegistry.getSingleton(DefaultSingleton BeanRegistry.java:223)
at org.springframework.beans.factory.support.Abstract BeanFactory.doGetBean(AbstractBeanFactory.java:292 )
at org.springframework.beans.factory.support.Abstract BeanFactory.getBean(AbstractBeanFactory.java:194)
at org.springframework.beans.factory.support.DefaultL istableBeanFactory.preInstantiateSingletons(Defaul tListableBeanFactory.java:626)
at org.springframework.context.support.AbstractApplic ationContext.finishBeanFactoryInitialization(Abstr actApplicationContext.java:932)
at org.springframework.context.support.AbstractApplic ationContext.refresh(AbstractApplicationContext.ja va:479)
at org.springframework.web.context.ContextLoader.conf igureAndRefreshWebApplicationContext(ContextLoader .java:389)
at org.springframework.web.context.ContextLoader.init WebApplicationContext(ContextLoader.java:294)
at org.springframework.web.context.ContextLoaderListe ner.contextInitialized(ContextLoaderListener.java: 112)
at org.apache.catalina.core.StandardContext.listenerS tart(StandardContext.java:4797)
at org.apache.catalina.core.StandardContext.startInte rnal(StandardContext.java:5291)
at org.apache.catalina.util.LifecycleBase.start(Lifec ycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild. call(ContainerBase.java:1559)
at org.apache.catalina.core.ContainerBase$StartChild. call(ContainerBase.java:1549)
at java.util.concurrent.FutureTask$Sync.innerRun(Futu reTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.jav a:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.run Task(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:680)
Caused by: java.lang.IllegalStateException: Ambiguous mapping found. Cannot map 'myConnectController' bean method
public java.lang.String org.springframework.social.connect.web.ConnectCont roller.connectionStatus(java.lang.String,org.sprin gframework.web.context.request.NativeWebRequest,or g.springframework.ui.Model)
to {[/connect/{providerId}],methods=[GET],params=[],headers=[],consumes=[],produces=[],custom=[]}: There is already 'myConnectController' bean method
public org.springframework.web.servlet.view.RedirectView com.buzz.social.connect.MyConnectController.get(ja va.lang.String,org.springframework.web.context.req uest.NativeWebRequest) mapped.
at org.springframework.web.servlet.handler.AbstractHa ndlerMethodMapping.registerHandlerMethod(AbstractH andlerMethodMapping.java:171)
at org.springframework.web.servlet.handler.AbstractHa ndlerMethodMapping.detectHandlerMethods(AbstractHa ndlerMethodMapping.java:145)
at org.springframework.web.servlet.handler.AbstractHa ndlerMethodMapping.initHandlerMethods(AbstractHand lerMethodMapping.java:107)
at org.springframework.web.servlet.handler.AbstractHa ndlerMethodMapping.afterPropertiesSet(AbstractHand lerMethodMapping.java:87)
at org.springframework.web.servlet.mvc.method.annotat ion.RequestMappingHandlerMapping.afterPropertiesSe t(RequestMappingHandlerMapping.java:163)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.invokeInitMethods(Abstr actAutowireCapableBeanFactory.java:1545)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.initializeBean(Abstract AutowireCapableBeanFactory.java:1483)
... 22 more

Viewing all articles
Browse latest Browse all 145

Trending Articles