Expand my Community achievements bar.

JObManager is not working in LiveCycle ES2

Avatar

Former Community Member

Hi,

I am using a flex form to send a mail. I want to know the status of the mail whether it is success or failure. For this I am using JobManager remote destination to get the status and response.

As soon as process submitted I am invoking the JobManager.getStatus(JobId), but it is resulting a Falut Event.

[RPC Fault faultString="DSC Invocation Resulted in Error: class flex.messaging.MessageException : Operation getStatus does not have a parameter called persistent" faultCode="Server.Processing" faultDetail="null"]

I can see in the console as "ReferenceError: Error #1056: Cannot create property LCJobId on mx.rpc.livecycle.JobId."

Anybody is having the same isssue. Please help me out.

I am placing my Flex app code.

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical"
    backgroundGradientColors="[#FFFFFF,#000000]" backgroundGradientAlphas="[1,0.5]"
    creationComplete="initApp()" >
   
    <mx:Script>
        <![CDATA[
            import flash.net.registerClassAlias;
            import mx.rpc.livecycle.JobStatus;
            import mx.rpc.livecycle.JobId;
            import mx.messaging.SubscriptionInfo;
            import mx.controls.Alert;
            import mx.messaging.channels.AMFChannel;
            import mx.messaging.ChannelSet;
            import mx.rpc.events.FaultEvent;
            import mx.rpc.events.ResultEvent;
           
            private function initApp():void
            {
               var amfChannel:AMFChannel = new AMFChannel(null,
                   "http://localhost:8080/remoting/messagebroker/amf");
                var channelSet:ChannelSet = new ChannelSet();
                channelSet.addChannel(amfChannel);
                lcesRemote.channelSet = channelSet;
                jmService.channelSet = channelSet;
            }
           
            private function onResult(event:ResultEvent):void
            {
                Alert.show(event.result.toString() );
            }
           
            private function onFault(event:FaultEvent):void
            {
                Alert.show(event.fault.toString());
            }
            
            public var ji:JobId = new JobId();
            private function onInvoke(event:ResultEvent):void
            {
                //Alert.show("Process submitted!!!" );
                ji.jobId = (event.result as JobId).jobId;
                ji.persistent = true;
                jmService.getStatus(event.result);    
            }
           
            private function sendMessage(event:MouseEvent) : void
            {
                messageXML.from = txtFrom.text;
                messageXML.to = txtTo.text;
                messageXML.subject = txtSubject.text;
                messageXML.message = txtMessage.text;
               
                var param:Object = new Object();
                param['messageData'] = messageXML;
                lcesRemote.invoke_Async(param);
               
            }
           
           
            private function getStatusHandler(event:ResultEvent):void
            {                
                var res:JobStatus = event.result as JobStatus;
                var resInt:int = res.statusCode;
              
                if(res.statusCode == JobStatus.JOB_STATUS_COMPLETED)
                {
                  jmService.getResponse(ji);
                }
            }
           
             private function getResponseHandler(event:ResultEvent):void
             {                      
               
             }   
        ]]>
    </mx:Script>
   
    <mx:XML id="messageXML">
        <data>
            <from></from>
            <to></to>
            <subject></subject>
            <message></message>
        </data>
    </mx:XML>
   
    <mx:RemoteObject id="lcesRemote" destination="MailingService/Process/EmailProcess"
            result="onResult(event)" fault="onFault(event)">
        <mx:method name="invoke_Async" result="onInvoke(event)" />
    </mx:RemoteObject>
   
    <mx:RemoteObject id="jmService" destination="JobManager" showBusyCursor="true" fault="onFault(event)">
       <mx:method name="getStatus" result="getStatusHandler(event)"/>
       <mx:method name="getResponse" result="getResponseHandler(event)"/>
       </mx:RemoteObject>
   
   
    <mx:HBox width="100%">
        <mx:Label text="From:" width="62"/>
        <mx:TextInput id="txtFrom"  width="333"/>
    </mx:HBox>
    <mx:HBox width="100%">
        <mx:Label text="To:" width="62"/>
        <mx:TextInput id="txtTo"  text="testlces@gmail.com" width="333"/>
    </mx:HBox>
    <mx:HBox width="100%">
        <mx:Label text="Subject:" width="62"/>
        <mx:TextInput id="txtSubject"  width="333"/>
    </mx:HBox>
    <mx:HBox width="100%" >
        <mx:Label text="Message:" width="62"/>
        <mx:TextArea id="txtMessage"  height="226" width="333"/>
    </mx:HBox>
    <mx:HBox width="100%" >
        <mx:Spacer width="62"/>
        <mx:Button id="btnSend" label="Send" click="sendMessage(event)" />
    </mx:HBox>
   
</mx:Application>

0 Replies