To catch exception from a batch file

Hi,
I am running a batch file using java,the batch file is used for running SQL Loader.It is working OK,but I am unable to catch any exception or sucess message.Can anyone help?
regards,
Anshuman

Have your Java main() catch Throwable and then use System.exit(an errror code); inside the catch. Your batch file can then examine the process return code.

Similar Messages

  • Retrieving process id from a batch file

    Hi friends,
    I am having a problem to retrieve the process id from a batch file. I will give the code which I have written and if anyone can help me it will be grateful. I am having time pressure. Here when I call
    Process p = rt.exec("checkExec.bat");
    the process is getting created. What I need is "I have to get the process id inside the batch file and then I have to store that process id to a file. My problem is "HOW CAN I GET HOLD OF PROCESS ID". Please give some guidance.
    !!!!THANKS IN ADVANCE !!!
    PROCESSTEST:
    public class ProcessTest {
         * @param args
         public static void main(String[] args) throws IOException {
              Runtime rt = Runtime.getRuntime();
              try {
                   Process p = rt.exec("checkExec.bat");
              } catch (IOException e) {
                        e.printStackTrace();
    CHECKEXEC.BAT
    cd bin
    java duo.CalledProcess
    CALLEDPROCESS
    public class CalledProcess {
         * @param args
         public static void main(String[] args) {
              try {
                   Runtime rt = Runtime.getRuntime();
                   synchronized (rt) {
                        while(true){
                             rt.exec("notepad");
                             long sec = 100000;
                             rt.wait(sec);
              } catch (InterruptedException e) {
                   // TODO Auto-generated catch block
                   e.printStackTrace();
              } catch (IOException e) {
                   // TODO Auto-generated catch block
                   e.printStackTrace();
    }

    problem is "HOW CAN I GET HOLD OF PROCESS ID".You can take it from the Operating System using JNI.

  • How to execute a  .sql file from a batch file

    Hi all
    I've to take backup of a database weekly twice on every wednesday & Friday @ 5pm IST. I've written a hot backup script, which works every well.
    now i want to automate the script. ie i want this script to run on wednesday & friday @ 5pm without any human interfearance ie with out actually any1 executing this script.
    i created a batch file prod.bak with the following lines
    @echo off
    set oracle_sid=testdb
    set oracle_home=d:\oracle\ora92
    sqlplus /nolog
    connect sys as sysdba/oracletest@testdb
    this batch file when eexecuted connects me to sql prompt.
    Now i want to execute my backup script bkp.sql automatically when it is connected to sql prompt.
    (i tried with these lines in the above batch file...
    call bkp.sql---it just opens the bkp.sql file in notepad & displays the script
    start bkp.sql---same as call
    connect / as sysdba/pwd@[email protected] --- does not work simply remains a the sql prompt.
    At 17:00 /Every:w,f "d:\bkp.sql"---does not work simply remains at the sql promt.)
    Can any1 let me know what should i write in the batch file that will execute the bkp.sql file automatically after it gets connected to sql prompt. M using oracle 9i.
    I'll manage he time through windows utility of scheduling task.. Let me know how to execute the .sql file from a batch file.
    Thanks
    Tripti

    Try
    sqlplus "sys/oracletest as sysdba" @bpk.sql
    Working locally, and having set the ORACLE_SID, you don't need to specify the SqlNet alias (@testdb).
    Remember to put an exit at the end of the bpk.sql script.

  • How to run 11g Form from a batch file (.bat) !

    Hi,
    Previously, I run my Form 6i from a batch file (with Windows Schedular Tasks) as below;
    E:\orant\bin\ifrun60.exe e:\lock.fmx
    This form lock some items on a certain date (with the help of Windows Schedular Task).
    How can this possible in Forms 11g ?
    Kindly guide !
    Regards.
    Vick.

    Well are you talking about doing that on a free standing/developer machine or are you thinking of on the
    server? In any case forms6i was a native application and forms11 is a web application that requires weblogic, even on the developer machine.
    I think you will have to start from square one describing what you are trying to do.
    Soapbox: I really think if forms "went back" to having a native deployment option it would be highly treasured. Here is a case where we are still running 6i for that reason. We have a situation where they interview clients at another location using a laptop. The laptop form brings up successive question screens, which questions are asked of the clients and their responses recorded. If the interview data is lost we cannot bring these people back and do it over. In the meantime the wifi connecting back to the database server can go bad. It can get over-loaded, it can just crap out. The firewalls on the way can decide rightly or wrongly to time the connection out. There's a bunch of ways the connection can get dropped. So what we do is that form saves a copy of the data to the disk in a file before it tries to submit it to the database, which could fail. So we have a backup. Can't easily do that in 11. I have yet to have gotten webutil to work. It's a mobile option that is becoming popular and forms should do it, have the ability for the form to run independently on the client including an ability to save data and of course if you saved it, people will want to be able to sync it back to the database when the client is reconnected.

  • Installing Oracle 11gR2 client from a batch file and it returns before done

    Hello,
    While installing Oracle 11gR2 client on XP and 7 from a batch file. When it launches the OUI from the batch file, it returns to the batch file before the installer finishes. So, there is no way for my script to know when the installer is done, or to glean a return code to test for success. This is particularly annoying...
    I've also used the "call" command to force my batch file to wait, to no avail. Anyone have any clues about this one?
    Thanks in advance!
    --Robert                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

    Srini,
    Awesome! Worked like a charm.
    Many thanks!
    --Robert                                                                                                                                                                                               

  • Input to an executable jar from a batch file

    Hi, I have created an executable jar program to receive the input during runtime from a batch file. I have tried to run the program by passing arguments at runtime but the code doesn't seem to execute. Can anyone help me out to pass an argument to the java program using the batch file. The flow of my project is -> The batch file triggers the executable jar file (I am able to execute till this !) -> The input to the executable jar file should be fetched from the arguments given in the batch file which will be taken as the input for the java program.

    My java code prompts the user to enter the data but the batch file when executed executes the code but does not wait for the user input. This is the message my batch file displays when executed.
    C:\Users\Administrator\Downloads\BatchTool>java -Xms512M -Xmx512M -jar Program.jar -o true
    Enter custom directory :
    C:\Users\Administrator\Downloads\BatchTool>PAUSE
    Press any key to continue . . .
    If I press any key the program exits
    Is there an option to give the input via batch code ? My doubt is not in the java code. Its the batch file which triggers the code and i want the batch command which will trigger the input to the code being executed.
    Is there a way to give the input to this batch file ?
    C:\Users\Administrator\Downloads\BatchTool>java -Xms512M -Xmx512M -jar Program.jar -o true * Can i replace this code with an input for the java code ? *
    Edited by: Raja Pandian C on Dec 21, 2012 2:26 PM
    Edited by: Raja Pandian C on Dec 21, 2012 2:27 PM

  • Using 10g SQL Plus from a batch file

    I installed the Oracle Database 10g Express Client and configured my ODBC and tnsnames.ora settings, and I think I have it all right, because when I open the SQL Command Line I can connect to the database just fine using:
    connect <username>/<password>@<database>
    However, when I try to log in through a non-SQL command line or batch file using the syntax:
    sqlplus <username>/<password>@<database>
    I get the error "ORA-12154: TNS:could not resolve the connect identifier specified." That syntax used to work for me with 9.2. Does the functionality still exist in 10.2?
    Update #1:
    The sqlplus login works from a normal command widow if I first CD C:\XEClient\bin. I still can't get it to work from a batch file, even when I specify the path. Does this mean the batch file command can't find my tnsnames.ora? If so, what environment variable do I need to set? I already have the client directory in the Path and ORACLE_HOME variables.
    Update #2:
    I started randomly trying every Oracle environment variable I could find a reference to, and found that setting TNS_ADMIN to the C:\XEClient\bin directory worked.
    I don't need any responses to this post, so it can be deleted by an admin.
    Edited by: user11241849 on Jan 13, 2010 12:05 PM

    Hi Toni,
    It is my first post here and I though telepathy already operated here :)
    it is Oracle 9 I am talking about.
    actually, I have 2 batch files
    File 1, lets say the file name is batch1.bat and the contents are
    sqlldr user/pwd@tnsname control='Control.ctl'  data='data.txt'
    File 2, batch2.bat and the contents are
    Batch1.bat
    Sqlplus user/pwd@tnsname @callproc.sql
    Now if I run Batch2.bat, then only the first line to be executed which calling the batch1.bat , the second line (sqlplus) never executed!
    Best Regards,
    Yousef
    Edited by: yousef_bayyari on 10-Nov-2009 06:25

  • Problem in connecting to sqlplus from windows batch file (DOS)

    Hi All,
    We have a new 10g Oracle database installed on windows server. I am trying to write a windows batch file to
    1) Connect to SQLPLUS
    2) Execute a script
    3) Disconnect from SQLPLUS.
    Example File Name:- execsql.bat
    SET ORACLE_SID=CAUT
    SET SCHEMA_IN=%1
    SET PASS=DEV
    SET script=%2
    sqlplus %SCHEMA_IN%/%PASS%@%ORACLE_SID% @%script%
    if %errorlevel% NEQ 0 echo ERROR: %ERRORLEVEL% else echo OK
    Now if i run this bat file like :- execsql.bat DEV script1.sql
    DEV= schema name,
    script1.sql = this file contains select * from dual;
    The code runs fine, but if i change dual to dual1 the sql error's out but not able to catch the error in the batch file.
    Reason why i would like to catch the error is this batch file would be scheduled through Autosys job scheduler and for autosys any exit code >0 is an error. Please help me in rewriting this batch script.
    Thanks
    Sam.

    Hello,
    What if you run this in SQL*Plus before you run the SELECT:
    whenever sqlerror exit failure

  • Execute java class from a batch file called from runtime.exec

    Hi.
    I don´t know if this question fits here.
    I wan´t to execute a batch file (on Win XP) with runtime.exec. That batch file will execute another java program.
    I have the following code:
    Resolutor.java
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    public class Resolutor {
          * @param args
         public static void main(String[] args) {
              // TODO Auto-generated method stub
              Runtime r = Runtime.getRuntime();
              //String[] command = { "cmd.exe", "/C",".\\lanzar.bat .\\ .\\ 001.res:001.dtt" };
              String[] command = { "cmd.exe", "/C",".\\tarea\\lanzar.bat " + args[0] + " " + args[1] + " " + args[2]};
              try {
                   //Process proceso = Runtime.getRuntime().exec("lanzar.bat");
                   Process proceso = Runtime.getRuntime().exec(command);
                   InputStream stderr = proceso.getErrorStream();
                InputStreamReader isr = new InputStreamReader(stderr);
                BufferedReader br = new BufferedReader(isr);
                String line = null;
                System.out.println("<ERROR>");
                while ( (line = br.readLine()) != null)
                    System.out.println(line);
                System.out.println("</ERROR>");
                   int exitVal = proceso.waitFor();
                   System.out.println("EXITVAL: " + exitVal);
              } catch (IOException e) {
                   // TODO Auto-generated catch block
                   e.printStackTrace();
              } catch (InterruptedException e) {
                   // TODO Auto-generated catch block
                   e.printStackTrace();
    }lanzar.bat
    java Lanzador %1 %2 %3Lanzador.java
    import java.util.Vector;
    public class Lanzador {
          * @param args
         public static void main(String[] args) {
              // TODO Auto-generated method stub
              Repetitiva rpt=new Repetitiva();
              String rutaFicheros=args[0];
              String rutaResultado=args[1];
              String[] ficheros=args[2].split(":");
              Vector<String> ficheroDatos=new Vector<String>();
              for(int i=0;i<ficheros.length;i++){
                   ficheroDatos.add(ficheros);
                   System.out.println(ficheros[i]);
              System.out.println("RUTA DE FICHEROS: " + rutaFicheros);
              System.out.println("RUTA DE RESULTADOS: " + rutaResultado);
              System.out.println("CALCULAR");
              rpt.setRepetitiva(ficheroDatos, rutaFicheros, rutaResultado);
              rpt.calcular();
    }I´ve got Resolutor.class in /res and the other two files (and the rest of the files for running) in /res/tarea.
    If I execute /res/tarea/lanzar.bat from the command line everything works fine, it calls java and runs lanzador without problem.
    The problem comes when I try to execute the batch file via Resolutor.class. It executes the batch file without problem, but it throws a *java.lang.NoClassDefFoundError: Lanzador* when launching the new java application.
    Any ideas of how can I solve that problem. (It must do it via batch file).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

    Well, I tried putting in the bat file java -classpath .\tarea Lanzador %1 %2 %3 and didn´t work.
    I ve tried the bat modification, and the directory in x.txt is k:\res instead of k:\res\tarea.
    I´ve tried to modifiy it to java .\tarea\Lanzador and didn´t work so I have put a cd like the following and it appears to work.
    cd tarea
    java Lanzador %1 %2 %3Thanks for the replies.

  • How to run a project which gets parameters from a batch file

    Hello all,
    I use to run a program, which gets parameters only by interactive mode, using a batch file as you can see below:
    # myprogram < batchfile.txt
    Now, I'm updating its code by SunStudioExpress IDE and I'd like to run it from the batchfile. I have noticed that the project properties window has the option run -> arguments, however this program doesn't accept arguments this way and for changing it, I'd have a hard job.
    Does someone know how to run this project and to get its parameters from batchfile?
    Regards,
    Glauber

    Ah, it appears that when you run the project, "<" is passed as one of the arguments and is not treated as input redirection.
    Sorry, it looks like it is not possible to do the redirection; and it looks like a bug to me. Could you please file it through bugs.sun.com? It shouldn't take long as the problem is evident now.

  • How to catching exceptions from another thread

    hi,guys,i have some code like this:
    public static void main(String[] args) {
    TimeoutThread time = new TimeoutThread(100,new TimeOutException("超时"));
         try{
         t.start();
         }catch(Exception e){
         System.out.println("eeeeeeeeeee");
    TimeoutThread will throws an exception when it runs ,but now i can't get "eeeeeeeeeee" from my console when i runs the main bolck code.so ,somebody help me ,thk.

    hi,ejp,this is my scene:
    getHttpParty(String name) is a method get some information from a web site,this maybe cause many times.now this method is called in my main(String args[]) method.
    i want to terminate getHttpParty if it runs 2s, can you give some simple code to do this.
    thank you very much.
    Edited by: user5449747 on 2010-11-17 上午12:03

  • Within JBuilder, Reading Environment Variable From a BATCH File

    Hi ppl:
    Following my scenario without JBuilder. I would like to be able to do the same with JBuilder, so that I can run my application from within.
    1. In the DOS window, I run a config.bat file that sets up a whole bunch of environment variables and then calls another script file that sets up another whole bunch to set up environment for a third party API (C++ based).
    2. My application uses native methods to call the third party API which uses the environment variables set in step 1.
    I know how to set the environment varialbes in JBuilder (Project Parameters, VM). However, I don't know how I can call a batch file that does the same. I don't want to set up the third party variables in JBuilder manually, since the script that sets them up checks on a few things to customize the environment.
    I also know how to run a batch file from JBuilder, but that does not set the environment for the application. It seems like the batch file is run in a separate process.
    Any ideas?
    Kamran

    It seems like the batch file is run in a separate process.Yes, it is. That's a design feature of Windows. The environment variables that a process creates are available to any subprocess, but when the process ends, the environment variables vanish. That's because they are part of the process, not global variables as you might wish.
    So that's why your non-JBuilder scenario works; your C++ program is running in a subprocess of the process that defined the environment variables. And your JBuilder scenario doesn't work because the batch file it runs is in a process whose parent process is Windows, not JBuilder.

  • Find out who catches exception from within exception

    Hi,
    I am writing some generic Exception for our project. The aim is to simplify exception handling by making the exceptions log the necessary information with Log4J.
    It seems pretty easy to find out which class actually threw the exception (top of stack trace) but I would much rather like to log the exception in the name of the class that will catch the exception.
    The problem is that the stacktrace (it can be retrieved within an exception as of J2SE 1.4) does not contain information about which class will actually be catching the exception.
    Is there any way to accomplish that? Would be very grateful if someone could point me into the right direction if there is a possibility.
    Thank you very much in advance
    Greets Robbi

    Thanks for the quick reply.
    What I actually really wanted is to log from within the Exception. Right now I am doing this from within the Exceptions constructor.
    I see your point with the constructor being supposed to be lightweight, but in most cases the logging will be turned off and log4J does not take a lot of time to find that out.
    The logging within the catch blocks is what we wanted to circumvent as that would be the same in all catch blocks. Additionally it would be easy to simply change the topmost Exception in our hierarchy to log somewhere else instead.
    Performance is not too crucial on our application, but traceability is, as a lot of money is tied to a single transaction. That is why we decided to for Exceptions to log, as thus even when a developer would forget to log, the exception is still logged.
    Anyway, I thought that it is quite likely not possible to determine who catches an exception from within that exception. I guess the virtual machine wouldn't like to unseal that information. Maybe this is something that might work in a future Java version.
    Thanks for the input anyway.
    Regards Robbi

  • Check oracle db status from windows batch file?

    Hi
    any body have a batch to do that
    i want to check connecting , not just the service
    thanks very much

    I have a process in batch files (dos programming )which prepare some files then call oracle store procedures, i need to have a way to check >if the database is up(open) before i start my processingHow can I tell if the light will light without turning on the switch?
    While it can be done, the simplest & easiest way is to try to connect for real & trap any error which may result from it not working.

  • How to call SQL job step by step from windows batch file

    Hi ,
    I have a SQL agent job [POC_IOD_RunPkgJob]  which is being called from bat file with below command.
    Could you please tell me how to call only one step of this job, what command I need to mention in the batch file.
    SQLCMD -Sabcwi\SQLI01,51565 -E -Q"exec msdb.dbo.sp_start_job [POC_IOD_RunPkgJob]"

    Hi RameshDravid,
    Regarding your description,though not aware of what is the purposed to call only one step of that job, the below sample can somewhat help to achieve your requirement.
    --find the job steps
    SELECT
    steps.step_id,steps.step_name,steps.subsystem,steps.command
    FROM msdb.dbo.sysjobsteps steps
    JOIN msdb.dbo.sysjobs jobs
    ON steps.job_id = jobs.job_id
    WHERE jobs.name = 'youJobName'
    --find the command runs in that step, usually that is some command exec stored procedure
    SQLCMD -Sabcwi\SQLI01,51565 -E -Q"exec stored procedure found in the above query"
    If you have any question, feel free to let me know
    Eric Zhang
    TechNet Community Support

Maybe you are looking for

  • ASA VPN - Overlapping networks

    Hello. I have a problem that I have a small branch with ASA-5505 using the VPN connects to two branches and headquarters, unfortunately, even though I used the crypto-map priority, in this configuration, it does not work. I mean, first to move traffi

  • HT201060 how can i family share a physical cd with my family members rather than loading onto each device individually

    I have just purchased another set of CD's from the store and want to load it to my iPhone through iTunes. I also wish for my family members to have access to these albums the same way as if I had purchased it through iTunes. Is this possible or must

  • It's all about Stream...

    Hi' this is really makes me feel so upset. Why every time i try to execute WindowsExec file. There's no error in code but the output not correctly. WindowsExec.java : public class WindowsExec      response std_out,std_err;      DataOutputStream doStr

  • Maximum hdd size and ram?

    hi, I have the emac from 2002, the "P69" I believe it's also referred to as. It's the one with the 700 MHz processor. 1) I read that there are two ram slots and the maximum useable ram on the computer is 1GB. So if that's true, please confirm it or l

  • Online Galleries with Client Proofing

    Currently when I post photographs from a client shoot to Zenfolio or Smugmug, my clients say things like "I like 22, 34, 25, 26, and 27" or "I like the third one down and fourth one to the left on the third page" and while it's helpful to be integrat