0

この質問は、 「屋外アクションステータスを取得する方法」の回答で見つかりました。

インバウンド、アウトバウンド、および更新ルールタイプに対してトリガーされるワンアクションエグゼキュータクラスがあります。Tahir Malikは、アクション(#2)にパラメーターを追加できると言いました。どうすればよいですか?実行時にアクションエグゼキュータのルールタイプを取得する方法が見つかりませんでした。

PSルールとアクションをブートストラップ経由で追加してくれます。

よろしく、ユージーン

====================================

アップデート:

<rule:rule view:childName="rule:sampleRule">
...
<view:properties>
  <rule:ruleType>
    <view:values>
      <view:value>inbound</view:value>
      <view:value>update</view:value>
      <view:value>outbound</view:value>
    </view:values>
  </rule:ruleType>
  ...
</view:properties>
<view:associations>
  <rule:action>
    <act:compositeaction view:childName="rule:action">
      ...
      <view:associations>
        <act:actions>
          <act:action view:childName="act:actions">
            <view:properties>
              ... 
              <act:definitionName>myActionBean</act:definitionName>
              <act:executionActionStatus>New</act:executionActionStatus>
            </view:properties>
            ...
          </act:action>
        </act:actions>
        <act:conditions>
          ... // There is condition to check mime type of a node
        </act:conditions>
      </view:associations>
    </act:compositeaction>
  </rule:action>
</view:associations>

============================================

Update2:

<view:reference view:pathref="rule:ruleFolder">
  <view:associations>
    <cm:contains>
      <rule:rule view:childName="rule:inboundRule">
        ...
        <view:properties>
          <rule:ruleType>
            <view:values>
              <view:value>inbound</view:value>
            </view:values>
          </rule:ruleType>
          ...
        </view:properties>
        <view:associations>
          <rule:action>
            <act:compositeaction view:childName="rule:action">
              ...
              <view:properties>
                ...
                <act:definitionName>myActionBean</act:definitionName>
                <act:executionActionStatus>Completed</act:executionActionStatus>
              </view:properties>
              <view:associations>
                <act:actions>
                  <act:action view:childName="act:actions">
                    <view:properties>
                      ...
                    </view:properties>
                    <view:associations>
                      <act:parameters>
                        <act:actionparameter view:childName="act:parameters">
                          <view:properties>
                            <act:parameterName>ruleType</act:parameterName>
                            <act:parameterValue>
                              <view:value view:datatype="d:text">inbound</view:value>
                            </act:parameterValue>
                          </view:properties>
                        </act:actionparameter>
                      </act:parameters>
                    </view:associations>
                  </act:action>
                </act:actions>
                <act:conditions>
                  <act:compositeactioncondition view:childName="act:conditions">
                    <view:properties>
                      <act:definitionName>composite-condition</act:definitionName>
                      <act:or>
                        <view:value view:datatype="d:boolean">true</view:value>
                      </act:or>
                      <act:invert>false</act:invert>
                    </view:properties>
                    <view:associations>
                      <act:compositeconditions>
                        <act:actioncondition view:childName="act:compositeconditions">
                          <view:properties>
                            <act:definitionName>compare-mime-type</act:definitionName>
                            <act:invert>false</act:invert>
                          </view:properties>
                          <view:associations>
                            <act:parameters>
                              <act:actionparameter view:childName="act:parameters">
                                <view:properties>
                                  <act:parameterName>value</act:parameterName>
                                  <act:parameterValue>
                                    <view:value view:datatype="cmis:id">my-first-mimeType</view:value>
                                  </act:parameterValue>
                                </view:properties>
                              </act:actionparameter>
                            </act:parameters>
                          </view:associations>
                        </act:actioncondition>
                        <act:actioncondition view:childName="act:compositeconditions">
                          <view:properties>
                            <act:definitionName>compare-mime-type</act:definitionName>
                            <act:invert>false</act:invert>
                          </view:properties>
                          <view:associations>
                            <act:parameters>
                              <act:actionparameter view:childName="act:parameters">
                                <view:properties>
                                  <act:parameterName>value</act:parameterName>
                                  <act:parameterValue>
                                    <view:value view:datatype="cmis:id">my-second-mimeType</view:value>
                                  </act:parameterValue>
                                </view:properties>
                              </act:actionparameter>
                            </act:parameters>
                          </view:associations>
                        </act:actioncondition>
                      </act:compositeconditions>
                      <act:parameters>
                        <act:actionparameter view:childName="act:parameters">
                          <view:properties>
                            <act:parameterName>orconditions</act:parameterName>
                            <act:parameterValue>
                              <view:value view:datatype="d:boolean">true</view:value>
                            </act:parameterValue>
                          </view:properties>
                        </act:actionparameter>
                      </act:parameters>
                    </view:associations>
                  </act:compositeactioncondition>
                </act:conditions>
              </view:associations>
            </act:compositeaction>
          </rule:action>
        </view:associations>
      </rule:rule>
      ...
    </cm:contains>
  </view:associations>
</view:reference>
4

1 に答える 1

0

私はあなたの混乱を理解するかもしれません。まず、カスタム Java Action を変更する必要があります。

次の行を追加します。

protected void executeImpl(Action action, NodeRef actionedUponNodeRef) {

String status= (String) action.getParameterValue("status");

次に、アクションをトリガーする JavaScript ファイルを作成する必要があります。

var custom = actions.create("myActionBean");    
custom.parameters.status = "My New Status";
custom.execute(document);

最後に、この JavaScript をトリガーするルールを構成する必要があります。

おそらく、ブートストラップを介してパラメーターを設定することもできますが、ブートストラップを介した制御が少ないことが問題です。また、JavaScript を使用すると、実行時に変更できます (新しいリリース)。

ブートストラップでパラメーターを送信する場合は、次のブートストラップ ファイルを参照してください。

/alfresco/bootstrap/transferTargetRule.xml

于 2013-02-19T10:45:07.340 に答える