1

Java ベースのアプリケーションを介してこのソースに接続したいプロバイダ MSOLAP を持つデータ ソースがあります。私は以下を使用しました:

public static void main(String[] args) throws Exception {

    // Load the driver
    Class.forName("org.olap4j.driver.xmla.XmlaOlap4jDriver");

    // Connect
    final Connection connection =
            DriverManager.getConnection(
                // This is the SQL Server service end point.
                "jdbc:xmla:Server=http://localhost:81/mondrian/xmla"

                // Tells the XMLA driver to use a SOAP request cache layer.
                // We will use an in-memory static cache.
                + ";Cache=org.olap4j.driver.xmla.cache.XmlaOlap4jNamedMemoryCache"

                // Sets the cache name to use. This allows cross-connection
                // cache sharing. Don't give the driver a cache name and it
                // disables sharing.
                + ";Cache.Name=MyNiftyConnection"

                            // Some cache performance tweaks.
                            // Look at the javadoc for details.
                            + ";Cache.Mode=LFU;Cache.Timeout=600;Cache.Size=100",

                    // XMLA is over HTTP, so BASIC authentication is used.
                    null,
                    null);

    // We are dealing with an olap connection. we must unwrap it.
    final OlapConnection olapConnection = connection.unwrap(OlapConnection.class);

    // Check if it's all groovy
    ResultSet databases = olapConnection.getMetaData().getDatabases();
    databases.first();
    System.out.println(
            olapConnection.getMetaData().getDriverName()
                    + " -> "
                    + databases.getString(1));

    // Done
    connection.close();
}

クラスOlapConnectionがコンパイルされていません。2 つの質問があります。1- このテストを作成するために maven を使用していますが、エラーが表示されません。このクラスが見つからないのはなぜですか?

2-olap4j を使用せずに MSOLAP に接続する他の方法はありますか?

4

1 に答える 1

1

これは、XMLA サービスにリモートで接続する方法ではありません。まずこのコードを読んでから、接続文字列を編集する必要があります。

SSAS では、接続文字列は次のようになります。

jdbc:xmla:Server=http://localhost/olap/msmdpump.dll;Catalog=myCatalog
于 2014-04-30T15:34:15.103 に答える