Ho una classe java che crea un database MongoDB pulito con collezioni seed. Identifica automaticamente se il database è mancante e lo crea. Vorrei eseguire questo quando avvio MuleEsb. In questo modo non ho bisogno di ricordarmi di invocarlo prima di iniziare il mulo. Speravo di metterlo dentro un flusso ed eseguire quel flusso una volta, automaticamente quando il mulo si avvia.Come eseguire un flusso una volta, automaticamente all'avvio del mulo?
Esiste un modo per eseguire questa operazione una volta sola all'avvio del mulo?
--- --- Aggiornamento
Come per la conversazione qui sotto ho aggiunto il seguente al mio config mulo e il flusso si attiva automaticamente.
<quartz:connector name="Quartz" validateConnections="true"/>
<flow name="testService1">
<quartz:inbound-endpoint name="runOnce" repeatCount="0" repeatInterval="1" jobName="job1" connector-ref="Quartz">
<quartz:event-generator-job>
<quartz:payload>foo</quartz:payload>
</quartz:event-generator-job>
</quartz:inbound-endpoint>
<logger message="INBOUND HEADERS = #[headers:inbound:*]" level="WARN"/>
</flow>
Nizza risposta! Grazie. Se creo un endpoint inbound quarzo, non è necessario specificare un endpoint in uscita? – TERACytE
No, non lo farai, un singolo endpoint in quarzo in entrata nel tuo flusso lo farà. –
Poiché utilizzo la v3.2.1, il costruttore DefaultMuleMessage() non ha un'opzione FlowConstruct. Inoltre, penso che la soluzione al quarzo sia un po 'più pulita dato che sembra che posso mettere il quarzo: endpoint in entrata all'interno del flusso che voglio eseguire automaticamente. Non ho familiarità con l'esecuzione di un flusso attraverso il quarzo però. Ci sono esempi di questo? – TERACytE