PDA

View Full Version : Biで日本語名でファイル保存しようと するとできない



cozy56
12-22-2010, 09:57 PM
下記環境下でWebブラウザから適当なスキーマを選択して、
ピポッドテーブルをいじって、日本語名でファイル保存しようとするとできない。

XP(SP3)、MySQL5.1
BI Server3.6.0
JDK.1.6.18

文字コード関係だと思いますが、正直どこを変更すればよいのかわからないので、
わかる人、ヘルプ願います。

cozy56
12-27-2010, 02:53 AM
DB:hibernateのpro_filesテーブルのfilename, fullpathカラムの文字コードをCP932に設定して行いましたが、
pentaho.logにて下記エラーが表示されます。
(下記は"例"という名前で保存しようとしたときのエラーです)

2010-12-27 15:42:03,592 ERROR [org.pentaho.platform.engine.services.solution.SolutionEngine] 6a1e97e2-1184-11e0-85a7-6ff9ffaf57a1:SOLUTION-ENGINE:例.analysisview.xaction: SolutionEngine.ERROR_0007 - Action sequence execution failed
2010-12-27 15:42:03,592 ERROR [org.pentaho.platform.engine.services.solution.SolutionEngine] 6a1e97e2-1184-11e0-85a7-6ff9ffaf57a1:SOLUTION-ENGINE:例.analysisview.xaction: SolutionEngine.ERROR_0007 - Action sequence execution failed

shuji
12-28-2010, 01:28 AM
保存するファイルはDB:hibernateにpro_filesに管理されていますので、そちらを日本語対応すればOKなのですが、
DBを日本語対応してもブラウザによって、正しく日本語がサーバーに伝わらず、文字化けすることがあります。
Ajaxの修正が必要になってくると思われます。

英語で保存してXMLファイルの<title>に日本語を記載する、
もしくは、_ja.propertiesに記載して多言語対応する方法をとってみてはいかがでしょうか。

OSSL
12-31-2010, 08:28 AM
BI Server Community Edition 3.7 GA, WindowsXP SP3, Sun JDk 1.6で以下の設定を行いましたが、やはり同じエラーが出ました。まだどこか設定を変更しないといけないでしょうか?

レポート等を日本語ファイル名で保存するためには、Pentahoがメタデータを保存しているレポジトリ(デフォルトではHSQLに作成される、quartzとhiberanateテーブル)がlatin1になっている文字コードをUTF8に変更しないといけないようです。
しかし、MySQLでは、付属の作成SQLスクリプト(/biserver-ce/data/MySQL5/)をcharacter setをUTF8に変更して実行するとMySQLの制限でエラーが出ます。


そこで、以下の手順でUTF8設定できるPostgres 8.3に変更しました。
http://www.enterprisedb.com/products/postgres_plus_as/download.do;jsessionid=71C5B86262BB70E337ED76EB102A6D9B
からPostgres plus standard 8.3をダウンロード、解凍、インストール
localeはC、コードはUTF8
スーパーユーザー:postrgres/password
ターミナルで、\Postgres\8.3\binに移動し、
/biserver-ce/data/postgresql/ 以下に有る各スクリプトを実行
psql -U postgres < create_quartz_postgresql.sql
psql -U postgres < create_repository_postgresql.sql
psql -U postgres < create_sample_datasource_postgresql.sql

/biserver-ce/pentaho-solutions/system/applicationContext-spring-security-hibernate.propertiesを開き
jdbc.driver=org.postgresql.Driver
jdbc.url=jdbc: postgresql://localhost:5432/hibernate
jdbc.username=hibuser
jdbc.password=password
hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
に変更

/biserver-ee/tomcat/webapps/pentaho/META-INF/context.xml を開き
driverClassName ="org.postgresql.Driver"に変更、
url="jdbc: postgresql://localhost:5432/hibernate"と
url="jdbc: postgresql://localhost:5432/quartz"に変更
validationQuery="select 1"に変更

/biserver-ce/pentaho-solutions/system/hibernate/hibernate-settings.xmlを開き
<config-file>system/hibernate/postgresql.hibernate.cfg.xml</config-file>に変更

/biserver-ee/pentaho-solutions/system/quartz/quartz.properties を開き
org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate

org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.PostgreSQLDelegate
に変更

最後にjdbcドライバー
\data-integration\libext\JDBC\postgresql-8.3-603.jdbc3.jar

\biserver-ce\tomcat\lib
にコピー
再起動して確認
日本語レポート名で保存すると表示されるが、開くと
ERROR_007-Action sequence execution failed
でエラー

cozy56
01-01-2011, 04:34 AM
Shujiさん

回答、ありがとうございます。

>英語で保存してXMLファイルの<title>に日本語を記載する、
>もしくは、_ja.propertiesに記載して多言語対応する方法をとってみてはいかがでしょうか。

"_ja.propertiesに記載して多言語対応"
ですが、どうやってやるのでしょうか?
クレクレで申し訳ありませんが、教えてください。m(_ _)m


OSSLさん

自分の宣伝になりますが、今私のほうでADempiere(OSSのERP。CompiereよりForkしCompiereとDB構造はほぼ一緒。)とPentahoの連携方法を下記に掲載中です。
http://www.adempiere.com/index.php/Ja/SummaryBook

まだまだ内容は甘いですがよかった覗いてみてください。m(_ _)m

shuji
01-03-2011, 09:39 PM
cozy56 (http://forums.pentaho.com/member.php?70848-cozy56)さん

pentaho-solutions配下のindex.xmlとindex_ja.propertiesの関係のように、
ファイル名.xactionなども、ファイル名_言語コード.propertiesで多言語化できます。
index.xmlのタグには"%変数名"とし、変数名をpropertiesファイルで定義します。

cozy56
01-14-2011, 10:06 PM
亀レスです。すいません。

>英語で保存してXMLファイルの<title>に� ��本語を記載する、
この場合、文字化けを起こしました。

>もしくは、_ja.propertiesに記載して多言 語対応する方法をとってみてはいか� �でしょうか。
日本語で表示されました。
うまくいきました。ありがとうございます。

>保存するファイルはDB:hibernateにpro_file sに管理されていますので、そちらを� ��本語対応すればOKなのですが、
まずpro_filesのfilenameとfullpathの文字コードをCP932 or UTF8に変更して、
MySQLのdefault-character-setをそれに合わせるような形に変更して
日本語で保存を行うと、日本語で保存されました。

しかし、その日本語のファイルを開こうとすると、下記エラーが発生します。(pentahoログには何も表示なし)
This page cannot be accessed directly. It must be linked to from other pages

cozy56
01-14-2011, 10:37 PM
下記文言訂正します。
>>英語で保存してXMLファイルの<title>に � ��本語を記載する、
>この場合、文字化けを起こしました� �
Titleタグに<![CDATA[xxxx]]>と書くと文字化けせずに表示されました。

cozy56
01-15-2011, 12:38 AM
>しかし、その日本語のファイルを開� �うとすると、下記エラーが発生しま� ��。(pentahoログには何も表示なし)
>This page cannot be accessed directly. It must be linked to from other pages
ログにエラー表記ありあました。

biserver-ce\pentaho-solutions\system\logs\audit\PentahoAuditLog.log


2011/01/15 14:09:16 org.pentaho.platform.web.servlet.ViewAction 7E3F6E43186058BB6D7FFA93BA9CBFD9 さ.analysisview.xaction org.pentaho.platform.engine.services.solution.SolutionEngine joe instance_start 99ef574b-2065-11e0-ba0b-1357dc0a86e6 0.0
2011/01/15 14:09:16 org.pentaho.platform.web.servlet.ViewAction 99ef574b-2065-11e0-ba0b-1357dc0a86e6 さ.analysisview.xaction org.pentaho.platform.engine.services.runtime.RuntimeContext joe action_sequence_start start 0.0
2011/01/15 14:09:16 org.pentaho.platform.web.servlet.ViewAction 99ef574b-2065-11e0-ba0b-1357dc0a86e6 さ.analysisview.xaction PivotViewComponent joe component_execution_started start 0.0
2011/01/15 14:09:16 org.pentaho.platform.web.servlet.ViewAction 99ef574b-2065-11e0-ba0b-1357dc0a86e6 さ.analysisview.xaction PivotViewComponent joe component_execution_ended end 0.0
2011/01/15 14:09:16 org.pentaho.platform.web.servlet.ViewAction 99ef574b-2065-11e0-ba0b-1357dc0a86e6 さ.analysisview.xaction org.pentaho.platform.engine.services.runtime.RuntimeContext joe action_sequence_end end 0.0
2011/01/15 14:09:16 org.pentaho.platform.web.servlet.ViewAction 7E3F6E43186058BB6D7FFA93BA9CBFD9 さ.analysisview.xaction org.pentaho.platform.engine.services.solution.SolutionEngine joe instance_end 99ef574b-2065-11e0-ba0b-1357dc0a86e6 0.06199999898672104
2011/01/15 14:09:16 JUnit Test 7E3F6E43186058BB6D7FFA93BA9CBFD9 U.analysisview.xaction org.pentaho.platform.engine.services.solution.SolutionEngine joe instance_start 99fd881f-2065-11e0-ba0b-1357dc0a86e6 0.0
2011/01/15 14:09:16 JUnit Test 7E3F6E43186058BB6D7FFA93BA9CBFD9 U.analysisview.xaction org.pentaho.platform.engine.services.solution.SolutionEngine joe instance_failed 99fd881f-2065-11e0-ba0b-1357dc0a86e6 SolutionEngine.ERROR_0007 - Action sequence execution failed 0.0

というエラーです。

これを見る限り"org.pentaho.platform.web.servlet.ViewAction"が「さ.analysisview.xaction」を受け取っていますが、
"JUnit"では"U.analysisview.xaction"を受け取っているので、BIで日本語名で保存されたファイルを
開けないのはPentaho内部の問題では?

誰か日本語で保存されたファイルを開けた方、いらっしゃいますか?