Passing arguments into main program using eclipse
If I want to pass a file into my Main program using "file redirection" I would do the following when running my program from the command prompt:
C:\ MainProgram < inputfile.txt
How do I do this using Eclipse SDK(WinXP)? I have investigated the options for passing in "Program Arguments" and still can't figure it out. Can anyone please help? What do I type in the Program Arguments text box?
Thank you,
Mark
Well, input redirection is a shell thing, so Eclipse may not support it like that. (Maybe it does, somehow, but if it does it's just aping shell behavior for convenience.)
What I'd suggest, is to create an option to your program to read a specified file. Maybe something like
MainProgram -input intputfile.txt
Then give that as an argument in Eclipse.
If this is for testing purposes, another option is to create a test class, and hardcode the filename in there.
Similar Messages
-
How to pass argument in main function ?
How to pass arguments in main function of one class from another class ?
I don't want to pass argument from command prompt.
I want to try something like this -
class Test{
public static void main(String args[]){
for(int i=0;i<args.length;i++)
System.out.println(args);
class Fun{
public static void main(String args[]){
Test t=new Test("Hello","good bye");
when i run Fun class it gives error.
Suggest me how can i do that.In Fun class main method does not take arguments that is fine. In Test class instead of main method you can have constructor to take input parameters as suggested by BalusC
However, if you want to make your existing code work, you can call (though not appropriate) main() method of Test class from main() method of Fun class (As main() method is static object is not required to invoke this):
Test.main(new String[]{"Hello","good bye"});Here is your code:
class Test{
public static void main(String args[]){
for(int i=0;i<args.length;i++)
System.out.println(args);
public class Fun{
public static void main(String args[]){
//Test t=new Test("Hello","good bye");
Test.main(new String[]{"Hello","good bye"});
} Thanks,
Mrityunjoy -
How to configure a servlet program using Eclipse?
Hi,
Am just learning Java and J2ee..Am not efficient..Don't laugh @ my question..
I installed jdk 1.6, Apache tomcat 5.0 and eclipse 3.2.1 and also installed wtp plugin to work with j2ee perspective of eclipse..I did this in my PC..could U plz tell me what I need to install in addition?
How come I write my Servlet program using Eclipse...
Thanq
Vani.This is the Sun Java System Messaging Server forum. Though this application software bears Java in it's name it has nothing to do with the programming language Java.
-
Trying to pass arguments into a method call and failing
Hi everyone, I'm fairly new to programming, and newer to Java. I'm currently working on a project that pulls fields from a database based on a name, and I'm having some trouble getting the connection string set up.
Statically defined, the database connects and the program logic that follows works just fine. The problem is that to future-proof this application, I need to pass the database URL, port, db instance, username, and password into the program as arguments from the batch file that will then be scheduled to run the program on a job-by-job basis.
Product Version: NetBeans IDE 6.1 (Build 200805300101)
Java: 1.6.0_06; Java HotSpot(TM) Client VM 10.0-b22
System: Windows XP version 5.1 running on x86; Cp1252; en_US (nb)
Userdir: C:\Documents and Settings\xxxxxxxxxxx.SPROPANE\.netbeans\6.1
Here's my current working source (with the network addresses obfuscated):
package processsqrjob;
import java.io.*;
import java.sql.*;
import java.util.Date;
public class Main {
* @param args jobname, jobparameters, HYPusername, HYPpassword, HYPservername, HYPport, oracleDBURL, oracleport (default 1512), SID (dbb?), oracleusername, oraclepass
* @throws exeption
// jobname [0], jobparams[1], hypusername [2], hyppassword [3], hypservername [4], hypport[5], oracledburl[6], oracleport[7], sid[8], oracleusername[9], oraclepass[10]
public static void main(String[] args) throws SQLException
DriverManager.registerDriver (new oracle.jdbc.driver.OracleDriver());
Connection con = DriverManager.getConnection("jdbc:oracle:thin:@oracleserver.local.intranet.com:1521:dbname", "username", "pass");
Statement stmt = con.createStatement();
Date date = new Date(); //get the system date for output to both the error log and the DB's lastrun field
System.out.println(date); //print the date out to the console
System.out.println(args[0]); //print the job name to the console
String sourcefolder=""; //we're going to load the job source folder into this variable based on the job's name
String destfolder="";//same with this variable, except it's going to get the destination folder
try {
ResultSet rs = stmt.executeQuery("SELECT * FROM myschema.jobs WHERE NAME =\'"+args[0]+"\'");
while ( rs.next() ) {
sourcefolder = rs.getString("sourcefolder");
destfolder = rs.getString("destfolder");
stmt.executeQuery("UPDATE myschema.jobs SET lastrun ='"+date+"' WHERE name ='"+args[0]+"'");//put this after hyp code
// System.out.println(sourcefolder);
// System.out.println(destfolder);
// System.out.println(description);
stmt.close(); //close up the socket to prevent leaks
}catch(SQLException ex){
System.err.println("SQLException: " + ex.getMessage());
logError(args[0], ex.getMessage());
}That works, and it connects to the database and everything. But when I pass the variables in from the project properties run settings, I get the following exception:
Exception in thread "main" java.sql.SQLException: invalid arguments in call
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:111)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:145)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:207)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:235)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:440)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:164)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:34)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:752)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:207)
at processsqrjob.Main.main(Main.java:42)
Java Result: 1That is with Connection con = DriverManager.getConnection("jdbc:oracle:thin:@oracleserver.local.intranet.com:1521:dbname", "username", "pass"); changed to Connection con = DriverManager.getConnection("jdbc:oracle:thin:@"+args[6]+":"+args[7]+":"+args[8]+"\", \""+args[9]+"\", \""+args[10]+"\"");{code}, with args 6 7 8 and 9 set to url, port, dbinstance, username, and password respectively.
Perhaps it's the way I'm escaping the quotation marks, but I put that same line inside a System.out.println() and it output it exactly as I had typed it in statically before, so I don't know what it could be.
I would really appreciate any advice. Thanks in advance for your time.I think you're mixing up SQL and Java. The Java method expects the user name and password as separate parameters, not encoded in one String. So you shouldn't be concatenating args[9] and args[10] at all, they should remain as separate parameters.
The call should be:DriverManager.getConnection("jdbc:oracle:thin:@" + args[6] + ":"+ args[7] + ":" + args[8], args[9], args[10]);
parameter 1 2 3 -
Passing arguments to VBScript Program Object - Without WScript.Arguments?
I am trying to create a program object with a VBScript that will change the name of a PDF created by a scheduled report. I need to be able to tack on the string "OH_2010_Qtr_1" (or whatever state - OH is used as an example) before the file extension - the VBScript creates that string based on the date the report is run. I want to be able to pass parameters to this script but when I try to do so I get the error "Variable is undefined 'WScript'" when trying to run the program object. I tried creating a batch file that would pass in the parameters and I get a generic error.
How can I pass arguments to my VBScript? The arguments are necessary because this is for multiple instances of the same report, run for different states.For VBScript Program Objects, some injected objects:
For Each arg in Script.Args
' Do something interesting with String arg here
Script.Writeln(arg) ' Output to stdout
Next
and
' Get InfoStore
Set infoStore = Session.Service("", "InfoStore")
Sincerely,
Ted Ueda -
If i pass hi java as an argument to main then it is taken as two seperate argument with hi as first and java as second because of space between hi and java.
How do i pass hi java as one argument itselfThat depends on the enviroment you start your java program from.
Some shells support besides "hi java" also 'hi java' or
hi\ java
for this purpose. -
Passing arguments to main method from a shell script
The main method of my class accept more than 10 arguments so my shell script execute this class like this :
java -cp xxxx mypackage.MyClass $*
The problem is that some of those arguments allows spaces. When i execute this script like this :
myscript.sh firstparam secondparam ...... tenthparm "eleventh param"
or
myscript.sh firstparam secondparam ...... tenthparm 'eleventh param'
the java class consider that my eleventh param is 'eleven' and not 'eleventh param'
The same class works well with an equivalent dos script.I had this problem once also, and I found there are several ways to fix it. One way is to replace all of the spaces in the arguments with _ characters, or you can concantate all of the arguments into one String at runtime (with spaces in between) and use code to separate the arguments out. With the quotation marks, this code would be simple. If the spaces in one argument are used to divide different parts of the argument, just make them spearate arguments.
-
Pass argument to main's method
I'm newbie to JDeveloper. Now I'm using JDeveloper 10.1.3. Could I set the IDE to prompt for input to main's argument as Eclipse and JBuilder do?
Thanks a lot.OK lets say the arg to main was an array of ints. Then how would I execute a program that needed some String values as parameters?
If it is an array of Strings and your program needed ints as parameters, you can always parseInt the String values in the array.
Somebody else will probably be able to pull something out of the JLS that explains it. -
SET/GET not working when I submit one program into Main program.
Hi All,
I am using set/get parameter as follows but somewht it is not working.. Please help.
IF ( uf_instn = 'ACEFR' and uf_messg <> 'BSP' ).
set parameter id 'AJN' field lf_jobname.
set parameter id 'AJC' field gf_jobcount.
ENDIF.
SUBMIT zace_interface
USER sy-uname
VIA JOB lf_jobname
NUMBER gf_jobcount
WITH SELECTION-TABLE lt_seltab
TO SAP-SPOOL
AND RETURN.
in the zace_interface program I have another submit program
submit zrsbdcsub and return
user 'ZACE_INTERFACE'
with mappe eq lf_group
with von eq sy-datum
with bis eq sy-datum
with fehler eq space
with logall eq co_true.
ad inside this submit im using
get parameter id 'AJN' field v_jobname.
get parameter id 'AJC' field v_jobcount.
but i am not able to get the values into v_jobname & v_jobcount.
Can you please help me in this regard. how i will get the values in v_jobname & v_jobcount.
Thanking you in advance
Regards,
PrashantHi..,
any way u r executing the programs in the same session but between diff. internal sessions u can use the IMPORT and EXPORT options ( ABAP MEMORY )
or do one thing...
<b>In the first program Copy these fields into a file in the <b>application server</b>,, and in the Second submit program u retrieve these variable values from the Application server file into these two variables!!</b>
just now i have solved one of the issues of this Kind by using an Application server file.
In the first program..
IF ( uf_instn = 'ACEFR' and uf_messg <> 'BSP' ).
OPEN dataset 'FILE' for output in text mode encoding default.
transfer lf_jobname to 'FILE'.
transfer gf_jobcount to 'FILE'.
CLOSE dataset 'FILE'.
ENDIF.
and instead of using the GET parameters in the second program ..
OPEN dataset 'FILE' for input in text mode encoding default.
read dataset 'FILE' into v_jobname.
read dataset 'FILE' into v_jobcount.
CLOSE dataset 'FILE'.
This has solved my problem !!!!! hope this helps u also!!
regards,
sai ramesh -
Pass parameters into SessionEventListener by using ConnectionPolicy
Hi,
My project is using Eclipselink/JPA with Oracle VPD. I have to pass some parameters into SessionEventListener to set up VPD context. I found couple postings in this forum talked about using ConnectionPolicy to pass in the information. Does anyone could give me a code sample about how to pass a parameter (ex. user ID) into a ConnectionPolicy? I am using JPA, so I didn't see a clear way for me to access ConnectionPolicy. Thanks!I used the following solution and it worked for me
((EntityManagerImpl)em.getDelegate()).getServerSession().getDefaultConnectionPolicy().setProperty("USER_ID", userId);
Then in SessionEventListener, I could use clientSession to obtain "USER_ID" from connection policy. -
How to pass arguments into a Captivate project
Hello,
We use dotNetNuke (DNN) as our Content Management System. We are using tokens in DNN to personalize the screens. We have access to the uses first name and email. I would like to pass this information into a Captivate project. I have seen references in my research to using Javascript to invoke the Captivate project, but I have not found any samples of the source code, nor examples of how to use the passed values in the Captivate presentation. Can someone validate that this functionality exists for Captivate 8 and perhaps point me to a few examples?
Thanks,
PeterSorry. I think I was a bit too vague in my answer.
And I don't know about how you are getting your token value, but that part is up to you.
Just make sure to put it in place of where I wrote "whateveryourtokenvalueiscalled".
1.
create a variable in cp to hold your value. (e.g. holdName)
2.
Add this inside the <head></head> tags of your page (after you export it):
<script>
function = getMyValues () {
if(window.cpAPIInterface)
//assign your token value to the cp variable you created in the project
window.cpAPIInterface.setVariableValue("holdName",whateveryourtokenvalueiscalled);
</script>
3.
Back in your cp project, call to the function at some point.
For example, on page 2, add to the page's action
On Enter:
Execute Javascript
Then in the script window, type this to start up the function:
getMyValues();
I hope that makes sense. I'm not really great at explaining scripting unfortunately. -
Pass commands to running program using command prompt
I have a program written in core java.
This program do not contain any gui. As this program is to start using shell script , there will not be a command prompt open. Now , after program is started , i need to give the commands like \q for exit, \w to open some action etc .....
How can i pass these commands to that already running program.
I expect in the following way-
Open a command prompt
Select a specific path.
when i type \w and enter then the running program should do some action.
Can any one help me?
Program will be running on Linux.Stop cross-posting:
http://forum.java.sun.com/thread.jsp?thread=512664&forum=31&message=2438136
http://forum.java.sun.com/thread.jsp?thread=512663&forum=54&message=2438134
http://forum.java.sun.com/thread.jsp?thread=512267&forum=422&message=2435704
MOD -
How to use dynamic selection screen inputs in main program
hi all,
its a report where in it calls one dynamic selection screen( user need to enter the parameters here) after that i need to use those inputs for some check, can any buddy help how to use/ get that input parameters into main program.
regards,
vara..Hi,
i think u have created that dynamic selection screen in seperate program and calling to ur main program.instead of that u just create that synamic selection screen program as include program and include it in ur main program.
or u need to use set/get parameter id concept.
rgds,
bharat. -
Passing a function argument into LoadListener
Hi, I was wondering if you could help me, imagin that I have
a function. This function gets an argument like this:
function PMFUpdate(PMID){
Spry.Utils.loadURL("GET", "test/update.php?id="+PMID, true);
Now, I want to use LoadListener and EventListeners, like
this:
Spry.Utils.addLoadListener(function(){
Spry.Utils.addEventListener("element", "click",
PMFUpdate(PMID), false);
But I know this dosn't work! How can I pass PMFUPDATE()
argument into LoadListener and use it in EventListener.
Another question, how can I load certain amount of records in
a XMLDataSet without PagedView.
Oh, Last question, I bet, How can I stop loading
XMLDataSet???
Thanks in advance!maby this is what u are looking for in stopping the xml from
loading;
http://labs.adobe.com/technologies/spry/articles/data_api/apis/dataset.html#cancelloaddata
loading data pieces with out paged;
http://labs.adobe.com/technologies/spry/articles/data_api/apis/dataset.html#getdata
element selector; maby this will help u out a bit.
Spry.Utils.addEventListener("element", "click", function(e)
var PMID = (how ever u where gonna get the id)
PMFUpdate(PMID);
return false;
}, false); -
How to pass argument in manifest file
Hi,
I want to pass argument to main class in jar. Is there any option in manifest file.Hmm..
Seems that my sentence above isn't so correct.
It possible to add custom attribute: value pairs into manifest file and
read it later from Java class.
Here is code sample:
public class ManifestTest {
public static void main(String[] args) {
try {
java.util.jar.JarFile jar = new java.util.jar.JarFile(System.getProperty("java.class.path"));
for (java.util.Iterator it = jar.getManifest().getMainAttributes().keySet().iterator();it.hasNext();) {
Object curKey = it.next();
System.out.println("key: " + curKey + ", value: " + jar.getManifest().getMainAttributes().get(curKey));
} catch (Throwable t) {
System.out.println("exception occured: " + t);
}
Maybe you are looking for
-
after unlocking over the phone from ATT and resetting iphone 3gs I keep getting the same error message "could not activate phone" neither Apple Store Tech or ATT were able to fix this . Itunes displays a message saying "there is no SIM installed in t
-
This is driving ME CRAZY!!! It happenned around 11PM Sept 18 2012
-
Update has taken over 2 hours...what do I do?!
The update for blackberry is taking forever! One hour will go by, then I get an error message and then the update starts again, then it stays where it is for another hour, and then I get another error message. It's been 2+ hours!! what do i do? just
-
Hi all, I want to work on my MsWindows file system but dont know which class to start looking. More specifically, is it possible to have a listener responding to file system events like file delete, move, create? Many thanks for your time...Peter
-
JDeveloper tags action method as error
I have a JSF backing bean - tvApplicationDetail - whose class - TVApplicationDetail - is derived from another class - ApplicationDetail. ApplicationDetail has several action methods - e.g., discardChanges. When I use the following EL expression: <af: