Stopping scheduled task on demand

Hello
My client application connects server every second, that's why a put an Runnable object into scheduleAtFixedRate method and it works great. However, I put all the threads into one ExecutorService object (namely exec) and sometimes need to stop connection retries (say, when I click a button). Is there any possibility to stop scheduled thread on demand? I tried exec.remove() but it just removes task from the queue and generally speaking doesn't work.
The only brutal solution which cames to my mind is to create another ExecutorService object, start that scheduled task into this ExecutorService and when needed just execute connectionexec.shutdownNow(). Are there any other solutions?
thanks
M

did you try calling cancel on the ScheduledFuture returned by the schedule method?

Similar Messages

  • XLreporter scheduled tasks stopped running

    Hi Experts,
    We are experiencing problems on XLreporter scheduled tasks.
    They worked properly with sending emails as daily routine. However for some reason they stopped running in windows Task Scheduler. We can still run the jobs thru manually in XLreporter Organizer with correct result and sucessful logs. In the mean time the service of Task Scheduler is ok for other tasks than XLreporter.
    What we can see in Event Viewer is the error message with two other information message below for each run:
    Error:
    The VB Application identified by the event source logged this Application IXExecutor: Thread ID: 5904 ,Logged: An error occured while Initializing Job
    Object variable or With block variable not set
    Info:
    The VB Application identified by the event source logged this Application IXExecutor: Thread ID: 5904 ,Logged: Before deleting mclsIFDSApp
    Info:
    The VB Application identified by the event source logged this Application IXExecutor: Thread ID: 5904 ,Logged: IXExecutorProxy - ExecuteJob: Before Exit Sub
    The SBO version 8.8 PL14 on windows server 2003 R2 SP2 ,SQL Server 2005
    Can you please advise? Many thanks Ryan
    Edited by: Ryan Fu on Jun 22, 2011 3:55 AM

    Just found this one too:
    Note 855021
    If you want scheduled report jobs in XL Reporter to be executed independently of the logon status of the user who defined the job, you must allow Microsoft Excel to be started by the scheduled job.
    1. Choose Run from the Windows Start menu and type dcomcnfg.exe. A window called Component Services appears. Choose Component Services->Computers->My Computer->DCOM Config->Microsoft Excel Application from the list.
    2. Right-click on Microsoft Excel and choose Properties. Choose the Security tab.
    3. Choose Customize under Access Permissions and choose Edit...
    4. Choose Add... and choose Users and/or User Groups that require access to Excel. Then choose OK.
    5. Repeat the procedure for Customize under Launch Permissions.
    6. Choose the Identity tab.
    Choose This User.
    Choose a user that is a member of the administrator group from the browse button and enter password.
                  This user will be the one that is given access to Microsoft Excel when executing scheduled jobs. Normally this would be the Administrator user.

  • Scheduled tasks run fine at first then stop running

    This has been an ongoing issue with every Server 2012 machine that we have running tasks (a buddy of mine has the same issue with 2008 R2).  At first the task will run fine as it should but then out of the blue it will simply stop running.  The
    last run time could be months ago and the next run time will be the normal scheduled time to run.  Last run result is always 0x0.  There is also nothing in the history tab as I assume it's been too long ago since the last time it ran.
    I can't figure out what's keeping these tasks from properly triggering and running.  Now before anyone starts going down a list of settings I should check that I might have goofed up, remember, these run fine at first and which jobs stop running properly
    are completely random.  Also, some of these tasks are Microsoft generated tasks like Windows Backup:
    This happens on MS tasks as well as my own tasks that run fine at first but then just stop.  The only fix on a per task basis that I've been able to come up with is to delete the job and create it from scratch where it will then work forever or get
    stuck.  It's completely random.
    I would greatly appreciate any help on this matter as it's driving me absolutely nuts.

    Hi,
    In order to solve the problem more efficiently I need to clarify some information.
    Are there any errors about the scheduled tasks?
    Here are some links below that could be helpful to you:
    Troubleshooting Task Scheduler
    http://technet.microsoft.com/en-us/library/cc721846.aspx
    Scheduled task not running on Windows Server 2008 but working on Windows XP
    http://social.technet.microsoft.com/Forums/windowsserver/en-US/46a867a0-8432-4b90-abe3-9a5661d1b276/scheduled-task-not-running-on-windows-server-2008-but-working-on-windows-xp
    Task Scheduler did not run on the planned time. (Windows Server 2008 SP2)
    http://social.technet.microsoft.com/Forums/windowsserver/en-US/d817535a-0210-47e9-a0fe-3c6dbf38b777/task-scheduler-did-not-run-on-the-planned-time-windows-server-2008-sp2
    scheduled task not work good on windows server 2008
    http://social.technet.microsoft.com/Forums/windowsserver/en-US/f7baffb3-be5e-4d2d-953d-160e258089e9/scheduled-task-not-work-good-on-windows-server-2008
    Use the Windows Server 2012 Essentials Log Collector
    http://technet.microsoft.com/en-us/library/jj206706.aspx
    Best Regards,
    Amy Wang

  • OIM Scheduled tasks stop running

    Hi All,
    for some reason scheduled tasks are not running even after trying to force it manually
    any ideas would be helpful
    Thanx
    Fred

    Hi ,
    check the log file, to identify why it;s stopping , any exception .
    Also, If you are using oc4j as app server then , you need to give current time+1 min. in start time to allow cronjob trigger your task.
    Regards,
    Ankit

  • Scheduled Tasks Stop Working Suddenly

    We have ColdFusion 10 installed on Windows Server 2008 with IIS 7.5.
    We are running one additional instance of Coldfusion seperate from the cfusion instance but on the same physical server. Our scheduled tasks, on this instance, had been running without any problems for quite some time now. Suddenly about 3 weeks ago after a server reboot our tasks stopped running. We have tried everything including writing the output to a log file. The only thing that gets written to this log file is "Connection Failed".
    Driling down into some of the other CF logs we are seeing that the job is getting triggered and then the job starts but it never gets completed.
    Nov 6, 2013 16:01:00 PM Information [DefaultQuartzScheduler_Worker-6] - Task DEFAULT.sampleTask triggered.
    Nov 6, 2013 16:01:00 PM Information [DefaultQuartzScheduler_Worker-6] - Starting HTTP request {URL='https://ru.ryerson.ca:443/ryecast/myTask.cfm', method='get'}
    The weird thing is that if we create the same task in the instance manager (cfusion) on the same server pointing to the same .cfm file it works fine. So we know the script does work - just not in the ColdFusion Instance we need to work in.
    Here is the successful log entry from cfusion logs.
    Nov 6, 2013 16:01:00 PM Information [DefaultQuartzScheduler_Worker-6] - Task DEFAULT.sampleTask triggered.
    Nov 6, 2013 16:01:00 PM Information [DefaultQuartzScheduler_Worker-6] - Starting HTTP request {URL='https://ru.ryerson.ca:443/ryecast/myTask.cfm', method='get'}
    Nov 6, 2013 16:01:00 PM Information [DefaultQuartzScheduler_Worker-6] - HTTP request completed  {Status Code=200 ,Time taken=124 ms}
    Has anyone else experience this kind of behaviour and if so is there a fix? I suspect some kind of corruption with the QuartzScheduler.

    Hi Marko,
    Did you ever find a solution to your problem?
    I'm having the same problem, but am running CF on redhat linux.
    I too think it's something with quartz getting itself tied in knots.
    In my http.log I can see the same as you, the task is triggered but it never completes. The strange thing I have found is that sometimes just resaving a task is enough to start it again.
    Here's the thread I started http://forums.adobe.com/message/5811970#5811970
    Cheers
    Simon

  • Scheduled Task - Stop/Start processes and .exe

    I've running some short batch files to stop a process and an .exe at just past midnight.
    and then corresponding files to start a process and an .exe at 6am
    I've set up Task Scheduler to run the Stops at 00:05 and 00:10
    and then the starts at 06:30 and 06:40
    However when I run tests, the scheduled tasks giving a status of "running" long after the the "stop" batch files have run. 
    How can i set them up so they run once, then stop running so there is no danger of conflict when the "start" tasks run in the morning. 
    I hope this is clear. 
    Thanks
    Pete

    Hi,
    Please check the in the task manager (+show tasks from all users) to see if it is indeed still running. You could refer to the thread below to troubleshoot the issue:
    TASK SCHEDULER: scheduler status is being “RUNNING” always
    http://social.technet.microsoft.com/Forums/en-US/2f6dc29c-3b8b-45f5-a2a7-53e076acc062/task-scheduler-scheduler-status-is-being-running-always
    If the issue still exists, the workaround is adding this line at the very end of the batch file:
    TASKKILL /F /IM cmd.exe
    Regards,
    Mandy
    We
    are trying to better understand customer views on social support experience, so your participation in this
    interview project would be greatly appreciated if you have time.
    Thanks for helping make community forums a great place.

  • All scheduled tasks stopped execute

    Hi guys,
    We are using the version 11.1.1.5(BP 2) of OIM. Now all scheduled task, stoped execute.
    We clicked em "Run Now" but isn't inserted a line in grid Job History, in log doesn't show no errors.
    This happen for all scheduled tasks.
    What be should the problem??
    Thanks

    Restart the Scheduler
    http://OIM_HOST:OIM_PORT/SchedulerService-web/status.
    Hope the problem should resoved after this. If not than:
    Also enable looger for Schedule task (oracle.iam.identity.scheduledtasks). You will get more information in the log file.
    http://docs.oracle.com/cd/E21764_01/doc.1111/e14308/log.htm#CEGBBGFH.
    I think you will get the some exception in diaognestic log file.
    If problem doesn't solve restart the manage server.
    Thanks
    Kuldeep

  • Stopping apps from adding Scheduled Tasks?

    I'm getting tired of opening the Task Scheduler and finding a dozen tasks added by various programs larding up my computer. Install Flash and suddenly there's a new task to check for updates. Ditto for just about every other downloaded app.
    Is there a way to prevent software from adding Scheduled Tasks on their own without completely disabling the Task Scheduler?
    It certainly seems like a nasty security hole deliberately left open by Microsoft that could be easily abused, and should be plugged in future versions of Windows. At the very least, Task Scheduler should WARN me when an app requests permission to add a
    scheduled task.
    For now, I'd be satisfied with a .Reg file to disable/enable the ability to add Scheduled Tasks that I can run when needed.
    Anyone? TIA.

    Clever idea, but sadly, doesn't work. :(
    It does work!
    I used this command from an elevated command prompt:
    cacls.exe c:\windows\system32\tasks /t /g everyone:R
    To reverse the process you would use this command:
    cacls.exe c:\windows\system32\tasks /t /g Everyone:r System:F Administrators:F
    To allow tasks in the Microsoft folder to be created or modified, use this command as the last command:
    cacls.exe c:\windows\system32\tasks\Microsoft /t /g Everyone:r System:F Administrators:F

  • Script runs exponentially slower as scheduled task

    I have a script that I've run a few times before using Citrix snapins. It runs just fine in the console, generally taking around 20 minutes. When I try to run it as a scheduled task, it never completes.
    The script is as follows:
    $time1 = get-date
    Add-PSSnapIn Citrix.Common.Commands
    Add-PSSnapin Citrix.XenApp.Commands
    $_csv = @()
    $_csv_header = """Date"",""Sessions"",""IdleSessions"",""ForcedDCSEssions"""
    $_csv += $_csv_header
    $count = 0
    $idlesessions = get-xasession -Full | where {$_.browsername -eq "IDM Search" -and $_.state -ne "Listening" -and $_.state -ne "Disconnected" -and $_.SessionName -ne "Console" -and ($_.currenttime - $_.Lastinputtime).minutes -gt 15}
    $sessions = get-xasession -Full | where {$_.browsername -eq "IDM Search" -and $_.state -ne "Listening" -and $_.state -ne "Disconnected" -and $_.SessionName -ne "Console"}
    if ($sessions.count -gt 400)
    foreach($idlesession in $idlesessions){
    stop-xasession -SessionId $idlesession.sessionid -ServerName $idlesession.servername
    $count++
    $sessioncount = $sessions.count
    $idlecount = $idlesessions.count
    $date = get-date
    $_csv += """$date"",""$sessioncount"",""$idlecount"",""$count"""
    $time2 = get-date
    $time3 = $time2 - $time1
    $duration = $time3.TotalMinutes
    $_csv += """$duration"""
    $date = get-date -format 'dd.MM.yyyy.hh.mm'
    $_csv | out-file c:\powershell\logs\ImageDC$date.csv -Encoding ASCII
    The Task Scheduler settings are as follows:
    General tab: It runs with local and domain admin privs whether the user is logged in or not
    Triggers tab: It begins at 7:55 AM every morning, repeating every 30 minutes for 12 hours (enabled is checked)
    Actions tab: Start Program  = %SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe      Add arguments = –noninteractive -nologo -noprofile -noexit C:\powershell\ScheduledIDMDisconnect.ps1      start in =  
     c:\powershell
    Conditions tab: Only two things checked are "Start the task only if the computer is on AC power" and "Stop if the computer switches to battery power" (those are the defaults, IIRC)
    Settings tab: "Allow task to be run on demand" is checked. "Stop the task if it runs longer than (4 hours)" is checked. "If the running task does not end when requested, force it to stop" is checked. "If the task is already
    running, then the following rule applies: (Run a new instance in parallel)" is at the bottom.
    Can anyone offer any insight? Thanks!
    [email protected]

    Hi,
    Why the -NonInteractive, -NoLogo, -NoProfile, and -NoExit switches? I generally only use -File to point at the script file.
    You might also need to check 'Run with highest privileges'.
    Don't retire TechNet! -
    (Don't give up yet - 13,085+ strong and growing)
    I used all those switches because that's what was "in place" as a standard where I am. I already had "run with highest privileges" checked, but switching to just -file + file location seems to have it running as intended now? I'm
    at least getting log files in the specified directory.
    Thanks!
    [email protected]

  • Scheduler Tasks in KM

    Hi,
    I created a task by following this blog:
    https://www.sdn.sap.com/sdn/weblogs.sdn?blog=/pub/wlg/1515
    It doesn't seem that my job is starting up.  Where do I go to look at a log of an execution?  Do I need to stop and restart the J2EE engine in order for the scheduler jobs to start up?  (I am on NW2004)
    My steps were:
    1. Create portal application project
    2. Create the Respository Framework 7.1.5 Schduler Task wizard
    3. Put my java code in the "run" method - I did execute the same code in a standalone project to be sure it doesn't contain bugs.
    4. Created PAR file and uploaded to portal server
    5. Configured the Scheduler task as shown in the BLOG- I was not sure if I should check off a CM System- I have tried both ways and it doesn't seem to run either way.
    Any help would be appreciated.
    Thanks.

    Hi Dana,
    You can use the standalone log-viewer to view the log files. See the documentation on sap help. http://help.sap.com/saphelp_nw04/helpdata/en/47/209779bbe64a318454b64148a0c76d/frameset.htm
    The best way would be to include some tracing and logging statements in your scheduler code.
    Create a new location in your code
    private static Location logger = Location.getLocation("mylocation");
    and put some trace statements in your code
    logger.intoT("start of method");
    But you will have to create a new location in Log Configurator in the VA and set the severity level to INFO. Then in the default.trc you can filter on your location name to get the relevant traces.
    Akhilesh

  • KM Scheduler Task is not running...

    Dear All,
    I have created a KM Scheduler Task using the NDWS Wizard. I followed prakash's blog (http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/1515). My doubt is where exactly the attributes are created? and can any one guide how to create the attributes in .cc.xml file. And how does public void run( String id, Properties properties ) it works?
    The application was successfully deployed. I am able to see my task under System Administration->System Configuration->Knowledge Management->Configuration->Content Management->Global Services->Scheduler Tasks.  but I think it is not running. Can any one give some clue on this. As i'm not finding any thing uder Kmcontent>Documents.
    Do i need to configure anything to run KM scheduler Task?
    Thanks and Regards,
    JAGAN.
    Edited by: Jagan456533 on Jan 19, 2011 11:10 AM

    Hi Jagan,
    The status "0" for your task in "Component Monitor" is fine.
    Navigate to System Administration> System Configuration>Service Configuration. You can see here Applications and Portal runtime.
    Open Applications--> and you Task. Right click on your task folder and say Administrate. Here you check whether your task has been stopped, running. Make sure its running. ( Try refresh, if its already running ).
    In you task folder, you will see "Service Folder"  under this, you will see "RFServiceWrapper", right click on it and say configure, make sure the values are like shown below:
    Name : http://sapportals.com/xmlns/cm/sch
    Value: Value1
    Also make sure in your portalapp.xml, the values are same:
    RFServiceWrapper
    service-config
    className= com.sap.netweaver.rf.wrapper.RFServiceWrapper
    startup= true
    service-profile
    Name= = http://sapportals.com/xmlns/sch
    Prof= Value1
    You see tha the same name is used "Value1" in RFServiceWrapper both in portalapp.xml and in Service Configuration.
    You can use any other name but the it should be same in both the places.
    Make all these changes, and then restart your task in Service configuration again. Any changes in portalappl.xml, restart is necessary.
    Kind Regards,
    Poornima

  • Windows Server Backup scheduled task run successfully but backup do not start (not running) on Windows Server 2012

    Hi,
    A backup job has been setup on Windows Server 2012 (Platform: Win32NT; ServicePack: ; Version: 6.2.9200.0; VersionString : Microsoft Windows NT 6.2.9200.0) via Windows Backup Software UI (Local Backup 1.0).
    It is appearing as a scheduled task "\Microsoft\Windows\Backup\Microsoft-Windows-WindowsBackup" belonging to user 'nt authority\system' in task scheduler.
    The problem is that the Backup job never start despite the scheduled task running and completing successfully (when run automatically or manually)!
    Would you be able to explain why and assist in resolving that issue?
    Here is what we know:
    When the backup is run manually via the Windows Backup Software UI, it works fine.
    When the backup is run via command line (as set in schedule task) in a cmd command prompt (as local/domain 'administrator' or as 'nt authority\system' which is possible by running command prompt via 'PsExec.exe -i -s cmd'), something like "%windir%\System32\wbadmin.exe
    start backup -templateId:{f11eb3aa-74e7-4ff4-a57b-d8d567ee3f77} -quiet", it works fine.
    If you manually run the preset scheduled task while logged in as administrator, the task run and complete successfully but the backup job does not start.
    Idem if you schedule task is run automatically at scheduled time.
    The schedule task run and complete successfully but the backup job does not start.
    It is confirmed by running the following in a command prompt as 'nt authority\system':
    schtasks /run /tn "\Microsoft\Windows\Backup\Microsoft-Windows-WindowsBackup"
    SUCCESS: Attempted to run the scheduled task "\Microsoft\Windows\Backup\Microsoft-Windows-WindowsBackup".
    Despite success result, the Backup job does not start running...
    No errors or warning appears anywhere in Event Logs (Microsoft > Windows > Backup or Task Scheduler) nor in the scheduled task History tab. The schedule task complete successfully but no Backup job is run...
    If scheduled task automatically set by Windows Backup software is duplicated (copied) and set manually it runs fine as 'administrator' and as 'nt authority\system' (subject that 'nt authority\system' is added to the 'Backup Operators' AD group).
    Here is an export of the current pre-set schedule task, is there any settings that need to be changed to make it works?
    <?xml version="1.0" encoding="UTF-16"?>
    <Task version="1.4" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
      <RegistrationInfo>
        <Author>MYDOMAIN\SERVER1</Author>
        <SecurityDescriptor>D:AR(A;OICI;GA;;;BA)(A;OICI;GR;;;BO)</SecurityDescriptor>
      </RegistrationInfo>
      <Triggers>
        <CalendarTrigger id="Trigger 1">
          <StartBoundary>2014-07-14T21:00:00</StartBoundary>
          <Enabled>true</Enabled>
          <ScheduleByDay>
            <DaysInterval>1</DaysInterval>
          </ScheduleByDay>
        </CalendarTrigger>
      </Triggers>
      <Principals>
        <Principal id="Author">
          <UserId>S-1-5-18</UserId>
          <RunLevel>HighestAvailable</RunLevel>
        </Principal>
      </Principals>
      <Settings>
        <MultipleInstancesPolicy>Parallel</MultipleInstancesPolicy>
        <DisallowStartIfOnBatteries>true</DisallowStartIfOnBatteries>
        <StopIfGoingOnBatteries>false</StopIfGoingOnBatteries>
        <AllowHardTerminate>true</AllowHardTerminate>
        <StartWhenAvailable>true</StartWhenAvailable>
        <RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
        <IdleSettings>
          <StopOnIdleEnd>false</StopOnIdleEnd>
          <RestartOnIdle>false</RestartOnIdle>
        </IdleSettings>
        <AllowStartOnDemand>true</AllowStartOnDemand>
        <Enabled>true</Enabled>
        <Hidden>false</Hidden>
        <RunOnlyIfIdle>false</RunOnlyIfIdle>
        <DisallowStartOnRemoteAppSession>false</DisallowStartOnRemoteAppSession>
        <UseUnifiedSchedulingEngine>false</UseUnifiedSchedulingEngine>
        <WakeToRun>false</WakeToRun>
        <ExecutionTimeLimit>P3D</ExecutionTimeLimit>
        <Priority>7</Priority>
      </Settings>
      <Actions Context="Author">
        <Exec>
          <Command>%windir%\System32\wbadmin.exe</Command>
          <Arguments>start backup -templateId:{f11eb3aa-74e7-4ff4-a57b-d8d567ee3f77} -quiet</Arguments>
        </Exec>
      </Actions>
    </Task>
    Thank you in advance for your feedback.

    Once again, the issue is not to run the backup manually from the command line but to have it run via the scheduled task setup by the Windows Backup software.
    By default, the schedule task is to be run as NT Authority\System, and when run under this account, the backup does not start (even though account is member of Backup Operators) and job can manually be run via elevated command prompt. This is not a normal
    behavior and constitute a major bug in Windows Server 2012.
    From my understanding the NT Authority\System account is a built-in account from Windows that should by default be part of the Administrators group (built-in) even though it does not explicitly appears like it in AD by default.
    This account shall have by default Administrators rights and Backup Operators rights (via the Administrators group) without being explicitly added to those groups (http://msdn.microsoft.com/en-gb/library/windows/desktop/ms684190%28v=vs.85%29.aspx). By design
    it is supposed to be the most powerful account which has unrestricted access to all local system resources. If that is not the case (as it seems) then this would constitute a major bug in Windows Server 2012 edition.
    As said previously and as you confirmed, currently by default NT Authority\System on Windows 2012 server cannot start backup manually via an elevated command prompt unless it is manually added to Backup Operators (or Administrators) group. But wouldn't that
    constitute a bug of Windows Server 2012?
    Our server has not yet been restarted since I added NT Authority\System account to the Administrators group explicitly manually so I cannot yet confirmed it would sort the issue. Indeed it is heavily in use so cannot easily be restarted. Will confirm when
    done.
    We also have an additional problem where after a while of last reboot, part of the Exchange ECP can no longer be properly loaded in the web browser due to compilation error (compilation is done via NT Authority\System account which seems to no longer have
    sufficient right to compile .NET code). What is strange is that it works at first and then stop working at some point... I am hopeful that adding NT Authority\System to the Administrators group would sort this issue as well but once again, that shall not be
    needed!!!
    Could a Windows Server 2012 update introduced some security policy changes or else that prevent NT Authority\System to have full power?

  • Security Violation Error while running schedule task from OIM.

    Hi All,
    I am getting this error while running a custom java schedule task from OIM:
    *Thor.API.Exceptions.tcAPIException [EJB:010160] Security Violation: User '<anonymous>' has insufficient permission to access EJB:*
    type=<ejb>,application=Xellerate,module=xlDataObjectBeans.jar,ejb=tcReconciliationoperations,method=createDeleteReconciliationEvent
    at Thor.API.Operations.tcReconciliationOperationsClient.createDeleteReconciliationEvent(UnKnown Source).
    I got this error as soon as my code start creating Delete Reconciliation Event.
    Note: I have already protected the JNDI Namespace.
    Please provide some pointers.
    Regards,
    Sunny

    Hi Rajiv,
    Check this:
    package com.centrica.iam.scheduletask;
    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileFilter;
    import java.io.FileNotFoundException;
    import java.io.FileReader;
    import java.text.SimpleDateFormat;
    import java.util.ArrayList;
    import java.util.Calendar;
    import java.util.Date;
    import java.util.HashMap;
    import java.util.Hashtable;
    import java.util.Iterator;
    import java.util.Set;
    import oracle.iam.connectors.common.ConnectorLogger;
    import com.thortech.xl.dataaccess.tcDataSet;
    import com.thortech.xl.dataaccess.tcDataSetException;
    import com.thortech.xl.dataobj.PreparedStatementUtil;
    import com.thortech.xl.orb.dataaccess.tcDataAccessException;
    import com.thortech.xl.scheduler.tasks.SchedulerBaseTask;
    import Thor.API.tcResultSet;
    import Thor.API.Exceptions.tcAPIException;
    import Thor.API.Exceptions.tcInvalidValueException;
    import Thor.API.Operations.tcLookupOperationsIntf;
    import Thor.API.Operations.tcReconciliationOperationsIntf;
    import Thor.API.Operations.tcSchedulerOperationsIntf;
    public class CustomFlatFile extends SchedulerBaseTask {
         private static tcSchedulerOperationsIntf schedulerIntf;
         private static tcLookupOperationsIntf lookupIntf;
         private static tcReconciliationOperationsIntf reconIntf;
         String sObjectName;
         String LookupName;
         String LookupName2;
         String FileDirectory;
         String FileName;
         String File;
         String delimeter;
         String isDeleteTrue;
         HashMap<String, String> attrMap = new HashMap();
         HashMap<String, String> delMap = new HashMap();
         HashMap<String, String> finalMap = new HashMap();
         ArrayList list = new ArrayList();
         public boolean isReconStopped;
         public CustomFlatFile()
              isReconStopped = false;
         public void init()
              LookupName = getAttribute("Attribute Lookup Name");
              FileDirectory = getAttribute("Directory Path");
              FileName = getAttribute("File Name");
              delimeter = getAttribute("Delimeter");
              sObjectName = getAttribute("Resource Object Name");
              isDeleteTrue = getAttribute("Is Delete Allowed");
         public void execute(){
              try {
                   System.out.println("Start Exceute");
                   //Initiate lookupIntf
                   lookupIntf = (tcLookupOperationsIntf)getUtility("Thor.API.Operations.tcLookupOperationsIntf");
                   reconIntf=(tcReconciliationOperationsIntf)getUtility("Thor.API.Operations.tcReconciliationOperationsIntf");
                   catch (tcAPIException tcapiexception){
                        tcapiexception.printStackTrace();
                        //logger.error(classname, s, tcapiexception.toString());
                        //logger.setStackTrace(tcapiexception, classname, s, tcapiexception.getMessage());
                   catch (Exception excep){
                        excep.printStackTrace();
                        //logger.error(classname, s, excep.toString());
                        //logger.setStackTrace(excep, classname, s, excep.getMessage());
                   attrMap = readLookup(LookupName);
                   System.out.println(attrMap.toString());
                   readFile();
                   if (isDeleteTrue.equalsIgnoreCase("true"))
                        performDelete();
                   System.out.println("Finish Execute");
         public void performDelete()
              System.out.println("Start Perform delete");
              int k = list.size();
              System.out.println("list size " + list.size());
              try
                   Thread.sleep(15000);
         /*     Hashtable ahashtable[] = new Hashtable[k];
              Hashtable hashtable = new Hashtable();
              for (int i=0;i<k;i++)
                   hashtable.put("User Id", list.get(i));
                   ahashtable[i] = hashtable;
                   System.out.println(list.get(i));
              Set set = reconIntf.provideDeletionDetectionData(sObjectName, ahashtable);
              System.out.println("Set--" + set.toString());
              tcResultSet tcresultset = reconIntf.getMissingAccounts(sObjectName, set);
              System.out.println("tcresultset - " + tcresultset.getRowCount());
              if (!(tcresultset.isEmpty()))
                   long l[] = reconIntf.deleteDetectedAccounts(tcresultset);
                   for (int i1=0;i1<l.length;i1++)
                        System.out.println("delete recon key " + l[i1]);
              //Get the existing list of Managed users
                   tcDataSet tcdataset = new tcDataSet();
                   tcDataSet tcdataset1 = new tcDataSet();
                   String query = "select orf.orf_fieldname,prf.prf_columnname, sdk.sdk_name from orf, sdk, pkg, tos, prf, obj " +
                             "where pkg.obj_key = obj.obj_key and pkg.pkg_key = tos.pkg_key and tos.sdk_key is not null " +
                             "and tos.sdk_key=sdk.sdk_key and tos.tos_key=prf.tos_key and prf.prf_iskey='1' and prf.orf_key=orf.orf_key " +
                             "and orf.orf_parent_orf_key is null and obj.obj_name='" + sObjectName + "'";
                   tcdataset.setQuery(getDataBase(), query);
                   tcdataset.executeQuery();
                   String FFName = tcdataset.getString("prf_columnname");
                   String FName = tcdataset.getString("sdk_name");
                   String ROFName = tcdataset.getString("orf_fieldname");
                   System.out.println("form- " + FName + " Field- " + FFName);
                   query = "select " + FFName + " from " + FName + " udtable, oiu a, ost b " +
                             "where udtable.orc_key=a.orc_key and a.ost_key=b.ost_key and b.ost_status!='Revoked'";
                   System.out.println(query);
                   tcdataset1.setQuery(getDataBase(), query);
                   tcdataset1.executeQuery();
                   int i = tcdataset1.getRowCount();
                   ArrayList list1 = new ArrayList();
                   String s1 = null;
                   System.out.println("N. of rows--" + i);
                   for (int j=0;j<i;j++)
                        tcdataset1.goToRow(j);
                        s1 = tcdataset1.getString(0);
                        System.out.println("s1---" + s1);
                        if (!(list.contains(s1)))
                             list1.add(s1);
                             System.out.println("under if--" + s1);
                   //Getting the existing list of unmanaged users
                   query = "select distinct (b.rcd_value) from rce a, rcd b, orf c, obj d where a.rce_key=b.rce_key and " +
                             "b.orf_key=c.orf_key and c.orf_fieldname='" + ROFName + "' and a.rce_status!='Event Linked' " +
                                       "and a.obj_key = d.obj_key and d.obj_name='" + sObjectName + "'";
                   tcdataset1.setQuery(getDataBase(), query);
                   tcdataset1.executeQuery();
                   i = tcdataset1.getRowCount();
                   System.out.println("No. Of Unmanaged Users " + i);
                   for (int j=0;j<i;j++)
                        tcdataset1.goToRow(j);
                        s1 = tcdataset1.getString(0);
                        System.out.println("s1---" + s1);
                        if (!(list.contains(s1)))
                             list1.add(s1);
                             System.out.println("under if--" + s1);
                   int k1 = list1.size();
                   System.out.println("list1 size--" + k1);
                   for (int j1=0;j1<k1;j1++)
                        delMap.clear();
                        delMap.put(ROFName, (String)list1.get(j1));
                        System.out.println(delMap.toString());
                        long l = reconIntf.createDeleteReconciliationEvent(sObjectName, delMap);
                        System.out.println("delete recon key--- " + l);
              catch (Exception exception)
                   exception.printStackTrace();
         public void readFile(){
              String s = "readFile()";
              //logger.setMethodStartLog(classname, s);
              HashMap map = new HashMap();
              try {
              File = getFile();
              BufferedReader reader = new BufferedReader(new FileReader(new
                        File(File)));
              String line = "";
              int k = attrMap.size();
              String value[] = new String[k];
              String Header[]= new String[k];
              if (delimeter.equalsIgnoreCase("|"))
                   delimeter = "\\" + delimeter;
                   line = reader.readLine();
                   Header = line.split(delimeter);
                   while((line = reader.readLine()) != null)
                        value = line.split(delimeter);
                        k = value.length;
                        for (int i = 0;i<k;i++){
                             finalMap.put(attrMap.get(Header), value[i]);
                        System.out.println(finalMap.toString());
                        System.out.println("Start Ignoring Event");
                        if (!(reconIntf.ignoreEvent(sObjectName, finalMap)))
                             System.out.println("Not Ignored");
                        long l1 = reconIntf.createReconciliationEvent(sObjectName, finalMap, true);
                        System.out.println("Recon Key--" + l1);
                        else
                             System.out.println("ignore event ---" + finalMap.toString());
                        list.add(finalMap.get("User Id"));
                        System.out.println(list.size() + "add--" +finalMap.get("User Id") );
                        finalMap.clear();
              catch (Exception exception)
                   exception.printStackTrace();
         public boolean stop(){
              String s = "stop()";
              //logger.setMethodStartLog(classname, s);
              //logger.info(classname, s, "Stopping Reconciliation........");
              isReconStopped = true;
              //logger.setMethodFinishLog(classname, s);
              return true;
         FileFilter fileFilter = new FileFilter()
         public boolean accept(File file)
         String sFilePath = file.getName();
         if( sFilePath.startsWith(FileName) )
         return true;
         else
         return false;
         public String getFile() throws FileNotFoundException, Exception{
              String s = "getFile()";
              //logger.setMethodStartLog(classname, s);
              String s1;
              File dir =     new File(FileDirectory);
              File[] files = dir.listFiles(fileFilter);
              if (files.length ==0)
                   throw new FileNotFoundException();
              if (files.length>1)
                   throw new Exception("Multiple Matches found for this file name");
              s1 = files[0].toString();
              //logger.setMethodFinishLog(classname, s);
              return s1;
         public HashMap readLookup(String s1){
              String s = "readLookup()";
              //logger.setMethodStartLog(classname, s);
              HashMap map = new HashMap();
              try {
              tcResultSet tc1=     lookupIntf.getLookupValues(s1);
              int i = tc1.getRowCount();
              for (int j = 0;j<i;j++){
                   tc1.goToRow(j);
                   map.put(tc1.getStringValue("Lookup Definition.Lookup Code Information.Code Key"), tc1.getStringValue("Lookup Definition.Lookup Code Information.Decode"));
              catch (tcAPIException tcapiexception){
                   tcapiexception.printStackTrace();
                   //logger.error(classname, s, tcapiexception.toString());
                   //logger.setStackTrace(tcapiexception, classname, s, tcapiexception.getMessage());
              catch (Exception excep){
                   excep.printStackTrace();
                   //logger.error(classname, s, excep.toString());
                   //logger.setStackTrace(excep, classname, s, excep.getMessage());
              return map;

  • Coldfusion 11 Update 4 scheduled task error

    My scheduled tasks stopped and on going into Administrator I got:
    The system has attempted to use an undefined value, which usually indicates a programming error, either in your code or some system code.
      Null Pointers are another name for undefined values. 
      The error occurred in scheduletasks.cfm: line 190
    -1 : Unable to display error's location in a CFML template.
    I found some posts referring to earlier versions of CF and the neo-cron.xml file. This file was blank. I replaced with the file from my development server as per the posts.
    Can anyone advise why this problem occurred (and has occurred to others)? - I cannot afford to have scheduled tasks anything less than bullet-proof
    Regards
    Richard

    Could you please update the bug with your findings. This will definitely help everyone.
    Regards,
    Anit Kumar
    Re: ColdFusion 11 update 5 

  • ColdFusion 11 Scheduled Task & IIS 7.5

    I have a scheduled task registered in ColdFusion 11 Admin console. ColdFusion 11 is hosted over IIS 7.5. The schedule task is to run 1 perticular file from sub application of the main app. After upgrading application from ColdFusion 9 to ColdFusion 11, scheduled task stopped working.
    Note that, on IIS, main App has "Anonymous Authentication - Disabled" and "Windows Authentication - Enabled" ...
    While for sub app (which is being called by scheduled task) has "Anonymous Authentication - Enabled" and "Windows Authentication - Disabled".
    Moreover, when I try to run the scheduled task manually, it shows "Authentication falure" error in log file as
    HTTP Error 401.2 - Unauthorized You are not authorized to view this page due to invalid authentication headers.
    Any help would be greatly appriciated.
    Thank you.

    I've been fighting the identical problem since upgrading from CF8 on Windows Server 2008R2 with SSL enabled.  The main CF application's folder is set for Windows Authentication  This is happening on two different test servers- one running CF10 and the other running CF11, both of which had been running CF8 tasks with no problems.  IIS settings for the subfolder with the scheduled task have only Anonymous authentication enabled (which is set to use the Application Pool identity that the Application Pool's identity is set to).  I've set the file system permissions to allow Everybody, as well as IUSR, on the .CFM in question, and have tried using both HTTP and HTTPS forms of the URL in the scheduled task settings.
    I can use the same HTTP/HTTPS URL in a browser directly (without authenticating to the server's application first) and the .CFM runs flawlessly.  The CF http.log file shows Status Code=401, and saving the scheduled task output shows "IIS 7.0 Detailed Error - 401.2 - Unauthorized".  What has changed in CF10 and CF11 if the underlying IIS server settings that worked before haven't changed? 
    Thanks,
    Myron

Maybe you are looking for

  • Interactive Reporting 11.1.2.1 Questions

    I have a few questions regarding Interactive Reporting 11.1.2.1 after being unable to find anything out researching extensively here and in multiple blogs, search engines, readme's, admin guides, etc. I have not had training in IR yet....my going to

  • Finding media files

    is there a way you can have itunes search your computer for media files automatically like media player?

  • MDRT$ Not Getting Cleaned Up

    We are having an issue where the MDRT$ tables remain in the schema after the spatial index has been dropped. I checked user_sdo_index_metadata and the MDRT$ do not exist in the table. Does anyone know if Oracle supports the manual dropping of MDRT$ t

  • Turning the optical light on

    I've seen lots of people post about the optical out light coming on accidentally, and I'm looking for a way to turn it on. I often find myself plugging headphones or audio cable into that port in the dark, and I'd like to be able to turn the optical

  • Relation between IPC & Portlet Asynchronous rendering

    Hi, Can someone explain the relation between IPC & Portlet Asynchronous rendering. In the below URL, its written " IPC is not supported when asynchronous content rendering is enabled " But, when I go through the article below, its given that with IPC