从BigInsights获取参数

时间:2013-12-05 09:01:28

标签: java biginsights

我开发了一个Java应用程序并将其部署到BigInsights。但我不得不在代码中给出一些参数。如何从BigInsights应用程序页面获取它们?我在参数选项卡中发布BigInsights项目时添加输入字段但是如何将它们与应用程序绑定?我找不到任何关于此的文件。

3 个答案:

答案 0 :(得分:1)

我知道这是一个老问题,但我刚刚在BigInsights上尝试过这种事情,所以这就是我迄今为止所发现的。

我创建了一个非常基本的主要方法,只记录参数。要配置BigInsights应用程序以通过参数,我执行了以下操作。

在BIApp / workflow / workflow.xml中为我的Java操作添加$ {exampleParameter} arg

workflow.xml editor showing example parameter as a Java Action arg value

在XML中看起来像这样。

<workflow-app name="wfapp" xmlns="uri:oozie:workflow:0.2">
    <start to="java-action"/>
    <action name="java-action">
        <java>
            <job-tracker>${jobTracker}</job-tracker>
            <name-node>${nameNode}</name-node>
            <main-class>com.ibm.uk.jamest.JavaAction</main-class>
            <arg>${exampleParameter}</arg>
        </java>
        <ok to="end" />
        <error to="kill" />
    </action>
    <!-- add actions here -->
    <kill name="kill">
        <message>error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
    </kill>
    <end name="end"/>
</workflow-app>

BigInsights Application Publish向导将其作为参数拾取,然后您可以根据需要进行编辑。

BigInsights Application Publish wizard showing example parameter being edited

这里结果是BIApp / application / application.xml中的结果。 (听起来这就像你做的那样。)

<application-template xmlns="http://biginsights.ibm.com/application" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <name>BIProject</name>
    <properties>
        <property isInputPath="false" isOutputPath="false" isRequired="true" label="Example parameter" name="exampleParameter" paramtype="TEXTAREA" uitype="textfield"/>
    </properties>
    <assets>
        <asset id="BIProject" type="WORKFLOW"/>
    </assets>
    <imagePath>defaultApp_L.png</imagePath>
    <categories>Sandbox</categories>
</application-template>

一旦应用程序发布,我可以在运行它时为示例参数提供一个值...它按预期传递给main方法!

BigInsights console showing how the example parameter appears when running the application

将这两个位放在一起似乎很有用:

答案 1 :(得分:0)

我到目前为止唯一注意到的选项是,在部署应用程序后,您可以选择指定&#34;参数区域&#34;的输入路径。在biginsights Web控制台中。

答案 2 :(得分:0)

您是否从主要方法检查了args?也许你在那里找到配置的参数?