Creating an FTP Provider and Listener for JBPM Callback Serv
mallers Feb 27, 2009 7:56 AMHi There,
Not sure i am in the correct place, but if not please let me know and I will post elsewhere.
I am extremely new to JBoss and ESB in particular, however here is my scenario and problem.
I currently have a JBpm (jPDL) process deployed on the server. I can goto the JBPM-CONSOLE, start a process and signal through the states.
What I am trying to achieve, is to create an FTP Listener, which when an XML file is placed on the FTP server, will notify the Process to start. I see we can acheieve this using JBpmCallback. With this I will use the BpmProcessor to execute the StartProcessInstanceCommand. All communication is one-way, that is, once and XML file is placed on the FTP server, all that needs to happen is that the FTP Listener will notify the OSOD Process to execute and everything is handled by the process from there. There is no repsonse message (in keeping with loose coupling also as no dependancy exists).
However, whne i configure the provider and listener in the jbpm.esc\META-INF/jboss-esb.xml, then and exception is thrown by JBoss:
12:25:10,437 INFO [NamingHelper] JNDI InitialContext properties:{}
12:25:10,656 ERROR [URLDeploymentScanner] Incomplete Deployment listing:
--- MBeans waiting for other MBeans ---
ObjectName: jboss.esb:deployment=jbpm.esb
State: FAILED
Reason: java.lang.RuntimeException: org.jboss.soa.esb.listeners.lifecycle.Mana
gedLifecycleException: Unexpected exception while instantiating managed instance
I Depend On:
jboss.jca:service=DataSourceBinding,name=JbpmDS
jboss.esb:service=JBPMDatabaseInitializer
jboss.esb:deployment=jbossesb.esb
--- MBEANS THAT ARE THE ROOT CAUSE OF THE PROBLEM ---
ObjectName: jboss.esb:deployment=jbpm.esb
State: FAILED
Reason: java.lang.RuntimeException: org.jboss.soa.esb.listeners.lifecycle.Mana
gedLifecycleException: Unexpected exception while instantiating managed instance
I Depend On:
jboss.jca:service=DataSourceBinding,name=JbpmDS
jboss.esb:service=JBPMDatabaseInitializer
jboss.esb:deployment=jbossesb.esb
I have The following Configuration in the jboss-esb.xml, if this is right or wrong i would really appreciate any inputs from anyone. If what i am trying is not possible then your inputs on that would also be appreciated.:
<?xml version="1.0"?> <jbossesb parameterReloadSecs="5" xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd"> <providers> <ftp-provider hostname="XXXXX" name="InfotechFTP"> <property name="username" value="XXXXX"/> <property name="password" value="XXXXX"/> <property name="directory" value="/OSOD/LicenceData/In"/> <property name="input-suffix" value=".xml"/> <ftp-bus busid="007"> <ftp-message-filter directory="/OSOD/LicenceData/In" error-delete="false" input-suffix=".xml" passive="false" password="bpm" post-delete="false" protocol="ftp" read-only="true"username="bpm"/> </ftp-bus> </ftp-provider> </providers> <services> <service category="JBPM" description="Service which Calls jBPM Process using FTP Trigger" invmScope="GLOBAL" invmTransacted="false" name="FTPTriggerJBPM"> <listeners> <ftp-listener busidref="007" is-gateway="true" maxThreads="2" name="InfotechFTP" poll-frequency-seconds="10"/> </listeners> <actions mep="OneWay"> <action class="org.jboss.soa.esb.services.jbpm.actions.JBpmCallback" name="callback"/> <action class="org.jboss.soa.esb.services.jbpm.actions.BpmProcessor" name="createnewlicenseaction"> <property name="command" value="StartProcessInstanceCommand"/> <property name="process-definition-name" value="OSODLicenseProcess"/> </action> </actions> </service> </services> </jbossesb>
Many Thanks,
Steve