Sponsored Content
Top Forums Shell Programming and Scripting calling unix script from JSP??? Post 302075812 by Bhups on Wednesday 7th of June 2006 02:39:25 AM
Old 06-07-2006
Question calling unix script from JSP???

Hi all,

i have requirement where i need to call a unix script from a JSP code. my script should list all the csv files from a directory and then should upload the file names to an oracle table (using sqlloader).

i tried using getRuntime function in JAVA to call my script and was successfully able to list all the files in that directory. but the issue i am facing is that when i added a filter of listing only csv files (ls *csv* > tempfile) then also its listing all teh files (and not only teh csv files).

one more issue here is that i have to give teh entire path of list command (/usr/bin/ls) and hence have to give path for each and every command i use further in teh script (i just tried the functionality of calling a script from JSP and then listing all files). the issue here i feel is that the unix shell is not being spawned here and thats why the basic commands are not available to teh code.

so basically teh script is not working at all Smilie .....please help!!!!

the code i used is mentioned below:

helloworldapp.java:
==========

import utility.ErrorPage;
import utility.ConnectionPool;
import utility.GeneralSecurity;
import utility.ErrorClass;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.sql.*;
import java.util.*;


public class HelloWorldApp extends HttpServlet
{
public void doGet(HttpServletRequest req,HttpServletResponse res)
throws ServletException ,IOException
{
PrintWriter out = res.getWriter();
try
{
res.setContentType("text/html");
out.print("<HTML><HEAD><TITLE>Testing Servlets</TITLE></HEAD><BODY><H1>Hello World</H1>");
java.lang.Runtime rt = java.lang.Runtime.getRuntime();
out.println("Before Executing script file");

//String scriptfile="ls >> temp1234.txt";
//String scriptfile="HelloWorldApp.sh";
//String process1=scriptfile;
//Process child = rt.exec("/bin/ksh");
//Process child = rt.getRuntime().exec("/usr/bin/ksh");
//child.waitFor();
//int exitValue1=child.exitValue();
//out.println("The Return Value of ksh : "+exitValue1);

Process p1 = rt.getRuntime().exec("/home/user/HelloWorldApp.sh");
p1.waitFor();
int exitValue=p1.exitValue();
out.println("The Process to be executed is : ");
out.println("The Return Value : "+exitValue);
out.print("</BODY></HTML>");
out.close();
}
catch(Exception excpUser)
{
out.println(excpUser.getMessage());
}

}
}

shell script:HelloWorldApp.sh:
===========

#!/bin/ksh

. $HOME/.profile

/usr/bin/ls > /home/user/temp1234.txt
#/usr/bin/cat temp1234.txt | /usr/bin/grep *csv* > temp1234.txt


sorry for the lengthy mail Smilie

regards,
Bhups.
 

10 More Discussions You Might Find Interesting

1. Programming

calling UNIX script from C/C++

Hi all, Is it possible to call a UNIX script from C/C++ program? If yes, can you please tell me how? Thank you in advance Regards (3 Replies)
Discussion started by: omran
3 Replies

2. Shell Programming and Scripting

Help with shell script - Unix Gurus calling

Unix Gurus, I have been breaking my head to get this done..seems simple.. I need to read a flat file and based on a key word in a line, i need to skip the previous 3 lines. eg : Line1 Line2 Line3 Line4 Line5 Line6 Error Line7 Line8 Line9 Error Line10 (4 Replies)
Discussion started by: ravred
4 Replies

3. UNIX for Advanced & Expert Users

calling plsql function in a unix script

Could anyone please help me. I have a function in plsql that returns a number. But i am listing some records through that function using DBMS_OUTPUT.PUT_LINE. I want to catch those records by executing this function through a unix script. The following shows what i did echo "Connected from... (2 Replies)
Discussion started by: cobroraj
2 Replies

4. Shell Programming and Scripting

Can we call JSP file from Unix.if so how.Please help me.Im newbie to Unix

Hi Can we call a jsp page from Unix.if so please let me know how we can.. thanks for the help in advance... thanks kumar (0 Replies)
Discussion started by: mailsukumar
0 Replies

5. UNIX for Advanced & Expert Users

Calling unix script from sql or plsql

Hi Can anyone please let me know how to call unix scripts from sql or plsql ASAP. (2 Replies)
Discussion started by: ksailesh
2 Replies

6. Shell Programming and Scripting

Calling a request set from Unix shell Script

Hi All, I want to call a concurrent request set from a shell script. I am getting the syntax error "syntax error at line 417 : `(' unexpected" in the below script. v_request_id=fnd_request.submit_request(application => 'APPL_SHORT_NAME' ,program => 'PROGRAM_SHORT_NAME' ... (4 Replies)
Discussion started by: swatipevekar
4 Replies

7. Shell Programming and Scripting

Running a unix script(which is calling another script inside that) in background

Hi all, I am having a script ScriptA which is calling a script ScriptB in the same server and copying files to second server and have to execute one script ScriptC in the second server. THis First script ScriptA is the main script and i have to execute this process continously. for Keeping... (2 Replies)
Discussion started by: rohithji
2 Replies

8. Shell Programming and Scripting

Calling Java Method from UNIX using shell script

Hi All, I need to call a java method from a shell script. I know we can use the command java ClassName to call the main method in it. But I need to call another method that is there in the class and pass an email to it. Can I use java ClassName.MethodName(email) Any help will be... (4 Replies)
Discussion started by: RahulK
4 Replies

9. UNIX for Dummies Questions & Answers

calling a unix shell script from sqlplus

I want to execute a shell script from sqlplus prompt and get its output back to sqlplus. Is this possible? if yes just give me an example for doing that. (2 Replies)
Discussion started by: boopathyvasagam
2 Replies

10. Shell Programming and Scripting

Calling another Script from Command Line in UNIX

Hi all, I am having problem in understanding the following line of code .. /home/rmsbatch/autoscript/autorms.ksh dc_load_main.ksh -q belk_dc_load_tran_data.seq What's being done here ? what does "-q" means ? What does ".seq" file means in unix "belk_dc_load_tran_data.seq" Please... (3 Replies)
Discussion started by: LoneRanger
3 Replies
guestfs-java(3) 					      Virtualization Support						   guestfs-java(3)

NAME
guestfs-java - How to use libguestfs from Java SYNOPSIS
import com.redhat.et.libguestfs.*; GuestFS g = new GuestFS (); g.add_drive_opts ("disk.img", null); g.launch (); DESCRIPTION
This manual page documents how to call libguestfs from the Java programming language. This page just documents the differences from the C API and gives some examples. If you are not familiar with using libguestfs, you also need to read guestfs(3). CLOSING THE HANDLE The handle is closed when it is reaped by the garbage collector. Because libguestfs handles include a lot of state, it is also possible to close (and hence free) them explicitly by calling the "close" method. EXCEPTIONS Errors from libguestfs functions are mapped into the "LibGuestFSException" exception. This has a single parameter which is the error message (a "String"). Calling any method on a closed handle raises the same exception. EXAMPLE 1: CREATE A DISK IMAGE // Example showing how to create a disk image. import java.io.*; import java.util.Map; import java.util.HashMap; import com.redhat.et.libguestfs.*; public class CreateDisk { static String output = "disk.img"; public static void main (String[] argv) { try { GuestFS g = new GuestFS (); // Create a raw-format sparse disk image, 512 MB in size. RandomAccessFile f = new RandomAccessFile (output, "rw"); f.setLength (512 * 1024 * 1024); f.close (); // Set the trace flag so that we can see each libguestfs call. g.set_trace (true); // Set the autosync flag so that the disk will be synchronized // automatically when the libguestfs handle is closed. g.set_autosync (true); // Attach the disk image to libguestfs. Map<String, Object> optargs = new HashMap<String, Object>() { { put ("format", "raw"); put ("readonly", Boolean.FALSE); } }; g.add_drive_opts (output, optargs); // Run the libguestfs back-end. g.launch (); // Get the list of devices. Because we only added one drive // above, we expect that this list should contain a single // element. String[] devices = g.list_devices (); if (devices.length != 1) throw new Error ("expected a single device from list-devices"); // Partition the disk as one single MBR partition. g.part_disk (devices[0], "mbr"); // Get the list of partitions. We expect a single element, which // is the partition we have just created. String[] partitions = g.list_partitions (); if (partitions.length != 1) throw new Error ("expected a single partition from list-partitions"); // Create a filesystem on the partition. g.mkfs ("ext4", partitions[0]); // Now mount the filesystem so that we can add files. g.mount_options ("", partitions[0], "/"); // Create some files and directories. g.touch ("/empty"); String message = "Hello, world "; g.write ("/hello", message.getBytes()); g.mkdir ("/foo"); // This one uploads the local file /etc/resolv.conf into // the disk image. g.upload ("/etc/resolv.conf", "/foo/resolv.conf"); // Because 'autosync' was set (above) we can just close the handle // and the disk contents will be synchronized. You can also do // this manually by calling g#umount_all and g#sync. // // Note also that handles are automatically closed if they are // reaped by the garbage collector. You only need to call close // if you want to close the handle right away. g.close (); } catch (Exception exn) { System.err.println (exn); System.exit (1); } } } EXAMPLE 2: INSPECT A VIRTUAL MACHINE DISK IMAGE // Example showing how to inspect a virtual machine disk. import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.HashMap; import java.util.List; import java.util.Map; import com.redhat.et.libguestfs.*; public class InspectVM { static final Comparator<String> COMPARE_KEYS_LEN = new Comparator<String>() { public int compare (String k1, String k2) { return k1.length() - k2.length(); } }; public static void main (String[] argv) { try { if (argv.length != 1) throw new Error ("usage: InspectVM disk.img"); String disk = argv[0]; GuestFS g = new GuestFS (); // Attach the disk image read-only to libguestfs. Map<String, Object> optargs = new HashMap<String, Object>() { { //put ("format", "raw"); put ("readonly", Boolean.TRUE); } }; g.add_drive_opts (disk, optargs); // Run the libguestfs back-end. g.launch (); // Ask libguestfs to inspect for operating systems. String roots[] = g.inspect_os (); if (roots.length == 0) throw new Error ("inspect_vm: no operating systems found"); for (String root : roots) { System.out.println ("Root device: " + root); // Print basic information about the operating system. System.out.println (" Product name: " + g.inspect_get_product_name (root)); System.out.println (" Version: " + g.inspect_get_major_version (root) + "." + g.inspect_get_minor_version (root)); System.out.println (" Type: " + g.inspect_get_type (root)); System.out.println (" Distro: " + g.inspect_get_distro (root)); // Mount up the disks, like guestfish -i. // // Sort keys by length, shortest first, so that we end up // mounting the filesystems in the correct order. Map<String,String> mps = g.inspect_get_mountpoints (root); List<String> mps_keys = new ArrayList (mps.keySet ()); Collections.sort (mps_keys, COMPARE_KEYS_LEN); for (String mp : mps_keys) { String dev = mps.get (mp); try { g.mount_ro (dev, mp); } catch (Exception exn) { System.err.println (exn + " (ignored)"); } } // If /etc/issue.net file exists, print up to 3 lines. String filename = "/etc/issue.net"; if (g.is_file (filename)) { System.out.println ("--- " + filename + " ---"); String[] lines = g.head_n (3, filename); for (String line : lines) System.out.println (line); } // Unmount everything. g.umount_all (); } } catch (Exception exn) { System.err.println (exn); System.exit (1); } } } SEE ALSO
guestfs(3), guestfs-examples(3), guestfs-erlang(3), guestfs-ocaml(3), guestfs-perl(3), guestfs-python(3), guestfs-recipes(1), guestfs-ruby(3), <http://libguestfs.org/>, <http://caml.inria.fr/>. AUTHORS
Richard W.M. Jones ("rjones at redhat dot com") COPYRIGHT
Copyright (C) 2011 Red Hat Inc. <http://libguestfs.org/> The examples in this manual page may be freely copied, modified and distributed without any restrictions. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA libguestfs-1.18.1 2013-12-07 guestfs-java(3)
All times are GMT -4. The time now is 07:06 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy