我想在ConnectSupport中重载callbackUrl
我使用Spring boot Connect : org.springframework.social:spring-social-core:jar:1.1.0.RELEASE:compile
@Bean
public ConnectController connectController(
ConnectionFactoryLocator connectionFactoryLocator,
ConnectionRepository connectionRepository) {
ConnectController controller = new ConnectController(connectionFactoryLocator,
connectionRepository);
controller.set callbackUrl ??
return controller;
}发布于 2014-12-22 04:33:03
Spring Social Api在here上可用。您需要调用setApplicationUrl()。
@Bean
public ConnectController connectController(ConnectionFactoryLocator connectionFactoryLocator,
ConnectionRepository connectionRepository) {
ConnectController controller = new ConnectController(connectionFactoryLocator,
connectionRepository);
String url = "www.foo.com";
controller.setApplicationUrl(url) ;
return controller;
}发布于 2015-03-01 10:43:28
在这一点上(NullPointerException问题),一种解决问题的方法是扩展ConnectController (以及遭受相同问题的ProviderSignInController ),并自己修复代码中有问题的部分。只需将类添加到项目works中即可。它是优雅的吗?好吧..。
/*******************************************************************/
//RedirectedConnectController.java
public class RedirectedConnectController extends ConnectController {
@Value("${application.url}")
private String appUrl;
public RedirectedConnectController(ConnectionFactoryLocator connectionFactoryLocator,
ConnectionRepository connectionRepository) {
super(connectionFactoryLocator, connectionRepository);
}
/*
* This is the method, which should be called BEFORE setApplicationUrl
* but obviously is not.
*/
@Override
public void afterPropertiesSet() throws Exception {
super.afterPropertiesSet();
setApplicationUrl(appUrl);
}
}
/*******************************************************************/
//RedirectedSignInController.java
@Controller
public class RedirectedSignInController extends ProviderSignInController {
@Value("${application.url}")
private String appUrl;
@Inject
public RedirectedSignInController(ConnectionFactoryLocator connectionFactoryLocator,
UsersConnectionRepository usersConnectionRepository,
SignInAdapter signInAdapter) {
super(connectionFactoryLocator, usersConnectionRepository, signInAdapter);
}
@Override
public void afterPropertiesSet() throws Exception {
super.afterPropertiesSet();
setApplicationUrl(appUrl);
}
}https://stackoverflow.com/questions/27593441
复制相似问题