Проблема
Спустя много-много часов я нашел эту ветку: Github - Mondrian issue 202
Разработчик Mondrian в этой ветке четко заявляет, что почти вся документация устарела и не имеет ничего общего с реальным сервером OLAP Mondrian 4.
Они говорят, что Mondrian 4 больше не поставляется с развертываемым файлом WAR, и схема имеет большие изменения.
Запустите Mondrian OLAP-сервер
Чтобы запустить Mondrian, я скачал этот проект maven, который запускает сервер mondrian: mondrian-xmla-spike
У меня все заработало с описанной базой данных derby Foodmart.
Вы можете либо импортировать проект как проект maven в IDE по вашему выбору (что я и сделал), либо запустить mvn через. консоль.
Используйте Mondrian в качестве поставщика XMLA
В проекте maven вы должны проверить все файлы (не многие) на жестко закодированные пути и изменить их в своей среде.
Если вы сделали это и запустили проект как приложение, сервер Mondrian должен быть доступен через. сервер причала по адресу http://localhost:8888/xmla
Вы можете подключить любой компонент, который может использовать источник данных XMLA и поддерживает сервер Mondrian OLAP! Последняя часть очень важна. Mondrian не полностью соответствует стандарту MDX. Плохое решение на стороне Penthao! Большинство OLAP-компонентов или BI-инструментов поддерживают только MS SQL Server в качестве источника данных XMLA.
Подключить Mondrian к БД PostgreSQL
Чтобы подключить существующий проект maven к базе данных PostgreSQL, мне пришлось выполнить несколько шагов:
- Обновите версию Mondrian в файле pom (xmla-spike.xml) до версии 4.x (я использовал
4.3.1.5-191
). Вы можете выбрать одну из них здесь: Версии Пентао Мондриана
Загрузите правильный драйвер JDBC (у меня это был JDBC42): Драйвер JDBC PostgreSQL и добавьте драйвер JDBC. (.jar) в библиотеки ваших проектов
Или добавьте правильный драйвер JDBC (я использовал 9.4.1209
) отсюда: PostgreSQL JDBC Driver JDBC 4.1 к вашему maven pom (xmla-spike.xml).
Измените <DataSourceInfo>
в datasource.xml на:
Provider=mondrian;Jdbc=jdbc:postgresql://localhost:5432/default?user=postgre;JdbcDrivers=org.postgresql.Driver;Catalog=/WEB-INF/Schema.xml;
- DB url:
jdbc:postgresql://localhost:5432/default?user=postgre
- =>
jdbc:postgresql://host:port/database
Создайте файл Schema.xml
и напишите простую схему, как описано здесь: Как разработать схему Mondrian 4< /а>
Пример схемы Foodmart с метамоделью 4 можно посмотреть здесь: Foodmart.xml metamodelVersion="4.0"
<Catalog name="*">
должно совпадать с именем схемы Schema.xml
Это работает для меня. Я надеюсь, что смогу помочь кому-то еще с этим. Если я забыл некоторые шаги, пожалуйста, прокомментируйте, и я добавлю недостающие шаги.
person
Spenhouet
schedule
19.07.2016