MSE is unreachable on WCS until Java program is killed
Hi
I have a problem with my 2700 series Wireless Location Appliance. It works for about a week, then suddenly WCS shows the device as unreachable. If I kill the Java program and then perform a shutdown, it works for about a week before the same fault occurs.
Has anyone experienced this before?
Thanks
TT
JMR1: MSE becomes unreachable from periodically.
CSCtk82237
Description
Symptom:
MSE becomes unreachable from WCS periodically.
Conditions:
MSE 7.0.105.0, WCS 7.0.164.0.
CSCsy13994
Description
Symptom:
MSE shows as unreachable in WCS. The MSE service is up and running and credentials used are correct too.
Conditions:
N/A
Workaround:
Restart WCS services or reboot the WCS server.
Further Problem Description:
There is a problem with the HTTPS session being established between the WCS and the MSE which causes this issue.
Similar Messages
-
MSE often unreachable from WCS
Hi,
I have upgraded MSE in my network from 7.0.105.0 to 7.0.201.204 a week ago.
After the upgrade, often MSE is going to unreachable state from WCS. A restart on MSE with "shutdown -r now" resolves the issue. But again after 2-3 days, it becomes unreachable from WCS. The IP reachability is fine from WCS and WCS communication password also matches.
"/etc/init.d/msed stop" command keep on showing "Shutting down MSE Platform ..." but never actually shuts down. only "shutdown -r now" helps.
getserverinfo is not giving any results.
Please let me know, what can be the possible issue.
Regards,
Madhan kumar GHi,
After restarting MSE, here is the output of Getserverinfo. Can "DB free size (kbytes): 0" be an issue?
Starting MSE Platform, Waiting to check the status.
MSE Platform is up, getting the status
Server Config
Product name: Cisco Mobility Service Engine
Version: 7.0.201.204
Hw Version: V01
Hw Product Identifier: AIR-MSE-3350-K9
Hw Serial Number: MXQ008A5S4
Use HTTP: false
Legacy HTTPS: false
Legacy Port: 8001
Log Modules: -1
Log Level: INFO
Days to keep events: 2
Session timeout in mins: 30
DB backup in days: 2
Services
Service Name: Context Aware Service
Service Version: 7.0.200.204
Admin Status: Enabled
Operation Status: Up
Service Name: Wireless Intrusion Protection Service
Service Version: 1.0.2077.0
Admin Status: Disabled
Operation Status: Down
Server Monitor
Server start time: Sun May 20 10:42:40 AST 2012
Server current time: Sun May 20 10:46:05 AST 2012
Server timezone: Asia/Riyadh
Server timezone offset: 10800000
Restarts: 4
Used Memory (bytes): 443802112
Allocated Memory (bytes): 994770944
Max Memory (bytes): 1908932608
DB virtual memory (kbytes): 0
DB virtual memory limit (bytes): 0
DB disk memory (bytes): 7104153216
DB free size (kbytes): 0
Active Sessions
Session ID: 12713
Session User ID: 2
Session IP Address: 172.18.5.15
Session start time: Sun May 20 10:43:06 AST 2012
Session last access time: Sun May 20 10:45:08 AST 2012
Context Aware Service
Total Active Elements(Wireless Clients, Tags, Rogue APs, Rogue Clients, Interferers, Wired Clients): 1107
Active Wireless Clients: 1107
Active Tags: 0
Active Rogue APs: 0
Active Rogue Clients: 0
Active Interferers: 0
Active Wired Clients: 0
Active Elements(Wireless Clients, Rogue APs, Rogue Clients, Interferers, Wired Clients, Tags) Limit: 6000
Active Sessions: 1
Wireless Clients Not Tracked due to the limiting: 250
Tags Not Tracked due to the limiting: 0
Rogue APs Not Tracked due to the limiting: 0
Rogue Clients Not Tracked due to the limiting: 0
Interferers Not Tracked due to the limiting: 0
Wired Clients Not Tracked due to the limiting: 0
Total Elements(Wireless Clients, Rogue APs, Rogue Clients, Interferers, Wired Clients) Not Tracked due to the limiting: 250
Context Aware Sub Services
Subservice Name: Aeroscout Tag Engine
Admin Status: Disabled
Operation Status: Down
Subservice Name: Cisco Tag Engine
Admin Status: Enabled
Operation Status: Up
Regards,
Madhan kumar G -
Problem while running dos command from java program
Dear friends,
I need to terminate a running jar file from my java program which is running in the windows os.
For that i have an dos command to find process id of java program and kill by using tskill command.
Command to find process id is,
wmic /output:ProcessList.txt process where "name='java.exe'" get commandline,processid
This command gives the ProcessList.txt file and it contains the processid. I have to read this file to find the processid.
when i execute this command in dos prompt, it gives the processid in the ProcessList.txt file. But when i execute the same command in java program it keeps running mode only.
Code to run this command is,
public class KillProcess {
public static void main(String args[]) {
KillProcess kProcess = new KillProcess();
kProcess.getRunningProcess();
kProcess = new KillProcess();
kProcess.readProcessFile();
public void getRunningProcess() {
String cmd = "wmic /output:ProcessList.txt process where \"name='java.exe'\" get commandline,processid";
try {
Runtime run = Runtime.getRuntime();
Process process = run.exec(cmd);
int i = process.waitFor();
String s = null;
if(i==0) {
BufferedReader stdInput = new BufferedReader(new
InputStreamReader(process.getInputStream()));
while ((s = stdInput.readLine()) != null) {
System.out.println("--> "+s);
} else {
BufferedReader stdError = new BufferedReader(new
InputStreamReader(process.getErrorStream()));
while ((s = stdError.readLine()) != null) {
System.out.println("====> "+ s);
System.out.println("Running process End....");
} catch(Exception e) {
e.printStackTrace();
public String readProcessFile() {
System.out.println("Read Process File...");
File file = null;
FileInputStream fis = null;
BufferedReader br = null;
String pixieLoc = "";
try {
file = new File("ProcessList.txt");
if (file.exists() && file.length() > 0) {
fis = new FileInputStream(file);
br = new BufferedReader(new InputStreamReader(fis, "UTF-16"));
String line;
while((line = br.readLine()) != null) {
System.out.println(line);
} else {
System.out.println("No such file");
} catch (Exception e) {
e.printStackTrace();
return pixieLoc;
} when i remove the process.waitFor(), then while reading the ProcessList.txt file, it says "No such file".
if i give process.waitFor(), then it's in running mode and program is not completed.
Colud anyone please tell me how to handle this situation?
or Is there anyother way to kill the one running process in windows from java program?
Thanks in advance,
SathishHi masijade,
The modified code is,
class StreamGobbler extends Thread
InputStream is;
String type;
StreamGobbler(InputStream is, String type)
this.is = is;
this.type = type;
public void run()
try
InputStreamReader isr = new InputStreamReader(is, "UTF-16");
BufferedReader br = new BufferedReader(isr);
String line=null;
while ( (line = br.readLine()) != null)
System.out.println(type + ">" + line);
} catch (IOException ioe)
ioe.printStackTrace();
public class GoodWindowsExec
public static void main(String args[])
try
String osName = System.getProperty("os.name" );
String[] cmd = new String[3];
if( osName.equals( "Windows 95" ) )
cmd[0] = "command.com" ;
cmd[1] = "/C" ;
cmd[2] = "wmic process where \"name='java.exe'\" get commandline,processid";
} else {
cmd[0] = "cmd.exe" ;
cmd[1] = "/C" ;
cmd[2] = "wmic process where \"name='java.exe'\" get commandline,processid";
Runtime rt = Runtime.getRuntime();
System.out.println("Execing " + cmd[0] + " " + cmd[1]
+ " " + cmd[2]);
Process proc = rt.exec(cmd);
System.out.println("Executing.......");
// any error message?
StreamGobbler errorGobbler = new
StreamGobbler(proc.getErrorStream(), "ERROR");
// any output?
StreamGobbler outputGobbler = new
StreamGobbler(proc.getInputStream(), "OUTPUT");
// kick them off
errorGobbler.start();
outputGobbler.start();
// any error???
int exitVal = proc.waitFor();
System.out.println("ExitValue: " + exitVal);
} catch (Throwable t)
t.printStackTrace();
}when i execute the above code, i got output as,
Execing cmd.exe /C wmic process where "name='java.exe'" get commandline,processid
and keeps in running mode only.
If i execute the same command in dos prompt,
CommandLine
ProcessId
java -classpath ./../lib/StartApp.jar;./../lib; com.abc.middle.startapp.StartAPP 2468
If i modify the command as,
cmd.exe /C wmic process where "name='java.exe'" get commandline,processid > 123.txt
and keeps in running mode only.
If i open the file when program in running mode, no contents in that file.
If i terminte the program and if i open the file, then i find the processid in that file.
Can you help me to solve this issue? -
Running a java program a set number of times
This is a general question. Is it possible to make a java program run only 5 times for the sake of arguement.
Basically I want to write a program that will give the user some flexibility when it will actually run another Java program, but I only want them to be able to say "not now' for a set number of times. When the last time comes the other program will launch. I was initially thinking of the Do Whilw loop, but this needs to work when the program is restarted.
Program starts, it has 5 times it will run before it does something else(doesn't really matter now I think). User takes option "Not Now" and the program ends, but warns the user this will run 4 more times before you will need to do something.
This process will repeat until the user takes the option "Ok install now" or the time limit expires and the install occurs anyway. Can someone point me in the right direction.ok I see so it's like one those programs that you download for free on the internet and they give you a set amount times to use it before you have to pay for it. but in this case when the number of times you use it equals 5 (or when the user clicks ok) a different java app will open automatically.
My first thought would be to Write a Serialized object to disk using objectOutputStream that stores the number of times the application has been opened. and each time the program runs it checks for the serialized object and then you can do something like what I posted before. of course if were worried about security the user could always look for the object and erase it, if so then I guess we would have to come up with another plan of attack
Hope this helps -
Hi there, im really new and have just started programming in Java, i have to create a java program which implement threads. Thread.Wait, thread.start them etc.
Here is the problem, any guidance would be great cheers guys
The manager of a company employs 3 secretaries who are of varying ability, but who all work extremely fast. Secretary A is the most experienced secretary and is capable of typing up a letter once every second. Secretary B is less experienced and is capable of typing up a letter once every 2 seconds. Secretary C is the junior secretary and is capable of typing up a letter once every 4 seconds. When a secretary has typed up a letter he leaves it in the manager?s tray for him to remove and sign. The manager removes and signs a letter from the tray once every 2 seconds. The tray can hold a maximum of 5 letters at a time. The tray?s limited capacity sometimes causes the various workers to be delayed. For example, if the tray is full after a letter has been typed, the secretaries must wait until the manager makes a space available before they can add another letter to the tray. Similarly, the manager must wait for at least one letter to appear in the tray before he can take it out and sign it.
In your program, make use of threads to represent each of the workers (the 3 secretaries and the manager), so that they can work in parallel. You will also need to declare a tray object, and ensure that all communication is properly synchronised to avoid indeterminacy and deadlock. While an office worker is busy typing a letter or signing it, you should send that thread to sleep for the appropriate time period. This can be achieved with a call to:
Thread.sleep(m);
where m is the number of milliseconds for which the thread should suspend.
The output from your program should take the form of a running commentary on the activity taking place in the office. An extract from it might look something like this (though it is up to you how you word this):
Secretary A is ready to type a letter
Secretary A has typed a letter, number now typed = 6
Tray full. Secretary must wait until a letter has been removed before adding another
Secretary C has typed a letter, number now typed = 2
Tray full. Secretary must wait until a letter has been removed before adding another
A letter has been removed from the tray. Tray = 4
The Manager has taken a letter from the tray to sign, number signed = 4
The Manager is ready to sign a letter
etc
Run your simulation until the secretaries have typed and filed 7 letters each, and the manager has removed and signed all 21 letters.
Thanks againThen you're probably better off enlisting one-on-one, in-person help from your instructor, a classmate, or a private tutor, or joining a study group. Forums like this are not well-suited to tutoring you from the ground up.
If you're doing multithreaded homework and you don't even know where to start, it sounds like ether the instructor is horrible or you're in over your head, or you just haven't been keeping up with the class.
Good luck. -
How to use another java program to stop this running prpgram???
Dear Sir:
I have following code and I run it success,
import java.util.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;
public class CertainAndRepeatTime{
public static void main(String[] args) throws IOException{
int delay = 1;
Timer timer = new Timer();
ActionListener actionListener = new ActionListener() {
public void actionPerformed(ActionEvent actionEvent) {
System.out.println("Hello World Timer");
System.out.println("What do you want (Certain time or Repeat time)?");
System.out.print("Please enter \'C\' or \'R\' for that: ");
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
String ans = in.readLine();
System.out.print("Please enter ans=" + ans + " IsTrue= " + (ans.equals("R") || ans.equals("r")) +"\n");
if (ans.equals("C") || ans.equals("c")){
//System.out.println("This line is printed only once start...");
timer.schedule(new TimerTask(){
public void run(){
System.out.println("This line is printed only once.");
},delay,1);
else if(ans.equals("r") || ans.equals("R")){
timer.scheduleAtFixedRate(new TimerTask(){
public void run(){
System.out.println("This line is printed repeatedly.");
},delay, 1000);
while(true){
//System.out.println("Charles print This line is printed repeatedly.");
} //This will make your main thread hang.
else{
System.out.println("Invalid Entry.");
System.exit(0);
System.exit(0);
}But I hope to use another java program to stop it when it is running instead of pressing CRTL + C to stop it.
How to do it??
Any example??
Thanks a lot!!Sorry, I think i did not express cearly. It is my fault.
I re-write my requirements again:
I have
Class AAA1.java,
Class AAA2.java,
Class AAA3.java,
Class AAA20.java...
etc
they all look like the program I posted first time,, once executed, they will run for ever, and they will be stopped until I press CRTL + C;
Now I hope to use another java class StopProgram.java to stop them 1 by 1 or at once instead of pressing CRTL + C;
In this case, how to code this StopProgram.java ??
Thanks -
How Can we stop the execution of java program which contain infinite loop
Dear All,
I create one .bat file which which execute the simple java program
I write one java program which execute above .bat file using instance of Runtime Class of java
It's work fine if java program which is executed by .bat file is simple(Which has normal termination)
But if that program contain inifinte loop then that file will goes on executing untill I close it manually
So i want a solution in java which close that bat file (command window ) which is in running condtion
If there any solution please replay me
I try to close that .bat file using destroy() ,stop() method of Process and Runtime , Thread Class
but it did not give me correct output
.bat file still running !!!!!!!!!
Thanks in advanceWhy not use javaw.exe to make the app run so you don't need the dos window (which is presumably what you are actually talking about when you say bat file).
-
Dear Forummembers,
I am student doing postgraduate studies in IT.i have some queries related to one of my programming staff.i am very much new into Java programming and i am finding it a bit difficult to handle this program.The synopsis of the program is given below -
You are required to design and code an object-oriented java program to process bookings for a theatre perfomance.
Your program will read from a data file containing specifications of the performance,including the names of the theatre, the play and its author and the layout of the theatre consisting of the number of seats in each row.
It will then run a menu driven operation to accept theatre bookings or display the current
status of seating in the theatre.
The name of the file containing the details of the performance and the theatre should be
provided at the command line, eg by running the program with the command:
java Booking Theatre.txt
where Theare.txt represents an example of the data file.
A possible data file is:
Opera
U and Me
Jennifer Aniston
5 10 10 11 12 13 14
The data provided is as follows
Line 1
Name of the Theatre
Line 2
Name of the play being performed
Line 3
Name of the author of the play being performed
Line 4
A list of the lengths (number of seats) of each row in the theatre, from front to
back.
The program must start by reading this file, storing all the appropriate parameters and
establishing an object to accept bookings for this performance with all details for the theatre
and performance.
The program should then start a loop in which a menu is presented to the user, eg:
Select from the following:
B - Book seats
T - Display Theatre bookings
Q - Quit from the program
Enter your choice:
And keep performing selected operations until the user�s selects the quit option, when the
program should terminate.
T - Display Theatre bookings
The Display Theatre Bookings option should display a plan of the theatre. Every available
seat should be displayed containing its identification, while reserved seats should contain an
Rows in each theatre are indicated by letters starting from �A� at the front. Seats are
numbered from left to right starting from 1. A typical seat in the theatre might be designated
D12, representing seat 12 in row D.
B - Book seats
The booking of seats is to offer a number of different options.
First the customer must be asked how many adjacent seats are
required. Then start a loop offering a further menu of choices:
Enter one of the following:
The first seat of a selected series, eg D12
A preferred row letter, eg F
A ? to have the first available sequence selected for you
A # to see a display of all available seats
A 0 to cancel your attempt to book seats
Enter your selection:
1. If the user enters a seat indentifier such B6, The program should attempt to
reserve the required seats starting from that seat. For example if 4 seats are
required from B6, seats B6, B7, B8 and B9 should be reserved for the customer,
with a message confirming the reservation and specifying the seats reserved..
Before this booking can take place, some testing is required. Firstly, the row
letter must be a valid row. Then the seat number must be within the seats in the
row and such that the 4 seats would not go beyond the end of the row. The
program must then check that none of the required seats is already reserved.
If the seats are invalid or already reserved, no reservation should be made and the
booking menu should be repeated to give the customer a further chance to book
seats.
If the reservation is successful, return to the main menu.
2. The user can also simply enter a row letter, eg B.IN this case, the program should
first check that the letter is a valid row and then offer the user in turn each
adjacent block of the required size in the specified row and for each ask whether
the customer wants to take them. Using the partly booked theatre layout above, if
the customer wanted 2 seats from row B, the customer should be offered first:
Seats B5 to B6
then if the customer does not want them:
Seats B10 to B11
and finally
Seats B11 to B12
If the customer selects a block of seats, then return to the main menu. If none are
selected, or there is no block of the required size available in the row, then report
that no further blocks of the required size are available in the row and repeat the
booking menu.
3. If the user enters a ? the program should offer the customer every block of seats
of the required size in the whole theatre. This process should start from the first
row and proceed back a row at a time. For example, again using the partially
booked theatre shown above, if the user requested 9 seats, the program should
offer in turn:
Seats A1 to A9
Seats C1 to C9
Seats C2 to C10
Seats E3 to E11
Seats E4 to E12
If the customer selects a block of seats, then return to the main menu. If none are
selected, or there is no block of the required size available in the whole theatre,
then report that no further blocks of the required size are available and repeat the
booking menu.
4. If the user enters a # the program should display the current status of the seating
in the theatre, exactly the same as for the T option from the main menu and then
repeat the booking menu.
5. If the user enters a 0 (zero), the program should exit from the booking menu back
to the main menu. If for example the user wanted 9 seats and no block of 9 was
left in the theatre, he would need to make two separate smaller bookings.
The program should perform limited data validation in the booking process. If a single
character other than 0, ? and # is entered, it should be treated as a row letter and then tested
for falling within the range of valid rows, eg A to H in the example above. Any invalid row
letters should be rejected.
If more than one character is entered, the first character should be tested as a valid row letter,
and the numeric part should be tested for falling within the given row. You are NOT
required to test for valid numeric input as this would require the use of Exception handling.
You are provided with a class file:
Pad.java
containing methods that can be used for neat alignment of the seat identifiers in the theatre
plan.
File Processing
The file to be read must be opened within the program and if the named file does not exist, a
FileNotFoundException will be generated. It is desirable that this Exception be caught and
a corrected file name should be asked for.
This is not required for this assignment, as Exception handling has not been covered in this
Unit. It will be acceptable if the method simply throws IOException in its heading.
The only checking that is required is to make sure that the user does supply a file on the
command line, containing details of the performance. This can be tested for by checking the
length of the parameter array args. The array length should be 1. If not, display an error
message telling the user the correct way to run the program and then terminate the program
System.exit(0);
The file should be closed after reading is completed.
Program Requirements
You are expected to create at least three classes in developing a solution to this problem.
There should be an outer driving class, a class to represent the theatre performance and its
bookings and a class to represent a single row within the theatre.
You will also need to use arrays at two levels. You will need an array of Rows in the Theatre
class.
Each Row object will need an array of seats to keep track of which seats have been reserved.
Your outer driving class should be called BookingOffice and should be submitted in a file named BookingOffice.java
Your second, third and any additional classes, should be submitted in separate files, each
class in a .java file named with the same name as the class
I am also very sorry to give such a long description.but i mainly want to know how to approach for this program.
also how to designate each row about it's column while it is being read from the text file, how to store it, how to denote first row as row A(second row as row B and so on) and WHICH CLASS WILL PERFORM WHICH OPERATIONS.
pls do give a rough guideline about designing each class and it's reponsibilty.
thanking u and looking forward for your help,
sincerely
RKyes i do know that........but can u ppl pls mention
atleast what classes shud i consider and what will be
the functions of each class?No, sorry. Maybe somebody else will, but in general, this is not a good question for this forum. It's too broad, and the question you're asking is an overall problem solving approach that you should be familiar with at this point.
These forums are best suited to more specific questions. "How do I approach this homework?" is not something that most people are willing or able to answer in a forum like this. -
Using a UNIX shell script to run a Java program (packaged in a JAR)
Hi,
I have an application (very small) that connects to our database. It needs to run in our UNIX environment so I've been working on a shell script to set the class path and call the JAR file. I'm not making a lot of progress on my own. I've attached the KSH (korn shell script) file code.
Thanks in advance to anyone who knows how to set the class path and / or call the JAR file.
loggedinuser="$(whoami)"
CFG_DIR="`dirname $0`"
EXIT_STATUS=${SUCCESS}
export PATH=/opt/java1.3/bin:$PATH
OLDDIR="`pwd`"
cd $PLCS_ROOT_DIR
java -classpath $
EXIT_STATUS=$?
cd $OLDDIR
echo $EXIT_STATUS
exit $EXIT_STATUSHi,
I have an application (very small) that connects to
our database. It needs to run in our UNIX environment
so I've been working on a shell script to set the
class path and call the JAR file.
#!/bin/sh
exec /your/path/to/java -cp your:class:paths:here -MoreJvmOptionsHere your.package.and.YourClass "$@"Store this is a file of any name, e.g. yuckiduck, and then change the persmissions to executechmod a+x yuckiduckThe exec makes sure the shell used to run the script does not hang around until that java program finishes. While this is only a minor thing, it is nevertheless infinite waste, because it does use some resources but the return on that investment is 0.
CFG_DIR="`dirname $0`"You would like to fetch the directory of the installation out of $0. This breaks as soon as someone makes a (soft) link in some other directory to this script and calls it by its soft linked name. Your best bet if you don't know a lot of script programming is to hardcode CFG_DIR.
OLDDIR="`pwd`"
cd $PLCS_ROOT_DIRVery bad technique in UNIX. UNIX supports the notion of a "current directory". If your user calls this program in a certain directory, you should assume that (s)he does this on purpose. Making your application dependent on a start in a certain directory ignores the very helpful concept of 'current directory' and is therefore a bug.
cd $OLDDIRThis has no effect at all because it only affects the next two lines of code and nothing else. These two lines, however, don't depend on the current directory. In particular this (as the cd above) does not change the current directory for the interactive shell your user is working in.
echo $EXIT_STATUS
exit $EXIT_STATUSEchoing the exit status is an interesting idea, but if you don't do this for a very specific purpose, I recommend not to do this for the simple reason that no other UNIX program does it.
Harald. -
Errors driving me crazy! although compiles fine
I am working on a project for an online class - I am teaching myself really! My last assignment I cannot get to work. I had a friend who "knows" what he is doing help me. Well that didn't work out too well, my class is a beginner and he put stuff in that I never used yet. I am using Jgrasp and Eclipse. I really am trying but, there really is no teacher with this online class. I can't get questions answered in time and stuff goes past due. I am getting this error:
Exception in thread "main" java.lang.NullPointerException
at java.io.Reader.<init>(Reader.java:61)
at java.io.InputStreamReader.<init>(InputStreamReader .java:55)
at java.util.Scanner.<init>(Scanner.java:590)
at ttest.main(ttest.java:54)
----jGRASP wedge2: exit code for process is 1.
----jGRASP: operation complete.
This is my code:
import java.util.*;
import java.io.*;
public class ttest
static Scanner console = new Scanner(System.in);
public static void main(String[] args)throws IOException
FileInputStream fin = null; // input file reference
PrintStream floser = null; // output file references
PrintStream fwinner = null;
Scanner rs; // record scanner
Scanner ls; // line scanner
String inputrec; // full record buffer
int wins; // data read from each record
int losses;
double pctg;
String team;
String best = null; // track best/worst team(s)
String worst = null;
double worst_pctg = 2.0; // track best/worst pctgs
double best_pctg = -1.0;
int winner_count = 0; // counters for winning/losing records
int loser_count = 0;
// should check args.length and if not == 1 generate error
try
Scanner inFile = new Scanner(new FileReader("football.txt"));
catch( FileNotFoundException e )
System.exit( 1 );
try
floser = new PrintStream( new FileOutputStream( "loser.txt" ) );
fwinner = new PrintStream( new FileOutputStream( "winner.txt" ) );
catch( FileNotFoundException e )
System.out.printf( "unable to open an output file: %s\n", e.toString() );
System.exit( 1 );
try
rs = new Scanner( fin );
while( rs.hasNext( ) )
inputrec = rs.nextLine( ); /* read next line */
ls = new Scanner( inputrec ); /* prevents stumble if record has more than expected */
team = ls.next( );
wins = ls.nextInt();
losses = ls.nextInt();
if( wins + losses > 0 )
pctg = ((double) wins)/(wins + losses);
else
pctg = 0.0;
if( pctg > .5 )
if( pctg > best_pctg )
best_pctg = pctg;
best = team;
else
if( pctg == best_pctg )
best += ", " + team;
fwinner.printf( "%10s %2d %2d %5.3f\n", team, wins, losses, pctg );
winner_count++;
else
if( pctg < worst_pctg )
worst_pctg = pctg;
worst = team;
else
if( pctg == worst_pctg )
worst += ", " + team;
floser.printf( "%10s %2d %2d %5.3f\n", team, wins, losses, pctg );
loser_count++;
fin.close( );
floser.close( );
fwinner.close( );
catch( IOException e ) {
System.out.printf( "I/O error: %s\n", e.toString() );
System.exit( 1 );
System.out.printf( "%d teams have winning records; %d teams have losing records\n", winner_count, loser_count );
System.out.printf( "Team(s) with best percentage: %5.3f %s\n", best_pctg, best );
System.out.printf( "Team(s) with worst percentage: %5.3f %s\n", worst_pctg, worst );
The assignment is:
Create a Java program to read in an unknown number of lines from a data file. You will need to create the data file. The contents of the file can be found at the bottom of this document. This file contains a football team's name, the number of games they have won, and the number of games they have lost.
Your program should accomplish the following tasks:
1. Process all data until it reaches the end-of-file. Calculate the win percentage for each team.
2. Output to a file ("top.txt") a listing of all teams with a win percentage greater than .500. This file should contain the team name and the win percentage.
3. Output to a file ("bottom.txt") a listing of all teams with a win percentage of .500 or lower. This file should contain the team name and the win percentage.
4. Count and print to the screen the number of teams with a record greater then .500 and the number of teams with a record of .500 and below, each appropriately labeled.
5. Output in a message box: the team with the highest win percentage and the team with the lowest win percentage, each appropriately labeled. If there is a tie for the highest win percentage or a tie for the lowest win percentage, you must output all of the teams.
Dallas 5 2
Philadelphia 4 3
Washington 3 4
NY_Giants 3 4
Minnesota 6 1
Green_Bay 3 4import java.util.*;
import java.io.*;
public class ttest
static Scanner console = new Scanner(System.in);
public static void main(String[] args)throws IOException
FileInputStream fin = null; // input file reference
PrintStream floser = null; // output file references
PrintStream fwinner = null;
Scanner rs; // record scanner
Scanner ls; // line scanner
String inputrec; // full record buffer
int wins; // data read from each record
int losses;
double pctg;
String team;
String best = null; // track best/worst team(s)
String worst = null;
double worst_pctg = 2.0; // track best/worst pctgs
double best_pctg = -1.0;
int winner_count = 0; // counters for winning/losing records
int loser_count = 0;
// should check args.length and if not == 1 generate error
try
Scanner inFile = new Scanner(new FileReader("football.txt"));
catch( FileNotFoundException e )
System.exit( 1 );
try
floser = new PrintStream( new FileOutputStream( "loser.txt" ) );
fwinner = new PrintStream( new FileOutputStream( "winner.txt" ) );
catch( FileNotFoundException e )
System.out.printf( "unable to open an output file: %s\n", e.toString() );
System.exit( 1 );
try
rs = new Scanner( fin );
while( rs.hasNext( ) )
inputrec = rs.nextLine( ); /* read next line */
ls = new Scanner( inputrec ); /* prevents stumble if record has more than expected */
team = ls.next( );
wins = ls.nextInt();
losses = ls.nextInt();
if( wins + losses > 0 )
pctg = ((double) wins)/(wins + losses);
else
pctg = 0.0;
if( pctg > .5 )
if( pctg > best_pctg )
best_pctg = pctg;
best = team;
else
if( pctg == best_pctg )
best += ", " + team;
fwinner.printf( "%10s %2d %2d %5.3f\n", team, wins, losses, pctg );
winner_count++;
else
if( pctg < worst_pctg )
worst_pctg = pctg;
worst = team;
else
if( pctg == worst_pctg )
worst += ", " + team;
floser.printf( "%10s %2d %2d %5.3f\n", team, wins, losses, pctg );
loser_count++;
fin.close( );
floser.close( );
fwinner.close( );
catch( IOException e ) {
System.out.printf( "I/O error: %s\n", e.toString() );
System.exit( 1 );
System.out.printf( "%d teams have winning records; %d teams have losing records\n", winner_count, loser_count );
System.out.printf( "Team(s) with best percentage: %5.3f %s\n", best_pctg, best );
System.out.printf( "Team(s) with worst percentage: %5.3f %s\n", worst_pctg, worst );
} -
How to compile dunamically genrated java files through java program?
Hi, I have a requirement where i generate java files from WSDL dynamically using wsdl2java jaxbri. I need to compile these files dynamically on the fly and jar it. Everything should happen through java program. Bcos everything is dynamic here, no information is known (like dir, file names ...) until the runtime. Everything is user fed.
the directories may contain other directories with java files. its recursive
i tried com.sun.tools.javac.Main.. but either its not scaling to my needs or i donno how to wok with this.
is there any option to compile the java files as they are created thru JAXBRI (wsdl2java)?
any help is appreciated..
-smy requirement is :
i create java files from wsdl2java (axis).. i need to compile all the java files.. directories with in the directories (recursive)...
as bcos the the java files have inter-dependencies they have to be compiled as a bunch something like (java *.java). I donno how to do this in javac.Main tool
Once all these files are compiled i need to create a jar out of them
Any help is appreciated! -
Hi all,
I was looking for this java programming problem which had to do with a large building and there was some gallons of water involved in it too somehow and we had to figure out the height of the buiding using java. This problem is also in one of the java books and I really need to find out all details about this problem and the solution. NEED HELP!!
Thanks
macYes, it will. The water will drain from the bottom of
the tank until the pressure from the water inside the
tank equals the pressure from the pipe. In other
words, without a pump, the water will drain out until
there is the same amount of water in the tank as in
the pipe The water pressure depends on the depth of the water, not the volume. So once the depth of the water inside the pipe reaches the same depth as the water inside the tank it will stop flowing. This will never be above the height of the tank.
I found this applet which demonstrates our problem. If you run it you can drag the guy up to the top, when water in his hose reaches the level of the water in the tank it will stop flowing out. -
Pass in date from shell script to java program
Hi,
I need to pass in some parameter to my java program.
eg 'java SomeProgram yyyy mm dd hh mm ss'
How do i use the shell script to generate the valeus for the year, mth day etc?
The program is running once everyday.
I tried $argu0 = `date+%y`
java SomeProgram $argu0
but not working... thanks for your help!Then, why would you want to use 'date' to provide
'now' to a Java program when you could just use new
java.util.Date() which probably makes the same call
as the Unix 'date' command?That works until you need to use a date other than 'now.'
public static final String ISO_DATE = "yyyy-MM-dd HH:mm:ss";
public static void main(String[] args) {
SimpleDateFormat sdf = (SimpleDateFormat) SimpleDateFormat
.getDateTimeInstance();
sdf.applyPattern(ISO_DATE);
try {
Date d = sdf.parse(args[0]);
// rest of code here
} catch (ParseException e) {
// handle exception
}Users will have to enclose there input with quotes otherwise the JVM will consider their input as two parameters, or you can change the pattern to include a character between dd and HH. -
How can I stop running java program in console ?
Hi , my name is Luck , I will explain :
- I have created java script which execute commands from cmd level
- In java script I'm starting *. bat file which retrieve information from system example : hostname > C:\test and then I'd like to load from the file C:\test this host name example : MyComputer
but the problem is that my script execute reading from the file C:\test before any information will be delivered to this file , how can make a system to wait until bat file will finish doing its task , please , if you know the answer post me back , thank youI have created java script which execute commands
from cmd levelI'd be surprised if you did. You probably wrote a Java program. I never heard of Javascript being run from the console.
- In java script I'm starting *. bat file which
retrieve information from system example :
hostname > C:\test and then I'd like to
load from the file C:\test this host
name example : MyComputer???
but the problem is that my script execute reading
from the file C:\test before any information will be
delivered to this file , how can make a system to
wait until bat file will finish doing its task ,
please , if you know the answer post me back , thank
youWhat are you talking about? This isn't Java, this isn't Javascript, I have no idea what it is. It's already difficult to understand your problem description. -
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"
Maybe you are looking for
-
Oracle9i Enterprise Edition Release 9.2.0.8.0 - 64bit Production With the Partitioning, OLAP and Oracle Data Mining options JServer Release 9.2.0.8.0 - Production Report Builder 10.1.2.0.2 ORACLE Server Release 10.1.0.4.2 Oracle Procedure Builder 10.
-
FIM 2010 SQL MA - Multi Valued Tables
Hello everyone, i'm having a small issue trying to sync a multi valued attribute to my fim portal here's the config : 2 SQL Tables : Table 1 : has users and their personal information View 1 : is a view i created that assembles the User ID, and User
-
Sun StorageTek 5320C NAS, SNMP and hot spare
Hello, We have 5320 NAS cluster system, and one Controller Unit with 16 FC 300 GB hard drives. Drives are as follows: from 1 to 8 hard drive -> RAID5 from 9 to 15 had drive -> RAID5 16 hard drive -> Global hot spare SNMP query for hard disk status: $
-
Why are static methods called with null references,valid ?
This is my code : package inheritance; public class inh6{ public static void method(){ System.out.println("Called"); public static void main(String[] args){ inh6 t4 = null; t4.method(); O/P : CalledHere t4 is a null refe
-
When i download a vindeo into quick time it makes the file bigger when i want to be making it smaller! How do i change this?