在中文环境下使用Pentaho Kettle一定要记得修改spoon的编码

如题。可能表述并不准确。最新在用Pentaho Kettle REST Client读取API数据。今天在一个参数中有中文。然后无法正确获取到数据了。把中文改成英文或者字符,就没有问题。尝试HTTP POST,在其中选用encoding UTF-8结果就正常。但是REST Client中并没有encoding选项。尝试文件导入将编码改成UTF-8然后再传给REST Client,也失败。

解决方法,在spoon.bat或者spoon.sh中添加文件编码参数。如下:

[Spoon.bat]
if "%PENTAHO_DI_JAVA_OPTIONS%"=="" set PENTAHO_DI_JAVA_OPTIONS="-Xmx512m" "-XX:MaxPermSize=256m" "-Dfile.encoding=utf8"

[Spoon.sh]
OPT="$OPT $PENTAHO_DI_JAVA_OPTIONS -Dfile.encoding=utf8 -Djava.library.path=$LIBPATH -DKETTLE_HOME=$KETTLE_HOME -DKETTLE_REPOSITORY=$KETTLE_REPOSITORY -DKETTLE_USER=$KETTLE_USER -DKETTLE_PASSWORD=$KETTLE_PASSWORD -DKETTLE_PLUGIN_PACKAGES=$KETTLE_PLUGIN_PACKAGES -DKETTLE_LOG_SIZE_LIMIT=$KETTLE_LOG_SIZE_LIMIT"

在对应文件中添加对比上述差异内容后,恢复正常。

建议在中文环境下使用Pentaho Kettle,直接在Spoon中添加该变量。避免今后此类问题发生。

发表回复

您的电子邮箱地址不会被公开。