How to run a openssl command from a java program
Hi All
Please suggest on how to run a openssl command from a java program.
I am using this
Runtime runtime = Runtime.getRuntime();
runtime.exec("openssl pkcs8 -inform der -nocrypt test.der result.pem");
This is suppose to take test.der as input and create result.pem.
There are no errors but the file result.pem isnt created.
Thanks in Advance
First off is that openssl command correct? Should it be this instead:
openssl pkcs8 -inform der -nocrypt -in test.der -out result.pem
Try out your openssl command within a command prompt so that you know that it works ok. I think the command line you specified waits on stdin (well it does for me).
After that.....
runtime.exec creates a Process object. If you do this:
Process openssl = runtime.exec("....")
then you can examine the return code from openssl to see the exit code - for instance if the input file does not exist then exit = 1. You can test for this with Java
Alternatively you could get the stderr from the process and look inside it - if it is 0 length then all is good, if it has some text in there then it has likely failed. You could then throw an exception and include the stderr output in the exception messgae. You may need to experiment with this, runnig it first when openssl is happy then running it again when openssl is upset.
M
Similar Messages
-
How to run a cygwin.bat from a java program?
Can you please let me know how to run a cygwin.bat file from a java program and to give commands through java program. I have a program to run .exe files, but when I do the same for the cygwin.bat it doesnt work. In task mgr a BASH and a cmd.exe is running. Please help me on this & bit urgent. Thanks in advance!
Can you please let me know how to run a cygwin.bat
file from a java program and to give commands through
java program. I have a program to run .exe files, but
when I do the same for the cygwin.bat it doesnt work.Of course not. .bat files are no native executables. You need to open a shell first, like "cmd /c cygwin.bat ..."
& bit urgent. Thanks in advance!If I had read this earlier I wouldn't have replied. Why exactly is your time worth more than anybody else's? -
How can I pass system commands from a java program? Urgent!
hi,
I have been trying this out since a long time. How do I send system commands to command.com or cmd.exe from a java program and an output of the executed command back to the java application.
If u have any idea, or have any information about the kind os application reply back.
Thanks
Deepa DatarThis is the code which I tried, but it displays only the title of MS-DOS, something like " Microsoft Corp...etc ". But doesn't take any input, and the subprocess(cmd.exe) hangs.
import java.io.*;
public class cmddemo2
public static void main(String arg[])
try
System.out.println("cmd");
Process p=Runtime.getRuntime().exec("cmd.exe");
DataInputStream din=new DataInputStream(p.getInputStream());
DataOutputStream dout=new DataOutputStream(p.getOutputStream());
System.out.println("after streams");
String s;
dout.writeChars("type cmddemo2.java");
while((s=din.readLine())!="\n")
System.out.println(s);
dout.writeChars("dir");
String s1;
while((s1=din.readLine())!="\n")
System.out.println(s1);
System.out.println("over");
catch(Exception e)
{ System.out.println("Exception : "+e); -
Running curl command from a java program using Runtime.getRuntime.exec
for some reason my curl command does not run when I run it from within my java program and errors out with "https protocol not supported". This same curl command however runs fine from any directory on my red hat linux system.
To debug the problem, I printed my curl command from the java program before calling Runtime.getRuntime.exec command and then used this o/p to run from the command line and it runs fine.
I am not using libcurl or anything else, I am running a simple curl command as a command line utility from inside a Java program.
Any ideas on why this might be happening?thanks a lot for your response. The reason why I am using curl is because I need to use certificates and keys to gain access to the internal server. So I use curl "<url> --cert <path to the certificate>" --key "<path to the key>". If you don't mid could you please tell me which version of curl you are using.
I am using 7.15 in my system.
Below is the code which errors out.
public int execCurlCmd(String command)
String s = null;
try {
// run the Unix "ps -ef" command
Process p = Runtime.getRuntime().exec(command);
BufferedReader stdInput = new BufferedReader(new
InputStreamReader(p.getInputStream()));
BufferedReader stdError = new BufferedReader(new
InputStreamReader(p.getErrorStream()));
// read the output from the command
System.out.println("Here is the standard output of the command:\n");
while ((s = stdInput.readLine()) != null) {
System.out.println(s);
// read any errors from the attempted command
System.out.println("Here is the standard error of the command (if any):\n");
while ((s = stdError.readLine()) != null) {
System.out.println(s);
return(0);
catch (IOException e) {
System.out.println("exception happened - here's what I know: ");
e.printStackTrace();
return(-1);
} -
How:Execute OS commands from a Java program
hi,
is it possible to execute an OS command from a java program, as in C/C++? if yes, plz give the details.
thanxIn the future try searching the forum before posting. Using keywords like "execute os commands" would lead you to several postings on this topic.
Note the keywords where taken directly from you subject line. With practice you learn which keywords to use to yield the best search results. -
How to call j2me emulator instance from a java program?
hi,
how to call j2me emulator instance from a java program?
i tried public void startApp(){
try{
platformRequest("tel:+5550000");
}catch(Exception e){
e.printStackTrace();
from a j2me midlet itself,
but it gave illegal access exception.
do i need any hardware phone connected to my pc?
please help.http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html
import java.util.*;
public class OpenExplorer{
public static void main(String args[]){
new OpenExplorer();
public OpenExplorer(){
try{
String command = "explorer C:";
// or String command = "cmd /c explorer C:";
Runtime runtime = Runtime.getRuntime();
Process process = runtime.exec(command);
int exitVal = process.waitFor();
System.out.println("Exit Value: " + exitVal);
} catch(Exception e){
e.printStackTrace();
} -
How to run an exe file in a java program
Hi,
Can somebody tell me how to run an exe file in a java program.
Thank you!Yes, java.lang.Runtime.exec().
Read this carefully before you do:
http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html
Don't write a line of code before you're reviewed and understood the article completely. - MOD -
How to display a oracle table from a java program?
How to display a oracle table from a java program.
Hello friends, I have written a Java program, using oracle 10g as backend.
I want to display a oracle table as output. Im not getting how to display oracle table as a output table.. Pls help me
Thank youjayanthds, you're not going to get a satisfactory
answer to this here. it's too big a task to justbe
quickly outlined in a forum - the reply "all youneed
to do is to query you table and return it asJTable"
is worthless, for example, since the solution to
any problem can be distilled to such a
soundbite, if need be. doesn't make the solutionany
simpler
essentially you're asking "how do I write adatabase
application?". all you'll get is snippets of code
that, when fitted together, will eventually helpyou
do this, but you'll spend days and days comingback
saying "right, I've done that, now what?" until
either you or the forum gets frustrated with the
whole affair and the process stops
there are entire books written about this subject,
and countless tutorials and guides on theinternet.
you're better off going down that routehehehe.well, it's true! I used to have a manager that would outline the solution to a problem in a few lines of pseudocode, and then firmly believe that the actual solution would be just as brief and simple. shame his pseudocode included such lofty abstractions as "reformat all data" -
How to execute unix command from the Java program running on Windows
Hello,
I need to
1. Execute a unix shell script from a Java program running on the Windows.
2. I also need to capture the output of this shell script in my program.
Please suggest me how to achieve this.
Thanks in Advance.Hi...
Something is missing here
If you want to execute a shell script in windows that not posible unless you find or develop a unix shell script parser for windows.
But if you are trying the execute a unix shell script on a remote unix computer from your java program running on a windows platform you can do that by logging on to the UNIX terminal which is running on port 23 I think.
You can test this using telnet tool on windows
just type on command prompt
telnet <ip of the unix pc> <port number this case 23>
you should get the unix terminal. If that works you can do the same through java or you can directly conect to port 23 of that pc using sockets that way your program will be platform independant -
How to run a DOS command from an Oracle form.
How can I run a DOS command from an Oracle form (i.e. open the calculator located at c:\windows\system32\calc.exe)?
first of all get the environment variable for the c:\windows\system32 direcotry for any of the windows
you can use get variable from the ora env package
now cancat the system32 variable with the calc.exe string
now pass the string with host command as parameters
this process will work for all type of windows. -
How to read files on server from a java program?
Hello,
I am fairly new to JSP programming. I have an issue with reading files. I am trying to call method of a normal java file from a jsp program. The method I am trying to call does some IO operation on Files. I have the files in the same directory as my class files on server that is in WEB-INF/classes folder. In my java program, I am giving just the file name to open because the files and the classes are in the same directory. But this is not working.
What exactly should I do to read a file from a java program, that is running on the server?
Any help is appreciated.
Thanks,
KrishnaString realFilePath = application.getRealPath("/WEB-INF/myFile.txt");
File fileToOpen = new File(realFilePath);
out.println(fileToOpen.getAbsolutePath() + ": exists? " + fileToOpen.exists());in this case "application" is a reference to the ServletContext.
It is an implicit variable in a JSP. In a servlet:
ServletContext application = getServletConfig().getServletContext(); -
Execute several UNIX OS commands from inside Java program
Greetings,
I would like to be able to execute from a Java program several of the following UNIX commands
script filename
cd
date
grep
diff
I have been able to get a single command to work with
Runtime rt = Runtime.getRuntime();
Process p = rt.exec("dir");
My goal here is to accomplish a Java program which will use JDBC to access an Oracle database with SQL and then compare the resultant flat file with a diff command in Unix to another delimited file from an Excel spreadsheet. Your input is appreciated.
Thank youI would suggeat to use JDBC to get the data from database and then read your file and then use existing java diff program from following link to find the differences between the files
http://www.bmsi.com/java/
I hope this helps
VAN -
How to list all OS processes from a java program
I want to list/kill all OS processes from a java program, or a part from all processes according to a filter on a name of process.
a similar functionality is ps in Unix or taskkill in Windows XP.
Thanks!Hi,
I was looking for such lib, but finally I decided to accomplish the job with my fingers end ;-). It maigh be helful for u guys:
// is written for x based OSs
private static void killProcess(Process process) {
if (process == null)
return;
process.destroy();
private static void closeProcessStreams(Process process) {
try {
process.getErrorStream().close();
} catch (IOException eyeOhEx) {
private static void listPHPs() {
Process proc = null;
Runtime rt = Runtime.getRuntime();
int exitVal = 0;
try {
proc = rt.exec(" ps -C php"); // here use ur filter. issue "man ps" in linux for more info
catch (Exception ex) {
System.out.println(ex.getMessage());
killProcess(proc);
return;
try {
// process the return list of ur command
InputStream stdReturnStr = proc.getInputStream();
InputStreamReader isr = new InputStreamReader(stdReturnStr);
BufferedReader br = new BufferedReader(isr);
String line = null;
String returnMsg = "";
boolean firstLine = true;
int[] allPIDs = new int[100]; // finally we have an array of PIDs
int PIDCount = 0;
while ( (line = br.readLine()) != null) {
if (!firstLine){ // the first line is title, ignore it
returnMsg += line + "\n";
String PID = line.trim().split(" ")[0];
System.out.println(PID);
try{
allPIDs[PIDCount] = Integer.parseInt(PID);
PIDCount++;
}catch(Exception ex){
else
firstLine = false;
System.out.println(returnMsg);
catch (Exception t) {
System.out.println(t.getMessage());
killProcess(proc);
return;
try {
exitVal = proc.waitFor();
catch (Exception t) {
System.out.println(t.getMessage());
killProcess(proc);
return;
closeProcessStreams(proc);
Thats it! -
How to open my computer window from a java program.....
To open my computer window in win xp is simple from the start menu.
i want to open it from a java program .
any idea to open my computer from a java program or command prompt......http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html
import java.util.*;
public class OpenExplorer{
public static void main(String args[]){
new OpenExplorer();
public OpenExplorer(){
try{
String command = "explorer C:";
// or String command = "cmd /c explorer C:";
Runtime runtime = Runtime.getRuntime();
Process process = runtime.exec(command);
int exitVal = process.waitFor();
System.out.println("Exit Value: " + exitVal);
} catch(Exception e){
e.printStackTrace();
} -
How to run multiple DOS commands from a single Webutil Client_Host session?
Hello all,
I have a requirement where I need to create an interface with SVN from Forms for basic checkin-checkout of files.
So, I've been trying to use webutil client_host to open a command line session and issue svn commands.
For svn, sometimes I need to give multiple commands like change to a particular directory and then run an svn command.
But client_host takes in only one command at a time and I'm unable to issue a series of DOS commands to perform
a particular task.
Is there a way to do this?
Pls suggest.
Regards,
SamFirst your original question... You can put more than one DOS command on a single line, simply separate each command with an ampersand (&). For example:
mkdir c:\abc & cd abc & dir*
Regarding your concerns about performance, well that would depend on exactly what you mean. Using CLIENT_HOST (or HOST on the server) simply opens a shell (DOS in this case) then passes your command to it. The performance of performing this action really isn't measurable. Basically you are just pressing a button and you should get a near immediate action. As for the performance of executing each command, that has nothing to do with Forms. Once the command is passed to the shell, the rest is a function of the shell and whatever command you passed.
Having said that, if you were to write something sloppy like a loop (in pl/sql) which called CLIENT_HOST lots of times repeatedly, then yes there would be a performance problem because the pushing of the button will cause an exchange to and from the server and each cycle in the loop will do the same.
So the answer to how performance is impacted will depend on what exactly you need to accomplish. If it is a single call to CLIENT_HOST, this should be fine.
Maybe you are looking for
-
As the start of another weeks dawns and most of us come face to face with our “income earning” pursuits, I am faced again with Adobe and its suite of software that is a source of Terror, stress and a lack of productivity in our lives. I would attempt
-
Major issues with Google services on both my macs, not on XP machine
Hi, Since a couple of weeks (latest OSX update?), I am having major problems publishing on my Blogger (Blogspot) blogs, accessing Gmail and even posting in Google's help forums. The worst behavior occurs in Blogspot: only (extremely!) rarely do posts
-
Trouble enabling internet sharing on my server
I'm setting up my first server (10.4 on a mac pro). Under Sharing Prefs, I can't find the tab that I would normally use to enable internet sharing. I'd like our external internet line to go into Ethernet1 and our network switch to plug into Ethernet2
-
Two Extremes, Three Expresses: Want Best Coverage & Bandwidth
My apologies in advance if this is a bit convoluted or poorly articulated, but here goes- I have two AirPort Extreme Base Stations-a newer 802.11n (AEBSn) and an older A1034 saucer model (AEBSg)-as well as three AirPort Express (AX) units. Each of th
-
Which version of windows best for PS CS4/5 Camera RAW
We are adding a new windows workstation that will primarily be used for processing Canon RAW files using CS4 or CS5 Camera RAW followed by a PS action. We can pick the version of CS and have OS options as well. We will be processing thousands of file