討論區: 幫助論壇 (Thread #11146)

ROLAPレポートでpublic以外のスキーマが使えない? (2006-05-19 18:49 by namuba #22036)

ReportDesignerの「ROLAPレポートの作成」でpublic以下のス
キーマ名を使用していると「サンプル確認 4/4」で
「サンプル実行」を押すとJavascriptのエラーが表示され、
ログを確認すると下記の例外が発生していました。

[ERROR]1713609:openolap.viewer.controller.Controller:
Controller において、Exceptionがcatchされました。
org.postgresql.util.PSQLException: ERROR: relation "fact_tbl" does not exist
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1512)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1297)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:188)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:437)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:339)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:238)
at org.apache.tomcat.dbcp.dbcp.DelegatingStatement.executeQuery(DelegatingStatement.java:205)
at openolap.viewer.dao.PostgresRReportDAO.getRReportXML(PostgresRReportDAO.java:102)
at openolap.viewer.controller.GetResultXML.execute(GetResultXML.java:33)
at openolap.viewer.controller.Controller.processRequest(Controller.java:116)
at openolap.viewer.controller.Controller.doGet(Controller.java:154)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at openolap.viewer.filter.LoggingSessionFilter.doFilter(LoggingSessionFilter.java:80)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at openolap.viewer.filter.LoggingRequestFilter.doFilter(LoggingRequestFilter.java:86)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:831)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:639)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1203)
at java.lang.Thread.run(Unknown Source)


試しに「レポート設定(2) 3/4」でSQLを表示し、「カ
スタマイズ」でテーブル名の頭にスキーマ名を付けてみる
と正しく表示できました。
これから判断するに、public以外のスキーマ名では使えない
のでしょうか?ただ、MOLAPレポートでは問題なく動作し
ているのですが。。。
それとも私がどこか設定を間違っているのでしょうか?

OpenOLAPのバージョンはV2.1.0です。

なにかご存知の方いらしたら教えてください。
よろしくお願いします。

RE: ROLAPレポートでpublic以外のスキーマが使えない? (2006-05-24 13:40 by hmori #22297)

詳細まで確認していませんが、バージョン2.0.0からのバグのようです。

https://sourceforge.jp/tracker/index.php?func=detail&aid=8287&group_id=992&atid=3794
回覆: #22036

RE: ROLAPレポートでpublic以外のスキーマが使えない? (2006-05-24 15:08 by namuba #22302)

hmoriさま
ありがとうございます。

SQL文を生成するときにテーブル名の頭にスキーマ名を付けてあげるか、
DBコネクションを生成する前にセッション変数『searchPathName』をスキーマ名に置き換えてあげるかすればよさそうなのですが、けっこう大掛かりになりそうで。。。

とりあえずあきらめてpublicスキーマで作り直します。
回覆: #22036