Hey Brian, I installed it under roller, and in the course of testing various options after posting the question, what I noticed is that the call for metaWebLog.getCategories works, while the call to blogger.getCategories does not work.
Also, while on the XML-RPC topic, is there a way I can create a blog using the XML-RPC interface layer. I see the APIs for operating on a blog, but I cannot find the APIs for operating on a site (to create a blog/weblog), or to configure parameters of a blog / site level using XML-RPC. Is there any other place that I should be looking for? thanks Saravanan -----Original Message----- From: Brian Levine [mailto:[email protected]] Sent: Thu 7/30/2009 5:44 AM To: [email protected] Subject: RE: XML-RPC interface Oh wait, I just realized I have roller as the root webapp. Did you select "Enable weblog client support" on the settings page? I believe that's necessary to activate the webservice. > From: [email protected] > To: [email protected] > Subject: RE: XML-RPC interface > Date: Thu, 30 Jul 2009 08:28:34 -0400 > > > > For me, this url works: > > http://localhost:8180/roller-services/xmlrpc > > /Brian > > > Subject: XML-RPC interface > > Date: Thu, 30 Jul 2009 01:05:59 -0700 > > From: [email protected] > > To: [email protected] > > > > Hi all, > > > > I have installed Apache roller 4.0.1 and Tomcat 5.x. I have a test program > > that I am trying to retrieve the categories of the roller using the XML-RPC > > interface exposed in roller. The method in the sample program is given > > below. > > > > The log file states that the WebLogRequestMapper is skipping the > > roller-services handle. I also tried with > > http://localhost:8080/roller/xmlrpc. Even that was giving the same results. > > > > Can any of you please give me some suggestions as to what I am doing wrong? > > > > Thanks > > Saravanan > > > > private Hashtable getAllCategories() > > { > > Hashtable result = null; > > try { > > XmlRpcClientConfigImpl config = new > > XmlRpcClientConfigImpl(); > > config.setServerURL(new > > URL("http://localhost:8080/roller/roller-services/xmlrpc")); > > XmlRpcClient client = new XmlRpcClient(); > > client.setConfig(config); > > > > Object[] params = new Object[]{"RishiBlog", "scoimbatore", > > "password"}; > > result = (Hashtable) > > client.execute("blogger.getCategories", params); > > } catch (Exception exception) { > > System.err.println("JavaClient: " + exception); > > } > > return result; > > } > > > > > > Log File details: > > DEBUG 2009-07-30 00:56:40,257 CharEncodingFilter:doFilter - Set request > > character encoding to UTF-8 > > DEBUG 2009-07-30 00:56:40,257 BootstrapFilter:doFilter - Entered > > /roller/roller-services/xmlrpc > > DEBUG 2009-07-30 00:56:40,257 PersistenceSessionFilter:doFilter - Entered > > /roller/roller-services/xmlrpc > > DEBUG 2009-07-30 00:56:40,257 RequestMappingFilter:doFilter - entering > > DEBUG 2009-07-30 00:56:40,257 RequestMappingFilter:doFilter - trying mapper > > org.apache.roller.weblogger.ui.rendering.WeblogRequestMapper > > DEBUG 2009-07-30 00:56:40,257 WeblogRequestMapper:handleRequest - > > evaluating [/roller/roller-services/xmlrpc] > > DEBUG 2009-07-30 00:56:40,257 WeblogRequestMapper:handleRequest - potential > > weblog handle = roller-services > > DEBUG 2009-07-30 00:56:40,257 WeblogRequestMapper:isWeblog - checking > > weblog handle roller-services > > DEBUG 2009-07-30 00:56:40,257 WeblogRequestMapper:handleRequest - SKIPPED > > roller-services > > DEBUG 2009-07-30 00:56:40,257 RequestMappingFilter:doFilter - request not > > mapped > > DEBUG 2009-07-30 00:56:40,257 XmlRpcStreamServer:execute - execute: -> > > ERROR 2009-07-30 00:56:40,273 XmlRpcStreamServer:execute - execute: Error > > while performing request > > org.apache.xmlrpc.server.XmlRpcNoSuchHandlerException: No such handler: > > blogger.getCategories > > at > > org.apache.xmlrpc.server.AbstractReflectiveHandlerMapping.getHandler(AbstractReflectiveHandlerMapping.java:195) > > at > > org.apache.xmlrpc.server.XmlRpcServerWorker.execute(XmlRpcServerWorker.java:42) > > at org.apache.xmlrpc.server.XmlRpcServer.execute(XmlRpcServer.java:83) > > at > > org.apache.xmlrpc.server.XmlRpcStreamServer.execute(XmlRpcStreamServer.java:182) > > at > > org.apache.xmlrpc.webserver.XmlRpcServletServer.execute(XmlRpcServletServer.java:103) > > at > > org.apache.xmlrpc.webserver.XmlRpcServlet.doPost(XmlRpcServlet.java:120) > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > > at > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) > > at > > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > > org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:413) > > at > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > > org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:99) > > at > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > > org.apache.roller.weblogger.ui.rendering.filters.RequestMappingFilter.doFilter(RequestMappingFilter.java:140) > > at > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > > org.apache.roller.weblogger.ui.core.filters.InitFilter.doFilter(InitFilter.java:71) > > at > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > > org.apache.roller.weblogger.ui.core.filters.PersistenceSessionFilter.doFilter(PersistenceSessionFilter.java:60) > > at > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > > org.apache.roller.weblogger.ui.core.filters.BootstrapFilter.doFilter(BootstrapFilter.java:65) > > at > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > > org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:264) > > at > > org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107) > > at > > org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72) > > at > > org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) > > at > > org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110) > > at > > org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) > > at > > org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) > > at > > org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) > > at > > org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81) > > at > > org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) > > at > > org.acegisecurity.securechannel.ChannelProcessingFilter.doFilter(ChannelProcessingFilter.java:138) > > at > > org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) > > at > > org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:135) > > at > > org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) > > at > > org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:217) > > at > > org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) > > at > > org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:229) > > at > > org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274) > > at > > org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:148) > > at > > org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98) > > at > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > > org.apache.roller.weblogger.ui.core.filters.SchemeEnforcementFilter.doFilter(SchemeEnforcementFilter.java:121) > > at > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > > org.apache.roller.weblogger.ui.core.filters.CharEncodingFilter.doFilter(CharEncodingFilter.java:77) > > at > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > > at > > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > > at > > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) > > at > > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) > > at > > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) > > at > > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) > > at > > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) > > at > > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) > > at > > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849) > > at > > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) > > at > > org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454) > > at java.lang.Thread.run(Unknown Source) > > DEBUG 2009-07-30 00:56:40,273 XmlRpcStreamServer:execute - execute: <- > > DEBUG 2009-07-30 00:56:40,273 RequestMappingFilter:doFilter - exiting > > DEBUG 2009-07-30 00:56:40,273 PersistenceSessionFilter:doFilter - Releasing > > Roller Session > > DEBUG 2009-07-30 00:56:40,273 WebloggerConfig:getProperty - Fetching > > property [planet.aggregator.enabled=false] > > DEBUG 2009-07-30 00:56:40,273 PersistenceSessionFilter:doFilter - Exiting > > /roller/roller-services/xmlrpc > > DEBUG 2009-07-30 00:56:40,273 BootstrapFilter:doFilter - Exiting > > /roller/roller-services/xmlrpc > > > > > > > > > > > > > > _________________________________________________________________ > Windows LiveT HotmailĀ®: Celebrate the moment with your favorite sports pics. > Check it out. > http://www.windowslive.com/Online/Hotmail/Campaign/QuickAdd?ocid=TXT_TAGLM_WL_QA_HM_sports_photos_072009&cat=sports _________________________________________________________________ Windows LiveT SkyDriveT: Store, access, and share your photos. See how. http://windowslive.com/Online/SkyDrive?ocid=TXT_TAGLM_WL_CS_SD_photos_072009 Checked by AVG - www.avg.com Version: 8.5.392 / Virus Database: 270.13.16/2240 - Release Date: 07/29/09 18:07:00
