Hi team, Thanks a lot. I got clarified and retried this scenario with modified GrantHandler & GrantValidator classes. Now the new jar is working and could generate access token successfully.
Thanks & Kind regards, On Tue, Sep 29, 2015 at 11:22 AM, Pushpalanka Jayawardhana <[email protected]> wrote: > Hi Kavitha, > > Please replace the existing setAuthorized(String str) method as per below > code. We have changed it to be like setAuthorized(User user) now. > > if (username.indexOf(CarbonConstants.DOMAIN_SEPARATOR) < 0 && UserCoreUtil > .getDomainFromThreadLocal() != null && > !"".equals(UserCoreUtil.getDomainFromThreadLocal())) > { username = UserCoreUtil.getDomainFromThreadLocal() + CarbonConstants. > DOMAIN_SEPARATOR + username; } tokReqMsgCtx.setAuthorizedUser(OAuth2Util. > getUserFromUserName(username)); > > [1] - > https://github.com/wso2/carbon-identity/blob/master/components/oauth/org.wso2.carbon.identity.oauth/src/main/java/org/wso2/carbon/identity/oauth2/token/handlers/grant/PasswordGrantHandler.java#L114-#L120 > > Thanks, > Pushpalanka. > -- > Pushpalanka Jayawardhana, B.Sc.Eng.(Hons). > Senior Software Engineer, WSO2 Lanka (pvt) Ltd; wso2.com/ > Mobile: +94779716248 > Blog: pushpalankajaya.blogspot.com/ | LinkedIn: > lk.linkedin.com/in/pushpalanka/ | Twitter: @pushpalanka > > > On Mon, Sep 28, 2015 at 3:46 PM, Kavitha Subramaniyam <[email protected]> > wrote: > >> Hi IS team, >> >> I'm getting an error[1] for Oauth2 custom grant type when generating >> access token for grant type-mobile in IS-5.1.0-Alpha and I have noticed >> that there is a resolved jira[2] says that "..fix provides support to add >> custom grant types by allowing to add grant type validators..". I have been >> added custom type following below steps. >> Appreciate if you can look into this issue and clarify for me? >> >> Steps: >> - altered identity.xml by including >> <SupportedGrantType> >> <GrantTypeName>mobile</GrantTypeName> >> >> <GrantTypeHandlerImplClass>org.soasecurity.is.oauth.grant.mobile.MobileGrant</GrantTypeHandlerImplClass> >> >> <GrantTypeValidatorImplClass>org.soasecurity.is.oauth.grant.mobile.MobileGrantValidator</GrantTypeValidatorImplClass> >> </SupportedGrantType> >> >> - copied .jar into <HOME>/repository/components/lib >> (accessed .jar, MobileGrant and MobileGrantValidator from here: >> https://svn.wso2.org/repos/wso2/people/asela/oauth/custom-grant/) >> - Start server and Created oauth app (here cuss) >> - execute below curl with relavant client_id:client_secret >> >> $ curl --user VmmZNaIRJ0U3Iz_Tanh6uH3go2ga:_yIJQ5lLVfQ_XylSguwE05rDjBYa >> -k -d "grant_type=mobile&mobileNumber=0333444" -H "Content-Type: >> application/x-www-form-urlencoded" https://localhost:9443/oauth2/token >> >> [2] https://wso2.org/jira/browse/IDENTITY-2925 >> [1] >> ------ >> >> [2015-09-28 14:13:31,916] DEBUG >> {org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint} - >> Received a request : /oauth2/token >> [2015-09-28 14:13:31,917] DEBUG >> {org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint} - >> ----------logging request headers.---------- >> [2015-09-28 14:13:31,917] DEBUG >> {org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint} - >> authorization : Basic >> Vm1tWk5hSVJKMFUzSXpfVGFuaDZ1SDNnbzJnYTpfeUlKUTVsTFZmUV9YeWxTZ3V3RTA1ckRqQllh >> [2015-09-28 14:13:31,917] DEBUG >> {org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint} - >> user-agent : curl/7.35.0 >> [2015-09-28 14:13:31,917] DEBUG >> {org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint} - host >> : localhost:9443 >> [2015-09-28 14:13:31,917] DEBUG >> {org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint} - >> accept : */* >> [2015-09-28 14:13:31,918] DEBUG >> {org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint} - >> content-type : application/x-www-form-urlencoded;charset=UTF-8 >> [2015-09-28 14:13:31,918] DEBUG >> {org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint} - >> content-length : 38 >> [2015-09-28 14:13:31,918] DEBUG >> {org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint} - >> ----------logging request parameters.---------- >> [2015-09-28 14:13:31,918] DEBUG >> {org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint} - >> grant_type - mobile >> [2015-09-28 14:13:31,918] DEBUG >> {org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint} - >> client_id - null >> [2015-09-28 14:13:31,918] DEBUG >> {org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint} - code >> - null >> [2015-09-28 14:13:31,918] DEBUG >> {org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint} - >> redirect_uri - null >> [2015-09-28 14:13:31,929] DEBUG >> {org.wso2.carbon.identity.oauth2.OAuth2Service} - Access Token request >> received for Client ID VmmZNaIRJ0U3Iz_Tanh6uH3go2ga, User ID null, Scope : >> [] and Grant Type : mobile >> [2015-09-28 14:13:31,931] DEBUG >> {org.wso2.carbon.identity.oauth2.token.handlers.clientauth.AbstractClientAuthHandler} >> - Can authenticate with client ID and Secret. Client ID: >> VmmZNaIRJ0U3Iz_Tanh6uH3go2ga >> [2015-09-28 14:13:31,932] DEBUG >> {org.wso2.carbon.identity.oauth2.token.handlers.clientauth.AbstractClientAuthHandler} >> - Grant type : mobile Strict client validation set to : null >> [2015-09-28 14:13:31,933] DEBUG >> {org.wso2.carbon.identity.oauth2.util.OAuth2Util} - Client credentials >> were available in the cache for client id : VmmZNaIRJ0U3Iz_Tanh6uH3go2ga >> [2015-09-28 14:13:31,934] DEBUG >> {org.wso2.carbon.identity.oauth2.util.OAuth2Util} - Successfully >> authenticated the client with client id : VmmZNaIRJ0U3Iz_Tanh6uH3go2ga >> [2015-09-28 14:13:31,935] INFO >> {org.soasecurity.is.oauth.grant.mobile.MobileGrant} - Mobile Grant handler >> is hit >> [2015-09-28 14:13:31,942] ERROR >> {org.apache.catalina.core.StandardWrapperValve} - Servlet.service() for >> servlet [OAuth2Endpoints] in context with path [/oauth2] threw exception >> java.lang.RuntimeException: org.apache.cxf.interceptor.Fault: >> org.wso2.carbon.identity.oauth2.token.OAuthTokenReqMessageContext.setAuthorizedUser(Ljava/lang/String;)V >> at >> org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:116) >> at >> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:331) >> at >> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121) >> at >> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:239) >> at >> org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:223) >> at >> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:203) >> at >> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:137) >> at >> org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:159) >> at >> org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:286) >> at >> org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:206) >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:646) >> at >> org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:262) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) >> at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) >> at >> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) >> at >> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) >> at >> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504) >> at >> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) >> at >> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) >> at >> org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:99) >> at >> org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve$1.invoke(CarbonTomcatValve.java:47) >> at >> org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:57) >> at >> org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47) >> at >> org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:62) >> at >> org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:159) >> at >> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) >> at >> org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:57) >> at >> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) >> at >> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421) >> at >> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074) >> at >> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611) >> at >> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1739) >> at >> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1698) >> at >> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) >> at >> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) >> at >> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) >> at java.lang.Thread.run(Thread.java:745) >> Caused by: org.apache.cxf.interceptor.Fault: >> org.wso2.carbon.identity.oauth2.token.OAuthTokenReqMessageContext.setAuthorizedUser(Ljava/lang/String;)V >> at >> org.apache.cxf.service.invoker.AbstractInvoker.createFault(AbstractInvoker.java:162) >> at >> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:128) >> at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:194) >> at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:100) >> at >> org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:57) >> at >> org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:93) >> at >> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271) >> ... 38 more >> Caused by: java.lang.NoSuchMethodError: >> org.wso2.carbon.identity.oauth2.token.OAuthTokenReqMessageContext.setAuthorizedUser(Ljava/lang/String;)V >> at >> org.soasecurity.is.oauth.grant.mobile.MobileGrant.validateGrant(MobileGrant.java:64) >> at >> org.wso2.carbon.identity.oauth2.token.AccessTokenIssuer.issue(AccessTokenIssuer.java:145) >> at >> org.wso2.carbon.identity.oauth2.OAuth2Service.issueAccessToken(OAuth2Service.java:195) >> at >> org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint.getAccessToken(OAuth2TokenEndpoint.java:252) >> at >> org.wso2.carbon.identity.oauth.endpoint.token.OAuth2TokenEndpoint.issueAccessToken(OAuth2TokenEndpoint.java:116) >> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> at >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) >> at >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >> at java.lang.reflect.Method.invoke(Method.java:606) >> at >> org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:180) >> at >> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96) >> ... 43 more >> ------------------------------------------- >> >> >> Thanks & Kind regards, >> >> -- >> Kavitha.S >> *Software Engineer -QA* >> Mobile : +94 (0) 771538811 <%2B94%20%280%29%20773%20451194> >> [email protected] <[email protected]> >> >> _______________________________________________ >> Dev mailing list >> [email protected] >> http://wso2.org/cgi-bin/mailman/listinfo/dev >> >> > -- Kavitha.S *Software Engineer -QA* Mobile : +94 (0) 771538811 <%2B94%20%280%29%20773%20451194> [email protected] <[email protected]>
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
