Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Spring Security+;Google OAuth2登录:访问令牌为空?_Java_Spring Mvc_Spring Security_Spring Security Oauth2_Google Login - Fatal编程技术网

Java Spring Security+;Google OAuth2登录:访问令牌为空?

Java Spring Security+;Google OAuth2登录:访问令牌为空?,java,spring-mvc,spring-security,spring-security-oauth2,google-login,Java,Spring Mvc,Spring Security,Spring Security Oauth2,Google Login,我从默认的Spring Security OAuth2登录实现(不使用Spring引导)中获得此错误: [invalid_token_response]尝试检索OAuth 2.0访问令牌响应时出错:提取类型[class org.springframework.security.oauth2.core.endpoint.OAuth2AccessTokenResponse]和内容类型[application/json;charset=utf-8]的响应时出错;嵌套的异常为org.springfram

我从默认的Spring Security OAuth2登录实现(不使用Spring引导)中获得此错误:

[invalid_token_response]尝试检索OAuth 2.0访问令牌响应时出错:提取类型[class org.springframework.security.oauth2.core.endpoint.OAuth2AccessTokenResponse]和内容类型[application/json;charset=utf-8]的响应时出错;嵌套的异常为org.springframework.http.converter.httpMessageNodeTableException:读取OAuth 2.0访问令牌响应时出错:null;嵌套异常是java.lang.NullPointerException

情节是:我转到任何受保护的页面,它重定向到谷歌“选择一个帐户”之类的东西,我选择帐户并砰的一声,重定向到/登录?显示上述文本时出错

Spring安全配置:

@Configuration
@EnableWebSecurity()
@PropertySource("classpath:application.properties")
public class SecurityConfiguration extends WebSecurityConfigurerAdapter {   

    @Override
    protected void configure(HttpSecurity http) throws Exception {      
        http    
            .csrf().disable()
            .authorizeRequests()
                .antMatchers("/tlog/**").authenticated()                
            .and().oauth2Login();
    }

    @Bean
    public OAuth2AuthorizedClientService authorizedClientService() {      
        return new InMemoryOAuth2AuthorizedClientService(clientRegistrationRepository());
    }

    @Bean
    public OAuth2AuthorizedClientRepository authorizedClientRepository(OAuth2AuthorizedClientService authorizedClientService) {
        return new AuthenticatedPrincipalOAuth2AuthorizedClientRepository(authorizedClientService);
    }


    @Bean
    public ClientRegistrationRepository clientRegistrationRepository() {        
        return new InMemoryClientRegistrationRepository(googleClientRegistration());        
    }   

    private ClientRegistration googleClientRegistration() {
        return CommonOAuth2Provider.GOOGLE.getBuilder("google")
            .clientId("XXX")
            .clientSecret("ZZZ")
            .build();
    }

}

我错过了什么?找不到任何不使用Spring Boot的合适教程,这实际上会有所帮助。

我也遇到了同样的问题。杰克逊解决了这个问题

        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
        </dependency>

com.fasterxml.jackson.core
杰克逊数据绑定

我也有同样的问题,但jackson databind没有解决。你最终成功了吗?(感谢任何人的帮助)是的,它确实奏效了,但在我的情况下,问题只是——杰克逊的依赖。