我正在尝试访问通过oozie java action配置设置的属性,但我没有得到我想要的值,想知道我是否可以获得任何帮助?
我的工作流程
...........
<action name="ref-record-load">
<java>
<configuration>
<property>
<name>oozie.launcher.mapred.child.java.opts</name>
<value>-Xmx4g -XX:MaxPermSize=256m</value>
</property>
<property>
<name>load.type</name>
<value>full</value>
</property>
</configuration>
.............
我试图通过以下方式从我的代码访问此属性
oozieConfigFile = System.getProperty("oozie.action.conf.xml");
final FileInputStream inputStream = new FileInputStream(oozieConfigFile);
final Properties oozieConfigProperties = new Properties();
oozieConfigProperties.loadFromXML(inputStream);
loadType = oozieConfigProperties.getProperty("load.type");
但是我没有看到loadType中填充了任何值。我试图访问该物业的方式有什么不对吗?
请帮忙
答案 0 :(得分:2)
xml文件在那里。但是它无法通过loadFromXML()加载。尝试使用hadoop配置类:
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.Path;
...
Configuration conf = new Configuration(false);
conf.addResource(new Path(System.getProperty("oozie.action.conf.xml")));
String loadType = conf.get("load.type")
...
它应该有用。