2012-09-25 72 views
0

我尝试使用oauth 2.0与我们的客户建立安全通信。首先,我必须承认我对oauth完全陌生。 使用的技术如下:wicket,spring, 我采取了以下步骤。使用oauth 2.0和wicket实现身份验证

  1. 添加依赖在pom.xml中

    <依赖>
    <的groupId > org.springframework.security.oauth < /的groupId >
    <的artifactId >弹簧安全的OAuth < / artifactId >
    < 版本> 1.0.0.M3 < /版本>
    < 依赖性/ >

  2. 然后添加以下在WEB-INF /的web.xml

    <滤波器>
    < filter-name > springSecurityFilterChain < /滤波器名>
    < 滤波器级> org.springframework.web.filter.DelegatingFilterProxy < /滤波器级>
    < 滤波器/ >
    < 滤波器映射>
    < 滤波器 - 名称> springSecurityFilterChain < / filter-name >
    < URL模式> / * < / URL模式>
    < 滤波器/映射>

  3. 最后我添加这些行到META-INF /弹簧上下文/的application.xml

    < beans:bean id =“tokenServices”class =“org.springframework.security.oau th2.provider.token。InMemoryOAuth2ProviderTokenServices” >
    <豆:属性名= “supportRefreshToken” 值= “真” / >
    < /豆类:豆类>
    <的OAuth:提供客户信息服务-REF = “clientDetails” 令牌-Services-REF = “tokenServices” >
    < OAuth的:验证代码用户批准页= “/的OAuth / confirm_access” / >
    < /的OAuth:供应商>
    <的OAuth:客户信息服务ID = “clientDetails” >
    <的OAuth:客户端的clientId = “富” authorizedGrantTypes = “authorization_code” / >
    < / oauth:client-details-service >

但我得到这个错误:

25 09 12 14:48:11:921:ERROR: [ContextLoader] Context initialization failed 
java.lang.NoClassDefFoundError: org/springframework/core/env/ConfigurableEnvironment 
at java.lang.Class.getDeclaredConstructors0(Native Method) 
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2404) 
at java.lang.Class.getConstructor0(Class.java:2714) 
at java.lang.Class.getDeclaredConstructor(Class.java:2002) 
... 
+0

通常意味着一个jar问题,你确定正确的jar是在类路径上? – drobson

+0

这篇文章描述了类似的设置:http://blog.comsysto.com/2013/05/13/integrating-google-calendar-into-a-wicket-application/ – Val

回答

2

我认为你需要在你的Maven的依赖弹簧核心。具体版本3.1或更高版本。

+0

非常感谢,UR正确:) 固定 – noName

0

它通常是这样的,当我们添加一个依赖项时,它本身包含必要的依赖项。不是吗? 因为我得到了这样的错误,我添加了许多依赖,但仍然面临一些新的? 这是合乎逻辑的...添加依赖项,直到我可以运行该项目。 我还没有代码里面...只是尝试添加OAUTH依赖!

+0

Im不太确定你问什么!你问是否合乎逻辑地添加依赖来让项目运行,即使你没有实现代码? – drobson