level 1
奥巴马的奥巴巴
楼主
用了kettle7写了几个ktr和job文件,最后的步骤都是输入到MongoDB output!
奇怪的事就是我用kettle直接运行ktr和job文件,能输入到mongoDB中,用window命令行 Pan.bat /file D:\***.ktr 也能输入到mongoDB中。
这是用kettle运出的结果:

这是windows命令行的结果:

两个的mongoDB输出都相同,是吧,只有读(R),没有写(W)!mongoDB能看到执行后的结果!
奇怪的就是用java调ktr文件同样也有输出信息:

而在mongoDB 一直看不到结果,什么都没有!真的不知道这是为什么,我用的是kettle7的版本,我用java调输出为Excel的ktr文件能够输出,mongo就不行!!有大神帮忙吗!!
代码就这样,最简单的调用:
import org.pentaho.di.core.KettleEnvironment;
import org.pentaho.di.core.util.EnvUtil;
import org.pentaho.di.trans.Trans;
import org.pentaho.di.trans.TransMeta;
public class liuweitrans {
public static void main(String[] args) {
Trans trans = null;
try {
// 初始化
String fName = "E:\\数据资料\\java.ktr";
// 转换元对象
KettleEnvironment.init();// 初始化
EnvUtil.environmentInit();
TransMeta transMeta = new TransMeta(fName);
//transMeta.setName();
System.out.println(fName);
// 转换
trans = new Trans(transMeta);
// 执行转换
trans.execute(null);
// 等待转换执行结束
trans.waitUntilFinished();
// 抛出异常
if (trans.getErrors() > 0) {
throw new Exception(
"There are errors during transformation exception!(传输过程中发生异常)");
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
这是kettle里mongoDB里的配置

求帮忙找找问题啊!!!
2016年11月29日 09点11分
1
奇怪的事就是我用kettle直接运行ktr和job文件,能输入到mongoDB中,用window命令行 Pan.bat /file D:\***.ktr 也能输入到mongoDB中。
这是用kettle运出的结果:

这是windows命令行的结果:
两个的mongoDB输出都相同,是吧,只有读(R),没有写(W)!mongoDB能看到执行后的结果!奇怪的就是用java调ktr文件同样也有输出信息:

而在mongoDB 一直看不到结果,什么都没有!真的不知道这是为什么,我用的是kettle7的版本,我用java调输出为Excel的ktr文件能够输出,mongo就不行!!有大神帮忙吗!!代码就这样,最简单的调用:
import org.pentaho.di.core.KettleEnvironment;
import org.pentaho.di.core.util.EnvUtil;
import org.pentaho.di.trans.Trans;
import org.pentaho.di.trans.TransMeta;
public class liuweitrans {
public static void main(String[] args) {
Trans trans = null;
try {
// 初始化
String fName = "E:\\数据资料\\java.ktr";
// 转换元对象
KettleEnvironment.init();// 初始化
EnvUtil.environmentInit();
TransMeta transMeta = new TransMeta(fName);
//transMeta.setName();
System.out.println(fName);
// 转换
trans = new Trans(transMeta);
// 执行转换
trans.execute(null);
// 等待转换执行结束
trans.waitUntilFinished();
// 抛出异常
if (trans.getErrors() > 0) {
throw new Exception(
"There are errors during transformation exception!(传输过程中发生异常)");
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
这是kettle里mongoDB里的配置

求帮忙找找问题啊!!!