So far this is what i've got with JBoss 6. The important line is : net.sf.jasperreports.engine.util.JRProperties.setProperty("net.sf.jasperreports.query.executer." + "factory.xmla-mdx", "net.sf.jasperreports.olap.xmla.JRXmlaQueryExecuterFactory"); With JBoss 6, i have this error : net.sf.jasperreports.engine.JRRuntimeException: javax.xml.soap.SOAPException: Unable to create SOAP Factory: org.jboss.ws.core.soap.SOAPFactoryImpl cannot be cast to javax.xml.soap.SOAPFactory net.sf.jasperreports.olap.xmla.JRXmlaQueryExecuter.createDatasource(JRXmlaQueryExecuter.java:119) net.sf.jasperreports.engine.fill.JRFillDataset.createQueryDatasource(JRFillDataset.java:685) net.sf.jasperreports.engine.fill.JRFillDataset.initDatasource(JRFillDataset.java:605) net.sf.jasperreports.engine.fill.JRBaseFiller.setParameters(JRBaseFiller.java:1235) net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:865) net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:814) net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:63) net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:421) net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:251) servlets.ApriaServlet.service(ApriaServlet.java:131) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) When i check the source code of the JRProperties class, i see that there is no property defined for XMLA. So i am wondering if the following line makes any sense : parameterMap.put(JRXmlaQueryExecuterFactory.QUERY_EXECUTER_FACTORY_PREFIX, "xmla-mdx"); Has anyone been able to successfully connect to a Microsoft SQL server 2008 Analysis Services database ? Thanks for helping. Code: Class.forName("org.olap4j.driver.xmla.XmlaOlap4jDriver"); Connection connection = DriverManager.getConnection( "jdbc:xmla:Server=http://localhost/olap/msmdpump.dll;" + "Catalog=Adventure Works DW 2008 SE"); HashMap parameterMap = new HashMap(); parameterMap.put(JRXmlaQueryExecuterFactory.QUERY_EXECUTER_FACTORY_PREFIX, "xmla-mdx"); parameterMap.put(JRXmlaQueryExecuterFactory.PARAMETER_XMLA_URL, "http://localhost/olap/msmdpump.dll"); parameterMap.put(JRXmlaQueryExecuterFactory.PARAMETER_XMLA_DATASOURCE, "W2K8SQLVS"); parameterMap.put(JRXmlaQueryExecuterFactory.PARAMETER_XMLA_CATALOG, "Adventure Works DW 2008 SE"); String reportFileName = context.getRealPath("/reports/report1.jasper"); net.sf.jasperreports.engine.util.JRProperties.setProperty("net.sf.jasperreports.query.executer." + "factory.xmla-mdx", "net.sf.jasperreports.olap.xmla.JRXmlaQueryExecuterFactory"); //jasperPrint = JasperFillManager.fillReport(reportFileName, parameterMap); jasperPrint = JasperFillManager.fillReport(reportFileName, parameterMap, connection); connection.close();