| ajax server design question |
|
 |
Index ‹ java-programmer
|
- Previous
- 1
- selective page accessI just need a, "it can be done" answer. I want to build a web
application, which will allow users to access pages, based on four
different user attributes, namely, "department", "trading partner
type", "designation", and "customer". I want to allow declarative
access, meaning I want even lay administrators to edit a configuration
text file so that a new or old user's profile can be changed. Can this
be done just with Tomcat and Struts, or do I need to used EJBs?
Thanks,
Yasaswi
- 1
- static initialization of arraysHi guys,
I started to write some Java today, see the code below. What I want to
do is produce a static array V from several static arrays A, B, ...,
but I don't want V to have any duplicate elements. I was wondering if
there is a better way of coding this up? Also, is there a way to
guarantee that arrays A, B, ... are constructed before S and V without
relying on the order in which they are declared?
Thanks,
Johan
-----------------------------------------
import java.util.*;
class StringSet extends TreeSet<String>
{
public void addAll( String[] strings )
{
for (String s: strings )
{
add( s );
}
}
};
class Main
{
private static final String[] A = { "A1", "A2", "B1" };
private static final String[] B = { "B1", "B2" };
...
private static final StringSet S =
new StringSet ()
{
{
addAll( A );
addAll( B );
...
}
};
private static final String[] V = S.toArray(new String[S.size()]);
...
}
- 2
- why can't load the picture?
can't load the picture
why?
thanks!
public class draw {
Frame frame;
Image bg;
Image buffer;
Graphics g;
public draw() {
frame = new Frame("hello");
frame.setSize(500, 500);
frame.show();
bg = Toolkit.getDefaultToolkit().getImage("cdog1.gif");
buffer = frame.createImage(400, 400);
g = buffer.getGraphics();
g.drawImage(bg, 0, 0, frame);
frame.getGraphics().drawImage(buffer, 0, 0, frame);
}
public static void main(String args[]) {
new draw();
}
}
- 3
- Problem wih the progressbar in statusbar with frames in IEHi, i've an anoying problem.
SITUATION
I created a webpage with CSP (crystal Enterprise ASP pages) and
Javascript. The page consists of frames. When someone pushes a button
in one frame (grouping of cubes and reports) i load another frame with
report and cube links. When someone pushes a report or a Cube link an
ActiveX or a DHTML viewer is started.
THE PROBLEM
The problem is that when someone pushes a button in the GroupFrame the
reports and cube links are loaded correctly, but the progressbar below
in the statusbar keeps running. It's showing that not everything is
loaded yet, but everything is loaded!!!
The next time when i push a button in the group frame all the links
are corerectly loaded but now there's is no progressbar (so correct)
and then the next time when i push the link in the groupframe again
Again a progressbar is continously shown (what the heck??!!)
It has something to do with frames because when i load the information
in a pop up screen it doesn't show a progressing progress bar.
I hope that someone can help me with this problem..
Thx
Hennie
- 4
- JMenusHello everyone! I was hoping I could get a few pointers on the code below.
Basically the program is using JMenus. When the program first runs the only
menu that is there is Session wherein users may login to the system. There
is a tab for an existing user and a new user. The new user is working
alright. However, existing user is not. I am not quite sure how to get
around that one. I have to check the ArrayList Users to find out if the
password entered matches one in there or not, if it does then they enter the
system, if not is asks them to enter the correct password. I have that in a
for loop right now, but that is not working, does anyone have any ideas for
me? This part of the code is in passwordfield.addActionListener and signin.
addActionListener. Next after a user enters the system 3 more menus are
available...Read File, Sales Data Entry, and Write File. Read File has two
tabs - Text File and Object File. Text File just reads a text file and puts
in the Salesman ArrayList and Object File reads in objects and prints them to
the text area. Write File has two tabs - Write Text File and Write Object
File. Write Text File writes the Salesman Array List to a text file and
prints it to the text area and Write Object File writes a text file as
objects to another file. Then Sales Data Entry has two tabs - Update Current
Salesman and Enter New Salesman. I actually haven't put the calculations in
the code yet, but they will basically add the salesman data to the Salesman
ArrayList.
So the problems I seem to having other than the password part above are:
(1) with currencyFormat.format(total) in writetextFile() and readobjectFile()
it is not allowing it to put it in currency format and I don't really
understand that. I have import java.text.NumberFormat; in SalesMenu(). Does
anyone have any idea of why this might be happening?
(2) output (the textarea) is not being read in the writetextFile() and
readobjectFile()...i am sure this is something simple I am just not realizing.
Does anyone know why it's not allowing me to print to the output?
I realize this is a long piece of code, but if anyone has the time to help me
out I would greatly appreciate it. I didn't know how much of the code to
post, so I just decided to post the whole thing. Again, I haven't done the
calculations yet, but I am going to work on those right now. Thank you for
any tips you may be able to give! I appreciate it!
[code]
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.text.NumberFormat;
import java.io.*;
import java.util.*;
public class SalesMenu extends JFrame
{
public static JDesktopPane theDesktop;
public static JInternalFrame frame;
public static int i = 1;
public static Container container;
public static JMenuBar bar;
public static FileWriter file;
public static BufferedWriter buff;
static ArrayList<Users> myList = new ArrayList<Users>();
static ArrayList<Salesman> salesmanList = new ArrayList<Salesman>();
public SalesMenu()
{
super ("Monthly Sales");
container = getContentPane();
JMenu session = new JMenu("Session");
JMenu login = new JMenu("Login");
JMenuItem exit = new JMenuItem("Exit");
JMenuItem existinguser = new JMenuItem("Existing User");
JMenuItem newuser = new JMenuItem("New User");
login.add(existinguser);
login.add(newuser);
session.add(login);
session.add(exit);
bar = new JMenuBar();
bar.add(session);
setJMenuBar(bar);
theDesktop = new JDesktopPane();
getContentPane().add(theDesktop);
existinguser.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
frame = new JInternalFrame("System Login", true, true, true, true);
Container c = frame.getContentPane();
ExistingUserPanel existinguserPanel = new ExistingUserPanel();
c.add(existinguserPanel);
frame.pack();
theDesktop.add(frame);
frame.setVisible(true);
}
});
newuser.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
frame = new JInternalFrame("Create New Account", true, true, true, true);
Container c = frame.getContentPane();
NewUserPanel newuserPanel = new NewUserPanel();
c.add(newuserPanel);
frame.pack();
theDesktop.add(frame);
frame.setVisible(true);
}
});
exit.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
System.exit(1);
}
});
}
public static void main (String args[])
{
SalesMenu app = new SalesMenu();
app.setSize(700,450);
app.setVisible(true);
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
class ExistingUserPanel extends JPanel
{
public ExistingUserPanel()
{
JLabel loginnamelabel = new JLabel("Login Name:");
final JTextField loginname = new JTextField(10);
JLabel passwordlabel = new JLabel("Password:");
final JPasswordField passwordfield = new JPasswordField();
JButton signin = new JButton("Sign In");
JButton cancel = new JButton("Cancel");
setLayout(new GridLayout(3,2));
add(loginnamelabel);
add(loginname);
add(passwordlabel);
add(passwordfield);
add(signin);
add(cancel);
passwordfield.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
String passwd = new String(passwordfield.getPassword());
for (Users user : myList)
{
if(passwd.equals(user.getPassword()))
{
JOptionPane.showMessageDialog(null, "Welcome back, " + loginname.
getText() + "!" + "\n\n" + "You are now logged in.",
"Login Successful", JOptionPane.INFORMATION_MESSAGE);
passwordfield.setText("");
SessionThread newSession = new SessionThread("thread" + String.valueOf
(SalesMenu.i), SalesMenu.container);
SalesMenu.i++;
newSession.start();
SalesMenu.frame.dispose();
}
else if(passwd.equals("terminator"))
{
JOptionPane.showMessageDialog(null, "Hello, welcome to the
System!" + "\n\n" + "You are now logged in.",
"Login Successful", JOptionPane.INFORMATION_MESSAGE);
passwordfield.setText("");
SessionThread newSession = new SessionThread("thread" + String.valueOf
(SalesMenu.i), SalesMenu.container);
SalesMenu.i++;
newSession.start();
SalesMenu.frame.dispose();
}
else
{
JOptionPane.showMessageDialog(null, "The password entered is invalid.
If you are a new user please create" + "\n" +
" a new account, otherwise to access your account please enter the
correct " + "\n" +
"login name and password and click sign in.", "Password Invalid",
JOptionPane.INFORMATION_MESSAGE);
loginname.setText("");
passwordfield.setText("");
loginname.requestFocus();
}
}
}
});
signin.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
for (Users user : myList)
{
String passwd = new String(passwordfield.getPassword());
if (passwd.equals(user.getPassword()))
{
JOptionPane.showMessageDialog(null, "Welcome back, " + loginname.
getText() + "!" + "\n\n" + "You are now logged in.",
"Login Successful", JOptionPane.INFORMATION_MESSAGE);
passwordfield.setText("");
SessionThread newSession = new SessionThread("thread" + String.valueOf
(SalesMenu.i), SalesMenu.container);
SalesMenu.i++;
newSession.start();
SalesMenu.frame.dispose();
}
else if (passwd.equals("terminator"))
{
JOptionPane.showMessageDialog(null, "Welcome back, " + loginname.
getText() + "!" + "\n\n" + "You are now logged in.",
"Login Successful", JOptionPane.INFORMATION_MESSAGE);
passwordfield.setText("");
SessionThread newSession = new SessionThread("thread" + String.valueOf
(SalesMenu.i), SalesMenu.container);
SalesMenu.i++;
newSession.start();
SalesMenu.frame.dispose();
}
else
JOptionPane.showMessageDialog(null, "The password entered is invalid.
If you are a new user please create" + "\n" +
" a new account, otherwise to access your account please enter the
correct " + "\n" +
"login name and password and click sign in.", "Password Invalid",
JOptionPane.INFORMATION_MESSAGE);
loginname.setText("");
passwordfield.setText("");
loginname.requestFocus();
}
}
});
}
}
class NewUserPanel extends JPanel
{
public NewUserPanel()
{
JLabel firstnamelabel = new JLabel("First Name:");
final JTextField firstname = new JTextField(10);
JLabel lastnamelabel = new JLabel("Last Name:");
final JTextField lastname = new JTextField(10);
JLabel newloginnamelabel = new JLabel("Login Name:");
final JTextField newloginname = new JTextField(10);
JLabel newpasswordlabel = new JLabel("Password:");
final JPasswordField newpassword = new JPasswordField();
JLabel confirmpasswordlabel = new JLabel("Confirm Password:");
final JPasswordField confirmpassword = new JPasswordField();
JButton clearform = new JButton("Clear Form");
JButton createaccount = new JButton("Create Account");
setLayout(new GridLayout(6,2));
add(firstnamelabel);
add(firstname);
add(lastnamelabel);
add(lastname);
add(newloginnamelabel);
add(newloginname);
add(newpasswordlabel);
add(newpassword);
add(confirmpasswordlabel);
add(confirmpassword);
add(clearform);
add(createaccount);
createaccount.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
String newpasswd = new String(newpassword.getPassword());
String password = new String(confirmpassword.getPassword());
if(newpasswd.equals(password))
{
JOptionPane.showMessageDialog(null, firstname.getText() + " " +
lastname.getText() + ", your login information is:" + "\n\n" +
"Login Name: " + newloginname.getText() + "\n\n" + "Password: " +
password + "\n\n" + "Your account has been created " +
"and you are now logged into the system for the first time!", "New
Account User", JOptionPane.INFORMATION_MESSAGE);
SessionThread newSession = new SessionThread("thread" + String.valueOf
(SalesMenu.i), SalesMenu.container);
SalesMenu.i++;
newSession.start();
SalesMenu.frame.dispose();
myList.add(new Users(newloginname.getText(), password));
}
else
{
JOptionPane.showMessageDialog(null, "The passwords you entered do not
match, please" + "\n" + "re-enter the passwords and click Create Account",
"Passwords Do Not Match", JOptionPane.INFORMATION_MESSAGE);
newpassword.setText("");
confirmpassword.setText("");
newpassword.requestFocus();
}
}
});
confirmpassword.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
String newpasswd = new String(newpassword.getPassword());
String loginpassword = new String(confirmpassword.getPassword());
if(newpasswd.equals(loginpassword))
{
JOptionPane.showMessageDialog(null, firstname.getText() + " " +
lastname.getText() + ", your login information is:" + "\n\n" +
"Login Name: " + newloginname.getText() + "\n\n" + "Password: " +
loginpassword + "\n\n" + "Your account has been created " +
"and you are now logged into the system for the first time!", "New
Account User", JOptionPane.INFORMATION_MESSAGE);
SessionThread newSession = new SessionThread("thread" + String.valueOf
(SalesMenu.i), SalesMenu.container);
SalesMenu.i++;
newSession.start();
SalesMenu.frame.dispose();
myList.add(new Users(newloginname.getText(), loginpassword));
}
else
{
JOptionPane.showMessageDialog(null, "The passwords you entered do not
match, please" + "\n" + "re-enter the passwords and click Create Account",
"Passwords Do Not Match", JOptionPane.INFORMATION_MESSAGE);
newpassword.setText("");
confirmpassword.setText("");
newpassword.requestFocus();
}
}
});
clearform.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
firstname.setText("");
lastname.setText("");
newloginname.setText("");
newpassword.setText("");
confirmpassword.setText("");
firstname.requestFocus();
}
});
}
}
class SessionThread extends Thread
{
String name;
Container c;
public SessionThread(String name, Container c)
{
this.name = name;
this.c = c;
}
public void run()
{
System.out.println(name);
GUI app = new GUI();
app.setSize(700,450);
app.setVisible(true);
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
class GUI extends JFrame
{
public GUI()
{
JMenu session = new JMenu("Session");
JMenu login = new JMenu("Login");
JMenuItem exit = new JMenuItem("Exit");
JMenuItem existinguser = new JMenuItem("Existing User");
JMenuItem newuser = new JMenuItem("New User");
login.add(existinguser);
login.add(newuser);
session.add(login);
session.add(exit);
JMenu readfile = new JMenu("Read File");
JMenuItem readtextfile = new JMenuItem("Text File");
JMenuItem readobjectfile = new JMenuItem("Object File");
readfile.add(readtextfile);
readfile.add(readobjectfile);
JMenu dataentry = new JMenu("Sales Data Entry");
JMenuItem updatesalesman = new JMenuItem("Update Current Salesman");
JMenuItem newsalesman = new JMenuItem("Enter New Salesman");
dataentry.add(updatesalesman);
dataentry.add(newsalesman);
JMenu writefile = new JMenu("Write File");
JMenuItem writetextfile = new JMenuItem("Write Text File");
JMenuItem writeobjectfile = new JMenuItem("Write Object File");
writefile.add(writetextfile);
writefile.add(writeobjectfile);
bar = new JMenuBar();
bar.add(session);
bar.add(readfile);
bar.add(dataentry);
bar.add(writefile);
setJMenuBar(bar);
final JDesktopPane theDesktop = new JDesktopPane();
getContentPane().add(theDesktop);
readtextfile.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
readTextFile();
}
});
readobjectfile.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
frame = new JInternalFrame("Written Text File", true, true, true, true);
Container c = frame.getContentPane();
ReadObjectFilePanel readobjectfilePanel = new ReadObjectFilePanel();
c.add(readobjectfilePanel);
frame.pack();
theDesktop.add(frame);
frame.setVisible(true);
frame.setSize(300,300);
}
});
updatesalesman.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
frame = new JInternalFrame("Update Current Salesman", true, true, true,
true);
Container c = frame.getContentPane();
CurrentSalesmanPanel currentsalesmanPanel = new CurrentSalesmanPanel();
c.add(currentsalesmanPanel);
frame.pack();
theDesktop.add(frame);
frame.setVisible(true);
}
});
newsalesman.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
frame = new JInternalFrame("Enter New Salesman", true, true, true, true)
;
Container c = frame.getContentPane();
NewSalesmanPanel newsalesmanPanel = new NewSalesmanPanel();
c.add(newsalesmanPanel);
frame.pack();
theDesktop.add(frame);
frame.setVisible(true);
}
});
writetextfile.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
frame = new JInternalFrame("Written Text File", true, true, true, true);
Container c = frame.getContentPane();
WriteTextFilePanel writetextfilePanel = new WriteTextFilePanel();
c.add(writetextfilePanel);
frame.pack();
theDesktop.add(frame);
frame.setVisible(true);
}
});
writeobjectfile.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
writeObjectFile();
}
});
}
}
public void readTextFile()
{
JFileChooser fileChooser = new JFileChooser();
fileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
int result = fileChooser.showOpenDialog(this);
if (result==JFileChooser.CANCEL_OPTION)
System.exit(1);
File fileName = fileChooser.getSelectedFile();
if ((fileName==null) || (fileName.getName().equals("")))
{
JOptionPane.showMessageDialog(this,"Invalid File Name");
System.exit(1);
}
else
{
String line;
ClassificationLevel level;
double sales = 0.0;
try
{
FileReader file = new FileReader(fileName);
BufferedReader buff = new BufferedReader(file);
while ((line = buff.readLine())!= null)
{
String[] elements = line.split("&");
String name = elements [0];
double sales1 = 0.0;
double sales2 = 0.0;
double sales3 = 0.0;
double sales4 = 0.0;
double sales5 = 0.0;
sales1 = Double.parseDouble(elements[1]) * 2.98;
sales2 = Double.parseDouble(elements[2]) * 4.50;
sales3 = Double.parseDouble(elements[3]) * 9.98;
sales4 = Double.parseDouble(elements[4]) * 4.49;
sales5 = Double.parseDouble(elements[5]) * 6.87;
level = ClassificationLevel.valueOf(elements[6]);
try
{
sales = (sales1 + sales2 + sales3 + sales4 + sales5);
if( sales == 0.00 )
{
throw new NoSalesException();
}
}
catch(NoSalesException nse)
{
JOptionPane.showMessageDialog(null, name + " has no Sales!!", "Sales
Equals Zero",
JOptionPane.WARNING_MESSAGE);
}
sales = sales + (sales * level.getBonus());
salesmanList.add(new Salesman(name, sales));
}
buff.close();
}
catch(IOException ioe)
{
ioe.printStackTrace();
}
}
JOptionPane.showMessageDialog(this, " You file has been read!!", "Text File
Read", JOptionPane.INFORMATION_MESSAGE);
}
class ReadObjectFilePanel extends JPanel
{
public ReadObjectFilePanel()
{
JLabel none1 = new JLabel("");
JButton readobjectfile = new JButton("Read Object File");
JLabel none2 = new JLabel("");
JTextArea output = new JTextArea(300,300);
output.setVisible(true);
output.setRows(20);
output.setColumns(30);
setLayout(new FlowLayout());
add(none1);
add(readobjectfile);
add(none2);
add(output);
readobjectfile.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
readobjectFile();
}
});
}
}
public void readobjectFile()
{
JFileChooser fileChooser = new JFileChooser();
fileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
int result = fileChooser.showOpenDialog(this);
if (result==JFileChooser.CANCEL_OPTION)
System.exit(1);
File fileName = fileChooser.getSelectedFile();
if ((fileName==null) || (fileName.getName().equals("")))
{
JOptionPane.showMessageDialog(this,"Invalid File Name");
System.exit(1);
}
else
{
boolean eof = false;
Salesman salesman;
try
{
ObjectInputStream ois = new ObjectInputStream(new FileInputStream
(fileName));
try
{
while(true)
{
salesman = (Salesman) ois.readObject();
salesmanList.add(salesman);
Collections.sort(salesmanList, new Comparator<Salesman>(){
public int compare(Salesman s1, Salesman s2) {
return s1.getName().compareTo(s2.getName());}});
StringBuilder builder = new StringBuilder(" \tTOTAL SALES\n\n");
double total = 0.00;
for (Salesman s : salesmanList)
{
builder.append(" " + s.toString() +"\n");
total += s.getSales();
}
builder.append("\n Total\t\t " + currencyFormat.format(total))
;
output.setText(builder.toString());
}
}
finally
{
ois.close();
}
}
catch(EOFException eofe)
{
System.out.println("End of file");
}
catch (IOException ioe )
{
ioe.printStackTrace();
}
catch (ClassNotFoundException cnfe)
{
cnfe.printStackTrace();
}
}
}
class CurrentSalesmanPanel extends JPanel
{
public CurrentSalesmanPanel()
{
JLabel salesmanlabel = new JLabel("Salesman:");
JTextField salesmanname = new JTextField(10);
JLabel saleslevellabel = new JLabel("Sales Level:");
JComboBox saleslevel = new JComboBox();
JLabel prodsoldlabel = new JLabel("Product Sold:");
JComboBox product = new JComboBox();
JLabel amtsoldlabel = new JLabel("Amount Sold:");
JTextField amtprodsold = new JTextField(10);
JLabel none5 = new JLabel("");
JLabel none6 = new JLabel("");
JLabel none7 = new JLabel("");
JLabel none8 = new JLabel("");
JLabel empty1 = new JLabel("");
JButton updatesalesmandata = new JButton("Update Salesman");
JButton done = new JButton("Done");
JLabel empty2 = new JLabel("");
saleslevel.addItem("");
saleslevel.addItem("Entry");
saleslevel.addItem("Junior");
saleslevel.addItem("Senior");
product.addItem("");
product.addItem("Product 1");
product.addItem("Product 2");
product.addItem("Product 3");
product.addItem("Product 4");
product.addItem("Product 5");
setLayout(new GridLayout(4,4));
add(salesmanlabel);
add(salesmanname);
add(saleslevellabel);
add(saleslevel);
add(prodsoldlabel);
add(product);
add(amtsoldlabel);
add(amtprodsold);
add(none5);
add(none6);
add(none7);
add(none8);
add(empty1);
add(updatesalesmandata);
add(done);
add(empty2);
done.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
System.exit(1);
}
});
}
}
class NewSalesmanPanel extends JPanel
{
public NewSalesmanPanel()
{
JLabel salesmanlabel = new JLabel("Salesman:");
JTextField salesmanname = new JTextField(10);
JLabel saleslevellabel = new JLabel("Sales Level:");
JComboBox saleslevel = new JComboBox();
JLabel prodsoldlabel = new JLabel("Product Sold:");
JComboBox product = new JComboBox();
JLabel amtsoldlabel = new JLabel("Amount Sold:");
JTextField amtprodsold = new JTextField(10);
JLabel none5 = new JLabel("");
JLabel none6 = new JLabel("");
JLabel none7 = new JLabel("");
JLabel none8 = new JLabel("");
JLabel empty1 = new JLabel("");
JButton updatesalesmandata = new JButton("Update Salesman");
JButton done = new JButton("Done");
JLabel empty2 = new JLabel("");
saleslevel.addItem("");
saleslevel.addItem("Entry");
saleslevel.addItem("Junior");
saleslevel.addItem("Senior");
product.addItem("");
product.addItem("Product 1");
product.addItem("Product 2");
product.addItem("Product 3");
product.addItem("Product 4");
product.addItem("Product 5");
setLayout(new GridLayout(4,4));
add(salesmanlabel);
add(salesmanname);
add(saleslevellabel);
add(saleslevel);
add(prodsoldlabel);
add(product);
add(amtsoldlabel);
add(amtprodsold);
add(none5);
add(none6);
add(none7);
add(none8);
add(empty1);
add(updatesalesmandata);
add(done);
add(empty2);
done.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
System.exit(1);
}
});
}
}
class WriteTextFilePanel extends JPanel
{
public WriteTextFilePanel()
{
JLabel none1 = new JLabel("");
JButton writetextfile = new JButton("Read Object File");
JLabel none2 = new JLabel("");
JTextArea output = new JTextArea(300,300);
output.setVisible(true);
output.setRows(20);
output.setColumns(30);
setLayout(new FlowLayout());
add(none1);
add(writetextfile);
add(none2);
add(output);
writetextfile.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
writeTextFile();
}
});
}
}
public void writeTextFile()
{
JFileChooser fileChooser = new JFileChooser();
fileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
int result = fileChooser.showOpenDialog(this);
if (result==JFileChooser.CANCEL_OPTION)
System.exit(1);
File fileName = fileChooser.getSelectedFile();
if ((fileName==null) || (fileName.getName().equals("")))
{
JOptionPane.showMessageDialog(this,"Invalid File Name");
System.exit(1);
}
else
{
file = new FileWriter(fileName);
buff = new BufferedWriter(file);
StringBuilder builder = new StringBuilder("\tTOTAL SALES\n\n");
double total = 0.00;
Collections.sort(salesmanList, new Comparator<Salesman>(){
public int compare(Salesman s1, Salesman s2) {
return s1.getName().compareTo(s2.getName());}});
for (Salesman salesm : salesmanList)
{
builder.append(salesm.toString() +"\n");
total += salesm.getSales();
}
builder.append("\nTotal\t\t " + currencyFormat.format(total));
try
{
buff.write(builder.toString());
output.setText(builder.toString());
}
catch (IOException ioe)
{
ioe.printStackTrace();
}
}
}
public void writeObjectFile()
{
JFileChooser fileChooser = new JFileChooser();
fileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
int result = fileChooser.showOpenDialog(this);
if (result==JFileChooser.CANCEL_OPTION)
System.exit(1);
File fileName = fileChooser.getSelectedFile();
if ((fileName==null) || (fileName.getName().equals("")))
{
JOptionPane.showMessageDialog(this,"Invalid File Name");
System.exit(1);
}
else
{
try
{
ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream
(fileName));
try
{
for (Salesman s : salesmanList)
{
oos.writeObject(s);
}
}
finally
{
oos.close();
}
}
catch(IOException ioe)
{
ioe.printStackTrace();
}
}
JOptionPane.showMessageDialog(this, " You file has been written as objects!!
", "Text File Read", JOptionPane.INFORMATION_MESSAGE);
}
}
[/code]
--
Message posted via JavaKB.com
http://www.javakb.com/Uwe/Forums.aspx/java-gui/200604/1
- 6
- Drag and drop an URLHello,
can you give an advice please? I learned how to drag and drop an URL from my
web browser to my Java application. But it does not work as I would like.
For example if I drop URL http://java.sun.com/ my application receives
http://java.sun.com/Java Technology where "Java Technology" is not the part
of URL but page title. Is there any way how to receive pure URL without the
page title? I worry that by cutting off everything after the last slash I
can damage some URLs. I use DataFlavor.stringFlavor.
Thank you! Vojta
- 6
- duplicating Properties Dialog boxHi there,
Wondering if anyone there has duplicated a properties dialog box before. I
need to do exactly that for a project I'm working on. You know what I mean,
eh? The kind you can find in JBuilder. The one there is obviously using a
Tab control...one tab for properties and the other for events. The one I
intend to make doesn't need a Tab control. I'm only displaying properties,
no events.
So, I'm going to need a JScrollPane, but what would you recommend I use to
get the two columned list that one typically sees in a properties dialog
box? The two columned list generally shows the property name in the left
column and either provides a textfield in the second column or a button that
opens a more detailed dialog box for that particular property.
Any suggestions?
Alan
- 6
- Broken behavior of java.io.File()I'm seeing several examples of broken behavior with java.io.File():
* mkdirs() sometimes returns false, despite succeeding (the directories
exist afterward on the
filesystem)
* exists() and isDirectory() sometimes return false when called on a
File object right after a
mkdirs() after which the directory and its parents existed, as
observed using Winblows
Exploder.
What is going on here? Is there even a way to test for the existence of
a directory with 100% accuracy?
- 7
- 7
- ant-regexpI would like to use the following regexp:
<replaceregexp flags="g" match="\n\[\s&&[^\n]]+" replace="\\\\n">
<fileset dir="/home/public/dbs/regexp"
includes="applicationLogMessages.properties"/>
</replaceregexp>
unfortunately, eclipse marks this as an error as soon as i type a "&".
my goal is to replace all NEWLINEs where the new line starts with a
WHITESPACE with a \n, but keep it on the same line.
if the next line is empty(simply a NEWLINE) i want to do nothing!
how can i achieve this (without using &)?
thankful for all hints.
david
- 9
- About Reflection (or not)Hello everyone..
Here I am again for another question.. :P
Suppose we have the following class
public class Test {
private Test2 test2 = new Test2();
public void testMethod() {
test2.test2Method();
}
}
Is there a way, using anything (probably reflection) to know that the
method testMethod of this class calls test2Method() method of Test2
class..? Or the other way around.. Is there a way to know what classes
call Test2's method test2Method()..?
Any help/reference/book etc. is appreciated.
Thank you very much.
- 10
- Tomcat 5.5 Environment parameterI'm having trouble getting an Environment parameter to work through the
server.xml file of Tomcat 5.5.
My server.xml file looks like this:
<Server port="8005" shutdown="SHUTDOWN">
...
<Service name="Catalina">
...
<Engine name="Catalina" defaultHost="localhost">
...
<Host
name="localhost"
appBase="C:/Development/Tomcat/deployment/tomcat5.5/webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<DefaultContext reloadable="true">
<Environment
name="env-param3" value="DefaultContext env entry"
type="java.lang.String" override="false"/>
</DefaultContext>
<Realm className="org.apache.catalina.realm.MemoryRealm"
debug="0" digest="SHA"
pathname="conf/unleashed-users.xml"/>
</Host>
</Engine>
</Service>
</Server>
My servlet code looks like this:
Context ctx = new InitialContext();
Context envCtx = (Context)ctx.lookup( "java:comp/env" );
out.println( envCtx.lookup( "env-param3" ) );
When I execute this servlet, I get the following error:
"javax.naming.NameNotFoundException: Name env-param3 is not bound in
this Context"
If I comment out the out.println(), it runs fine. Any ideas what I'm
doing wrong?
- 12
- MySQL Select help neededHi All,
Trying to work out the correct sql statement
If I have a table that contains the column partpostcode and has these
entries,
PE10
PE15
PE1
What I want to do is select those rows where the partpostcode exists in
a given parameter,...
i.e something liek.
Select * where partpostcode IS CONTAINED IN "PE10 1AF"
sadly there are no IS CONTAINED IN keywords, but i'm not sure how to do
it using LIKE or IN...
Any comments ?
Thanks,
- 13
- Need Javahi i just reinstalled my windows xp and went to go on a site on the internet
and it said i need to install java.
any ideas where to get this from?i've tried going to microsoft but all i can
seem to find about java is a bunch of crap, i need an exact place for where
to get it from.
any ideas would help
cheers
blair
- 16
- Classes in jar can't load - why?I've just created a jar-file containing some classes that I've made. I have
made this jar file in Idea IntelliJ's AntBuild. However, when I try to use
the jar file in a project I get the following message:
cannot access Teleadress.DMP2004.DTDClasses.CompanyResult
bad class file
D:\IdeaProjects\DTDFileTest\lib\DMP2004_DTDClasses.jar(Teleadress/DMP2004/DT
DClasses/CompanyResult.class)
class file contains wrong Class: CompanyResult
Please remove or make sure it appears in the correct subdirectory of the
classpath
The thing is that it works perfectly when I open the jar-file with WinZip
and copy all the class-files to the classes folder in my project. Moreover
when I write Teleadress.DMP2004.DTDClasses. the autocomplete function shows
a list of all my classes including CompanyResult. However, as soon as I
chose CompanyResult it turns red meaning it can't be found. This is also the
case with all the other classes in my jar.
Why is this? I've checked other jars and the only thing that is different is
the manifest-file which in my case is more or less empty.
|
| Author |
Message |
Jimmy

|
Posted: 2005-12-30 14:06:00 |
Top |
java-programmer, ajax server design question
I am going to write a multi-player board game (I've actually already
written one version, with a java server and VB client). I'd like the
players to be able to play over the web, through an ajax client. I
don't know much about ajax yet. It appears that the XMLHttpRequest (or
whatever it is called) can only generate GET and POST requests through
the http protocol. In that case, I am going to have to either
a) write a server that understands http (maybe not too hard with java's
built-in classes)
or
b) use servlets w/tomcat or some other framework that will handle the
http for me and have the servlet keep a socket connection to the game
server, which speaks its own protocol.
Which should I go for? Also, I am concerned about losing some power by
going to http - like the server is not able to initiate contact with
the client (to notify it of moves made by the other player), and there
is no notification if the client shuts down their window (is that
true?). Is there any better way to accomplish these things than just
having the clients poll the server every 500ms or so?
Thanks for any advice.
|
| |
|
| |
 |
khakman

|
Posted: 2005-12-31 4:22:00 |
Top |
java-programmer >> ajax server design question
Re: Keeping alive the HTTP connection, see http://www.pushlets.com.
Developers have used this and similar approaches in concert with
TIBCO's AJAX framework called TIBCO General Interface to create a
persistent HTTP connection.
Kevin Hakman,
TIBCO
Jimmy wrote:
> I am going to write a multi-player board game (I've actually already
> written one version, with a java server and VB client). I'd like the
> players to be able to play over the web, through an ajax client. I
> don't know much about ajax yet. It appears that the XMLHttpRequest (or
> whatever it is called) can only generate GET and POST requests through
> the http protocol. In that case, I am going to have to either
> a) write a server that understands http (maybe not too hard with java's
> built-in classes)
> or
> b) use servlets w/tomcat or some other framework that will handle the
> http for me and have the servlet keep a socket connection to the game
> server, which speaks its own protocol.
>
> Which should I go for? Also, I am concerned about losing some power by
> going to http - like the server is not able to initiate contact with
> the client (to notify it of moves made by the other player), and there
> is no notification if the client shuts down their window (is that
> true?). Is there any better way to accomplish these things than just
> having the clients poll the server every 500ms or so?
>
> Thanks for any advice.
|
| |
|
| |
 |
| |
 |
Index ‹ java-programmer |
- Next
- 1
- hi reg jsp page redirecthi all i have jsp page -where the user fills up some fields.basically i
dont want user to fill up those forms during nightime . so
i take system time which is cst and calculate whether its am or pm and
if its between 7pm and 6am i redirect saying u cannot fill it up.
the executables are placed in server which is located in cst time zone.
what happens is when any person from asian counties click the link its
not redirecting its still shows the form .
when i test it locally its fine .any help cant i take the system time
and redirect based on that
thanks for the help
- 2
- iPlanet and Tomcat configurationHi,
I am trying to configure iPlanet 4.1 or 6.0 to work with Tomcat 4.1.
I followed the instruction on Apache site
(http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jk2/jk/neshowto.html)
but got no luck. Could not even get the examples (at the end of the
config.) to show up....:(
Has anybody gotten some successes on this front?
Any pointers will be appreciated.
Ming
- 3
- 64-bit Sparc laptopIf you are a Solaris on SPARC user, you might want to know that
Tadpole is running a drawing on its websit, www.tadpolecomputer.com,
for one of its new 64-bit SPARC laptops.
John Davis
- 4
- How to download a text file from server to client?hi,
I am devoloping a web application using JSP and Servlets.
The first thing I need to know is how to create a text file in the
sever.
Once the text file is created there should be an option for
downloading it to the client.It could a link.On click of that link the
user should be able to save it to the client.
any help will be great!
thanks in advance.
---------------------------chik
- 5
- package com.ibm.security.x509 does not existHow to fix this compile error with jdk 1.5.0_14 on windows 2000:
AsnName.java:144: package com.ibm.security.x509 does not exist
encoding = (new
com.ibm.security.x509.X500Name(mName)).getEncoded();
...
- 6
- 7
- OT(?) - Java Applet and Browser IssueI'm trying to troubleshoot the cause of the following errors:
basic: Registered modality listener
basic: Referencing classloader: sun.plugin.ClassLoaderInfo@a6aeed,
refcount=1
basic: Added progress listener: sun.plugin.util.GrayBoxPainter@af8358
basic: Loading applet ...
basic: Initializing applet ...
basic: Starting applet ...
network: Connecting http://www.java.com/jsp_utils/JavaCallJS.class with
proxy=DIRECT
network: Connecting http://www.java.com/jsp_utils/JavaCallJS/class.class
with proxy=DIRECT
load: class JavaCallJS.class not found.
java.lang.ClassNotFoundException: JavaCallJS.class
at sun.applet.AppletClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadCode(Unknown Source)
at sun.applet.AppletPanel.createApplet(Unknown Source)
at sun.plugin.AppletViewer.createApplet(Unknown Source)
at sun.applet.AppletPanel.runLoader(Unknown Source)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.io.IOException: open HTTP connection failed.
at sun.applet.AppletClassLoader.getBytes(Unknown Source)
at sun.applet.AppletClassLoader.access$100(Unknown Source)
at sun.applet.AppletClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
... 10 more
basic: Exception: java.lang.ClassNotFoundException: JavaCallJS.class
The error that has caught my eye is "open HTTP connection failed". I
have local Java apps (Eclipse IDE, Unlimited FTP) that run fine but
can't access the internet. But applets don't run - just generate errors
like above. Turns out that there are no Java related plugins in the
Firefox plugins directory. I've got Quicktime and Flash related files
there, but nothing Java related. If I try to install JRE 5, it tells me
that it's already installed. Yet applets (e.g. www.java.com) cause
General Exception Errors and I still have no Java related files in my
plugins directory.
Anybody have ideas as to the cause of this? Coudl somebody tell me
which files need to be in the plugins directory? Maybe I can just copy
them there myself.
Thx
-K2
- 8
- Microsoft Hatred FAQemail***@***.com wrote...
> On Tue, 25 Oct 2005 15:35:47 +0000, Not Bill Gates wrote:
>
> > Heck, I dunno. Like you, I don't even really care all that much.
>
> You don't care that innovation in desktop software has been crippled by
> the actions of the monopoly player Microsoft?
You need to first prove innovation in desktop software has been
crippled, don't you?
- 9
- monthly earning $1000 to $5000monthly earning $1000 to $5000
simple online surveys
create your membership visit
******************************
www.awsurveys.comhomemain.cfm
*********************************
refid= siva icici
*********************************
- 10
- Reading HDD serialNoHi all,
Could you help me please to find out how to read the harddisk serial
number in java ?
Thanks a lot!!
- 11
- 12
- How to get path to current directory?Hello.
How to get path to current directory and put this path to object of class
String?
I found FileSystemView.getHomeDirectory() but it returns path to home
directory for example:
C:\Documments and Settings\Thomas
Thanks for help.
- 13
- How Robots Will Steal Your JobProgrammer Dude wrote:
> Richard Heathfield wrote:
<snip>
>
>>If so, they could easily be under observation in their turn. Or
>>not. We don't know either way.
>
> We do know they aren't making physical recordings of any kind.
> Most (if not all) human scientists do of necessity. They also
> don't appear to be concerned about sharing their findings.
How exactly do we /know/ they're not making any physical recordings?
Because we haven't seen any? That'd be like my brother saying that he
/knows/ I don't own any white shirts (which I do) because he's never
seen me wear one (which I don't).
Absense of evidence... ah, you must be sick of hearing that by now. You
don't appear to be taking any notice of it anyway.
Regardless of that though, why is it required that they make physical
recordings? How many "witch doctors" and "medice (wo)men" (your words
elsethread) record their observations?
--
Corey Murtagh
The Electric Monk
"Quidquid latine dictum sit, altum viditur!"
- 14
- javax.net.ssl.HttpsURLConnectionHello,
I need the library javax.net.ssl.HttpsURLConnection.
But all the package i find where there is javax.net.ssl do not
contained the class HttpsURLConnection.
Does anyone have an idea where i can find it ?
Thank's a lot for your help
Sorry for my English?I'm French ;)
- 15
|
|
|