2016-01-28 2 views
2

Я столкнулся с проблемой в пакетной обработке mule esb. Если я установил любую полезную нагрузку в лицо записи процесса и попытаюсь получить эту полезную нагрузку на неполном лице, то не получая эту полезную нагрузку. такая же проблема с переменной и свойством. Если я установил какое-либо свойство в фазу записи процесса и попытаюсь войти в полную фазу, всегда получаю нулевое значение. Как получить эти значения в неполной фазе? ниже по потоку ..Облицовка ошибки в пакетной обработке mule esb

<batch:job name="TestBatch" max-failed-records="-1"> 
     <batch:input> 

      <component class="com.test.RecordTest" 
      doc:name="Java" /> 
     <json:object-to-json-transformer 
      doc:name="Object to JSON" /> 
     <custom-transformer class="com.test.CustomTr" 
      doc:name="Java" /> 
     </batch:input> 
     <batch:process-records> 
      <batch:step name="Batch_Step1" accept-policy="ALL"> 
       <batch:commit size="5" doc:name="Batch Commit"> 
       <!-- Insert record in Salesforce --> 
       </batch:commit> 
      </batch:step> 
      <batch:step name="Batch_Step2" accept-policy="ONLY_FAILURES"> 
       <logger message="STEPP #[getStepExceptions()]" level="INFO" doc:name="Logger"/> 
       <set-property propertyName="error" value="STEPP #[getStepExceptions()]" doc:name="Property"/> 
       <set-payload value="#[getStepExceptions()]" doc:name="Set Payload"/> 

      </batch:step> 

     </batch:process-records> 
     <batch:on-complete> 
      <logger level="INFO" doc:name="Logger" message="--&gt; #[payload.failedRecords] --&gt; #[message.payload] "/> 
      <logger message="error--- #[message.outboundProperties['error']] " level="INFO" doc:name="Logger"/> 

     </batch:on-complete> 
    </batch:job> 

я получил нулевой в собственности регистратора

Как я могу решить эту проблему?

ответ

3

У меня появились плохие новости от вас :-). Пакетная обработка по дизайну не будет старой, какой-либо ценности, которую вы можете попытаться установить в шагах, особенно полезной.

Когда я начал работать с ним, я также ожидал иметь переменную сеанса на полной фазе в правильном состоянии, но это не так, они полностью стираются на каждом шаге.

Теперь я не думаю, что это ошибка, но это действительно особенность дизайна, которую я могу понять, даже если мне это действительно не нравится. Я решил ту же проблему, используя object store connector.

Это позволит вам получить доступ к API-хранилищу объектов мула через хороший блок конфигурации XML, таким образом вы можете хранить в переменных памяти, которые вы можете восстановить после завершения на вашем компьютере, без влияния их логики потока.

Надеюсь, что это поможет