Hi Nirmal,

I was able to figure this out. Reason was, I was not sending the
Content-Type header. But the error was misleading.


On Mon, May 19, 2014 at 12:12 PM, Nirmal Fernando <nirmal070...@gmail.com>wrote:

> Hi Amila,
>
> What's the user you're trying to invoke this method as? Super admin?
>
>
> On Sun, May 18, 2014 at 1:36 PM, Amila Maha Arachchi <ami...@wso2.com>wrote:
>
>> Hi Devs,
>>
>> I am trying to invoke the /stratos/admin/reponotification resource with
>> the following curl command.
>>
>> curl  -v -k  -X POST 
>> https://username:password@host:9443/stratos/admin/reponotification
>>  -d payload='{"repository":{"url":"my git repo url here"}}'
>>
>> Then I get the following exception in Stratos Manager.
>>
>> TID: [0] [SCC] [2014-05-18 00:59:31,991] ERROR
>> {org.apache.stratos.rest.endpoint.handlers.StratosAuthorizingHandler} -
>> The requested resource is not found. Please check the resource path etc..
>> {org.apache.stratos.rest.endpoint.handlers.StratosAuthorizingHandler}
>>
>> TID: [0] [SCC] [2014-05-18 00:59:31,992] ERROR
>> {org.apache.stratos.rest.endpoint.handlers.StratosAuthorizingHandler} -
>> Unexpected error occured while REST api, authorization process
>> {org.apache.stratos.rest.endpoint.handlers.StratosAuthorizingHandler}
>>
>> org.apache.cxf.interceptor.security.AccessDeniedException: Method is not
>> available : Unauthorized
>>
>> at
>> org.apache.stratos.rest.endpoint.handlers.StratosAuthorizingHandler.getTargetMethod(StratosAuthorizingHandler.java:155)
>>
>> at
>> org.apache.stratos.rest.endpoint.handlers.StratosAuthorizingHandler.handleRequest(StratosAuthorizingHandler.java:83)
>>
>> at
>> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:190)
>>
>> at
>> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:101)
>>
>> at
>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271)
>>
>> 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:755)
>>
>> at
>> org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:262)
>>
>> at
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
>>
>> at
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>>
>> at
>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
>>
>> at
>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
>>
>> at
>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
>>
>> at
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
>>
>> at
>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
>>
>> at
>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:178)
>>
>> at
>> org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve$1.invoke(CarbonTomcatValve.java:47)
>>
>> at
>> org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:56)
>>
>> at
>> org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47)
>>
>> at
>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:141)
>>
>> at
>> org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:156)
>>
>> at
>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
>>
>> at
>> org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:52)
>>
>> at
>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
>>
>> at
>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
>>
>> at
>> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
>>
>> at
>> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
>>
>> at
>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1653)
>>
>> at
>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>>
>> at
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>>
>> at java.lang.Thread.run(Thread.java:744)
>>
>>
>>
>>
>> Can I get some help on solving this?
>>
>>
>> Is the resource path wrong? or a permission problem?
>>
>>
>> I went through the code and following is the code segment responsible for
>> this.
>>
>>
>>
>>     protected Method getTargetMethod(Message message) {
>>
>>
>>
>>         BindingOperationInfo bop = 
>> message.getExchange().get(BindingOperationInfo.class);
>>
>>
>>
>>         if (bop != null) {
>>
>>
>>
>>             MethodDispatcher md = (MethodDispatcher)
>>
>>
>>
>>                     
>> message.getExchange().get(Service.class).get(MethodDispatcher.class.getName());
>>
>>
>>
>>             return md.getMethod(bop);
>>
>>
>>
>>         }
>>         Method method = (Method) 
>> message.get("org.apache.cxf.resource.method");
>>
>>
>>
>>         if (method != null) {
>>
>>
>>
>>             return method;
>>
>>
>>         }
>>         log.error("The requested resource is not found. Please check the 
>> resource path etc..");
>>
>>
>>
>>         throw new AccessDeniedException("Method is not available : 
>> Unauthorized");
>>
>>
>>
>>     }
>>
>>
>> Thanks,
>>
>> Amila.
>>
>> --
>> *Amila Maharachchi*
>> Senior Technical Lead
>> WSO2, Inc.; http://wso2.com
>>
>> Blog: http://maharachchi.blogspot.com
>> Mobile: +94719371446
>>
>>
>
>
> --
> Best Regards,
> Nirmal
>
> Nirmal Fernando.
> PPMC Member & Committer of Apache Stratos,
> Senior Software Engineer, WSO2 Inc.
>
> Blog: http://nirmalfdo.blogspot.com/
>



-- 
*Amila Maharachchi*
Senior Technical Lead
WSO2, Inc.; http://wso2.com

Blog: http://maharachchi.blogspot.com
Mobile: +94719371446

Reply via email to