| Override prepareRenderer() |
|
 |
Index ‹ java-programmer
|
- Previous
- 1
- hide NullPointerExceptionI have a GUI which throws a nullpointerexception when things go wrong.
Then it closes. That nullpointerexception is expected and I want it
ignored since before that it has already informed the user that
something has gone wrong and its closing. How can I do this? If I just
put the part of the function throwing the exception within try/catch,
it tends to hang. If I leave it as is, it throws the exception but
closes fine. I just don't want the user to see that exception.
- 1
- Choosing elements to display in a JSP using StrutsHello,
I am very new to everything web development, so please bear with me.
My development environment is:
Win2k
Tomcat 4.0.30
Apache 2.0.48
mod_jk/2.0.4
j2sdk 1.4.2
Struts 1.1
mysql 4.0.18
I am using Struts to develop my webapp in an MVC fashion. I am using
forms based authentication to a mysql database.
Using the tools in my development environment, I am wondering if it is
possible to choose the elements displayed in a JSP based on the group
the user is in (and still stay withing the MVC framework), or if that
is even the right approach. I prefer to not show options to users if
they do not have permissions to perform them.
Any suggestions or advice would be great. If you know of any
tutorials/books/web resources that you could point me to, that would
be fantastic as well.
Thanks in advance.
Randy
- 2
- how to draw ER and UML diagram in eclipse?what free eclipse plugin do you use to draw database ER diagram and
UML diagrams?
I've tried omondo years ago, it leaks memory so bad back then and
always crash my eclipse, is it getting better now?
- 2
- Q: Possible to auto-fallback back to MS JVM from Sun JVM ?Hi all.
Ok, so it's no secret, MS can no longer distribute its Java VM with
its OS'.
Naturally, that didn't stop me from installing an old one so
WindowsUpdate would see it and upgrade it to the last (MS) build:
5.00.3810
I also installed the latest SUN Java VM (1.4.2_03)
*** Flash ***
Woaaaah!! Just saw their "Law & Order" game
(http://java.com/en/index.jsp)
Gotta try that!
*** End Flash ***
So what I want in fact, is to use SUN's VM as default, but to
automatically switch back to MS' VM for those sites that still use it
(for example, my bank still uses it, so I can't issue payments if Sun
is default -- annoying).
Of course, this can be done manually in "Set Program Access and
Defaults" in hte Window scontrol panel, but you have to select one or
the other.
Same with Sun's Java Plug-in control panel (Advanced tab).
So... is there a way to perform an auto-fall-back to MS JVM when an
applet cannot load/initialise with the Sun JVM ?
Or create a list of site which must use MS instead of Sun?
Any help appreciated.
M.T.
- 2
- hi friends.please helpI am trying t make a jTable Using Abstract TableModel. But my JTable
doesnot appear on the frame.I have written two classes myTable and
jTable2 .My code is given below:
import javax.swing.*;
import java.awt.*;
public class myTable {
public static void main(String args[]){
JTable2 tbl2=new JTable2();
JTable aTbl=new JTable(tbl2);
aTbl.updateUI();
aTbl.setVisible(true);
JFrame frame=new JFrame("Jtable using AbstractTableModel");
JPanel pan=new JPanel();
JScrollPane scp=new JScrollPane();
scp.add(aTbl);
pan.add(scp);
frame.getContentPane().add(pan);
frame.setVisible(true);
frame.pack();
}
}
import javax.swing.*;
import java.sql.*;
import java.util.*;
import javax.swing.table.*;
public class JTable2 extends AbstractTableModel{
Connection con;
Statement stmt;
ResultSet rs;
int columns;
Vector allRows;
Vector row=new Vector();
String [] columnNames={"ID_CODE","NAME","SECTION"};
public JTable2(){
// connect to database
try{
db_connect();
getData();
}catch(Exception ex){
ex.printStackTrace();
}
}
void db_connect() throws SQLException{
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
con=DriverManager.getConnection("jdbc:oracle:thin:@158.144.71.242:1521:dbadp","payroll","sush");
System.out.println("Connected");
}catch(Exception ex){
ex.printStackTrace();
}
}
void getData() throws SQLException {
try{
stmt=con.createStatement();
rs=stmt.executeQuery("select idcode,id_name,sec_code from
employee");
ResultSetMetaData rsMetaData=rs.getMetaData();
columns=rsMetaData.getColumnCount();
allRows=new Vector();
while(rs.next()){
Vector newRow=new Vector();
for(int i=1;i<=columns;i++){
newRow.addElement(rs.getObject(i));
}
allRows.addElement(newRow);
}
}catch (Exception ex){
ex.printStackTrace();
}
}
public int getRowCount(){
return allRows.size();
}
public int getColumnCount(){
return columns;
}
public Object getValueAt(int aRow,int aColumn){
row=(Vector) allRows.elementAt(aRow);
return row.elementAt(aColumn);
}
public boolean isCellEditable(int row, int col){
return false;
}
}
- 2
- Animation ProblemLew wrote:
> James Sarjeant wrote:
>> Thank you so much everyone, it worked with the javax.swing.Timer events.
>> Still got other bugs to iron out but thats a huge hurdle overcome.
>> Thanks again
>
> Remember: you think you have gotten away from the advice about the EDT,
> but you haven't.
>
It's a pesky thing isn't it :-).
--
Knute Johnson
email s/nospam/knute/
- 2
- Newbie question - reading delimited files and printing...Reading files - pipe delimited or comma delimeted...
Searching for a element in one field and then showing certain fields where
element is in line.
eg...
HEHE|HI|ME|2.5
JOKE|HELLO|YOU|3.4
DONT|HI|YOU|3.4
I want all rows with YOU in second column and I want to print out 2nd and
4th columns.
SO, my answer would be
HI 2.5
HI 3.4
...
Next question...
same list only a datestamp on the end...
HEHE|HI|ME|2.5|20031223091234
JOKE|HELLO|YOU|3.4|20031223091245
DONT|HI|YOU|3.4|20031223091247
....
1) I want all rows with YOU in second column and I want to print out 2nd and
4th columns in the 09:00:00 - 09:59:59 time frame.
2) I want an average of response time(4th field).
3) I want an average of response time broken down by hour.
Can someone help with all of this?
Please email to my home email (feel free to copy here).
email***@***.com
take out the _no_spam_
Thanks,
Markis
- 2
- Changing log level at runtimeYou know the situation: logging output is useless .. until you need it.
Is there a way to configure log4j in a web application or an EJB with
log level ERROR and have it change to DEBUG whenever an error happens?
The only thing I can imagine is having a special servlet that you have
to call with the browser to have it trigger a log level change for the
whole web application.
Are there better ways? Maybe with the jdk built-in logger?
Or with log4j JMX? But I could not find any docs or examples.
Thx,
Juergen
- 5
- Hot-deployment of EAR/JAR files using classloaders (on JBoss app server)Hi,
I am trying the following scenario:
- I deploy an app.ear into the jboss server.
- app.ear invokes a session bean deployed separately (sessionbean.jar)
- everything works fine
- I modify sessionbean.jar
- I redeploy it without restarting the server (hot deployment)
When app.ear invokes the sessionbean, it refers to the previous instance of
the sessionbean. And because I have replaced it, it does not find the
class...
Then I read on, and I find that if you write custom class loaders, you can
load new versions of classes on the fly (dynamic loading).
So I wrote a custom class loader, which works fine when I call a basic java
library, but there does not seem to be a way of 'redeploying' this
sessionbean.jar as a bean (you can't invoke it anymore with the home/remote
interface)....
Can someone help me here ? I am basically trying to redeploy beans without
redeploying the app server and having them immediately rebind to whichever
application needs to use them.
Thanks
Steph
- 5
- writing email attachment file to diskI'm trying to capture an email attachment and write it to disk.
I've coded the following lines in my attempt. The program seems
to run and creates the local file alex99.pdf. However, when I
tried to open it, it says it's corrupted and/or wasn't properly
decoded. Any ideas?
Properties props = new Properties();
Session session = Session.getDefaultInstance(props, null);
Store store = session.getStore("pop3");
store.connect(host, username, password);
Folder folder = store.getFolder("inbox");
folder.open(Folder.READ_ONLY);
Message message[] = folder.getMessages();
for (int i = 0, n = message.length; i < n; i++) {
System.out.println(i + ": " + message[i].getFrom() + "\t"
+ message[i].getSubject());
Object obj = message[i].getContent();
if (obj instanceof String) {
System.out.println(">>>plain text");
} else if (obj instanceof Multipart) {
System.out.println("Multipart");
Multipart mp = (Multipart) obj;
System.out.println("mp count = " + mp.getCount());
for (int j = 0, nn = mp.getCount(); j < nn; j++) {
Part part = mp.getBodyPart(j);
String disposition = part.getDisposition();
if ((disposition != null)&& ((disposition.equals(Part.ATTACHMENT) ||
(disposition.equals(Part.INLINE))))) {
System.out.println("attachment");
FileOutputStream fos = new FileOutputStream("alex99.pdf");
part.writeTo(fos);
} else if (disposition==null) {
MimeBodyPart mbp = (MimeBodyPart)part;
if (mbp.isMimeType("text/plain")) {
System.out.println("text/plain");
} else {
System.out.println("other mime type");
}................................
- 7
- 12
- design problem: visitor/multiple dispatch or?Greetings and salutations,
I'm struggling with a bit of a mess (solely created by me and myself).
Suppose a bunch of types (classes) exist, say, T_1, T_2, ... T_n, implementing
a single interface or inheriting from some (abstract) base class T. Also assume
that some 'applicators' exit, say, A_1, A_2 ... Am, all implementing an interface
(or abstract base class) equivalent to --
interface Applicator {
Object apply(T ta, T tb);
}
If both sets T_i and A_j are 'fixed', i.e no new classes T_p nor A_q enter
my messy arena, I could implement all A_i as visitors to the T_j classes
in order to get their job done. OTOH, all T_j classes could double dispatch
the 'A_i.apply' methods to their T_j counterparts to get the job done.
I realise that some form of a Cartesian product of 'apply' methods must
reside somehwere, somehow ...
For the sake of the example, think of the T_j as being subclasses of classes
Short, Int, Long, Double, and let the Appliers be something like 'Add', 'Sub'
etc. i.e. the folllowing code snippet should make sense --
Add myAdd= new Add();
Dbl myDbl= new Dbl(41);
Int myInt= new Int(1);
// assume Num is a superclass of Dbl and Int
Num total= myAdd.apply(myDbl, myInt);
Variable 'total' should have type 'Dbl' in this example. As I wrote above,
there would be no problem if at least set T_j would be fixed; the visitor
pattern would do fine. If set A_i would be fixed the multiple dispatch
pattern (over the set T_j) would be a fine fit. But what to do if both sets
may be expanded?
I've fiddle-diddled with introspection, synthesizing class names given a T_i
and T_j, caching them in hashmaps but to no avail -- my code is a mess and
my design is something I'm ashamed off. I would really appreciate it if
some kind soul here could enlighten me.
TIA, and kind regards,
Jos
- 13
- Inidicator Arrow convention for Sort OrderWhich way should an arrow point to indicate an ascending sort or an
ascending list follows?
For an ascending sort the bigger numbers are at the bottom.
So no matter which way you do it, you can misinterpret.
Is there some other less ambiguous convetion to use?
--
Canadian Mind Products, Roedy Green.
http://mindprod.com Java custom programming, consulting and coaching.
- 15
- stupid genericsWhen I first heard about generics I was excited. A great idea finally
available in Java. But the way they are implemented really makes no sense.
Because of type erasure generics do nothing that 1.4 code didn't already do
by using Object as "generic" class for all (sub)classes.
And the problem with arrays of generic classes? Simply ridiculous. There
is no sane reason why the following code (from a self-learning chess
program I've been working on) should not work, and yet...
ArrayList<Piece>[] board;
board = new ArrayList<Piece>[8]; // error: cannot create a generic
// array of ArrayList<Piece>
board[0] = new ArrayList<Piece>();
board[0].add(0, new Rook(false, 0, 8));
where of course Rook is a subclass of Piece.
I'm forced to use board = new ArrayList[8]; which of course gives an
unchecked warning.
They should just throw away the whole generics thing and replace it with a
C++ like approach.
- 16
- drag and drop in a JMenu/JMenuItem
Can someone please point me to some sample code that allows drag and
drop in a JMenu/JMenuItem. I know that Java doesn't support dnd in
the menu stuff, but I need it anyway. Technically speaking it doesn't
have to be a popup menu, but would be nice, as long as it has the look
and feel of a popup menu (i.e. fonts, size, etc.). An example of what
I'm talking about, via menus, is the start menu under Windows. Those
menus allow you to do dnd, but of course it's Windows and they allow
anything and everything. Just to note I'm using JDK 1.5.x if that
helps for the code direction.
|
| Author |
Message |
andrinarenee

|
Posted: 2006-6-28 3:50:00 |
Top |
java-programmer, Override prepareRenderer()
I've gathered that in order to change the background color of a row,
one can either use the tablecellrenderer or can override the
prepareRenderer() method. I have chosen to override the
prepareRenderer() method. My question (and a reather silly one) is
exactly how to call this method to then color your rows.
I already have a jtable with is autogenerated by netbeans and all of
the code I've seen, the jtable is created programmatically.
Here is what I TRIED to do (any help is greatly appreciated):
public void updateGUI(String newValue){
DefaultTableModel errorTableModel = (DefaultTableModel)
parentScreen.jTableErrors.getModel();
int numRows = errorTableModel.getRowCount();
numRows++;
errorTableModel.setRowCount(numRows);
parentScreen.jTableErrors.setModel(errorTableModel);
Object newObjectError = (Object) newValue;
parentScreen.jTableErrors.setValueAt(newObjectError, numRows - 1, 0);
JTable coloredTable = new JTable( errorTableModel )
{
public Component prepareRenderer(
TableCellRenderer renderer, int row, int column)
{
Component c = super.prepareRenderer(renderer, row, column);
String message = (String) getValueAt(row, column);
String[] dividedMsg = message.split(":");
if(dividedMsg[0].equals("Error: ")){
this.setBackground(Color.RED);
}
else{
this.setBackground(Color.YELLOW);
}
return c;
}
};
parentScreen.jTableErrors = coloredTable;
}
|
| |
|
| |
 |
Andrew McDonagh

|
Posted: 2006-6-28 3:54:00 |
Top |
java-programmer >> Override prepareRenderer()
email***@***.com wrote:
> I've gathered that in order to change the background color of a row,
> one can either use the tablecellrenderer or can override the
> prepareRenderer() method. I have chosen to override the
> prepareRenderer() method. My question (and a reather silly one) is
> exactly how to call this method to then color your rows.
Snipped
Dont call it.
instead create a Derived class from JTable and over ride the
prepareRenderer() method.
However, the entire concept and design of Adding Customer Renderers has
been explicitly done so that you can create a well designed system
Using the internal methods like prepareRenderer() leave your design open
to fragile code that could break when ever Sun change the implementation
of JTable.
JTable's public API wont change, but its internals will.
|
| |
|
| |
 |
| |
 |
Index ‹ java-programmer |
- Next
- 1
- Javascript problem - I don't know what to do about it?!?!Here is the script I have in my page :
<!-- Begin
function popUp(URL) {
day = new Date();
id = day.getTime();
eval("page" + id + " = window.open(URL, '" + id + "',
'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=194,height=146,left
= 440,top = 288');");
}
// End -->
</script>
It opens a new window when the user clicks on a certain link.
Well, somewhere else in the page, I embeded a flash media object and
found out now that everytime the page opens, the pop up window opens
too which is NOT what I want. I want the Popup window to only open
when the user clicks on a text link (which it did work perfectly until
I put in the flash object).
So why is the flash object calling the popup window instead of just
playing like it is supposed to?
- 2
- Problem starting out with Java . . .Hey. Im new to Java, and am having a prroblem with the netbeans IDE.
every time i try to import java.awt.* , I can't use any of the
methods(like they don't exist). I can compile it fine, but when I try to
run it, I get "exception in class main".
Can anyone help me, please?
- 3
- please explain this simple constructmy instructor likes to use this construct in class but never really
explained why/how it works:
while (true)
{
if (something) return; // break from while
}
can someone shed some light how this works?
- 4
- Eclipse HTTP PluginLooking for an eclipse plugin (with source code preferibly) that will
allow me to post an HTTP request. I am trying to integrate3 the IDE
with a proprietary Server side app and want to be able to pass a large
string as a parameter to a JSP page.
Any help is greatly appreciated.
Jason
- 5
- [Struts] <set-property> how does it works?Hi all
I know that in <action> mapping I can use a sub-tag <set-property
property="" value="">
How can I access to these information inside an action?!
As I can imagine there should be a getProperty/getProperties method to the
ActionMapping class ....but it isn't!!
I appreciate any hint..
thanx
--
ShadowMan
- 6
- Question about Database Connection PoolsHi Newsgroup,
i have written an Objectpool for Database connections. All locked
connections are stored within a Vector (called _used) and all unlocked
connections are stored within a second Vector (called _unused).
Now consider the following situation:
------------------- code ---------------------------------------
DbConnectionPool pool = new DbConnectionPool( driver, url, user, passwd);
Connection dbcon = pool.getConnection();
int sizeUsed = pool.getUsed(); // returns 1, thats ok
// ...
// ... lets do some actions with dbcon ....
// ...
// ... programmer does not notice
// ... that dbcon is still in use.
// ... so he checks out a new connection
//
dbcon = pool.getConnection();
sizeUsed = pool.getUsed(); // return 2, uppps!!!
------------------- code ---------------------------------------
Because the programmer checks out a new connections, two database
connections are now marked as _used.
Is there any possibility to avoid such situations?
Thank you in advance
mike
- 7
- 8
- Implementing an interface in eclipseUsing IntelliJ, I would be able to implement an interface whilst having
it open in the editor. You could open the context window using the
keyboard and choose to implement interface and magically the
implementation appears complete with the statement "... implements
SomeInterface"
Does anyone know how to do the same in eclipse so I don't have to open
that New Class window and manually choose the interface?
- 9
- reinventing the wheelhttp://www.ted.com/index.php/talks/view/id/162
This is off topic, but Java folk will like find it amusing. It shows
a Dutch invention to replace the wheel, various mechanical walking
machines. It has a mechanical step counter, a sort of primitive finite
state automaton..
--
Roedy Green Canadian Mind Products
The Java Glossary
http://mindprod.com
- 10
- synchronize vs gateI have a singleton in a web service that provides a collection and
self-updates it on a periodic basis:
doSelfUpdate()
create temporary collection (time consuming)
syncronize
update temporary collection from current collection (fast)
create temporary reference 'old' to current collection
point current collection reference to temporary collection
end syncronize
do stuff with 'old' collection (time consuming)
done
getCollection()
synchronize
just waiting on monitor
end synchronize
return collection
done
It seems to me each thread accessing the getCollection method must
wait on the monitor every time it is accessed -- which is not what I
want. I just want to open and close the gate for a few milliseconds
while the self-update is being done. What do y'all think about
something like this:
boolean isBusy=false;
doSelfUpdate()
create temporary collection
isBusy=true;
update temporary collection from current collection
create temporary reference 'old' to current collection
point current collection reference to temporary collection
isBusy=false;
do stuff with 'old' collection
done
getCollection()
maxWait=10000
waited=0
while(isBusy && waited <maxWait) {
waited+=500
if(waited>=MaxWait) log error;
wait 500
}
return collection
done
IMHO this means each thread consuming getCollection is a tiny bit
slower because it has a condition that must be tested, but as a group
they are not waiting in line for the monitor. Is this right?
- 11
- poster or wallpaperHi all
I need posters or wallpapers which is about programming and computer
science, for hanging
thanks
- 12
- J2ME & EclipseI have just started playing with J2ME, using a software example I downloaded
from http://www.garret.ru/~knizhnik/En_Home.htm#Shopper. I can successfully
build the application and run it both in the emulator outside of eclipse
using emulatorw, and also on my Nokia phone.
I just can not run it within Eclipse, with or without debug. I get the
following error message:
Exception in thread "main" java.lang.UnsatisfiedLinkError:
com.sun.midp.main.Configuration.getProperty0(Ljava/lang/String;)Ljava/lang/String;
at com.sun.midp.main.Configuration.getProperty0(Native Method)
at com.sun.midp.main.Configuration.getProperty(Configuration.java:32)
at com.sun.midp.lcdui.Resource.<clinit>(Resource.java:30)
at com.sun.midp.main.Main.initSystemLabels(Main.java:686)
at com.sun.midp.main.Main.main(Main.java:103)
- 13
- Java Thread,Hi,
I am spawing a new Thread in my application, which runs as an
background process. I am looking to set -Xmx512mb memory to this new
Thread programatically. How do i do it.
thanks
- 14
- How to simulate a busy taskHi everybody,
I was trying to perform some tests in a multithreading application and
I would like to simulate overloading. That is, I want to simulate
threads performing a task that takes a certain time T. I have thought
of the following possibilities:
-Implement a method that sleeps during T milliseconds. Problem: this
does not overload the computer, during those T milliseconds other
agents can execute.
-Implement a method that performs a busy wait (while(true){...}) and
exits when T milliseconds have passed. Problem: there could be context
switches in between, and so it could happen that another thread
executes in the meantime (and that execution time should not count to
decide when to terminate the busy wait).
-Similar to the previous approach, but we try to count the milliseconds
elapsed "by hand". That is, in every iteration we obtain the
System.currentTimeMillis() and count as much as 1 millisecond (if it is
really at least 1 millisecond greater than the value measured in the
previous iteration). In this way, if the thread is interrupted while
executing the method, nothing happens because we count at most 1
millisecond per iteration. This does not work either too well, because
more than 1 millisecond could have been elapsed between measures.
So I'm not really sure if I can do this with some precision. If you
have any suggestions, please let me know. Thanks in advance,
S.
- 15
- getDocumentBase and getCodeBase not recognized...Hi, Im having a slight problem.
I am trying to load an image object with the code below, and I am NOT
extending Applet in my class because I am working on an application.
The problem is that getCodeBase AND getDocumentBase are not being
recognized by my application, however I am sure that the required jars
are in the build path... and that I've referenced them... most likely
inapproprirately.
My code is set up like this
Base\
Base\graphics\img.gifs.
Code follows, I trimmed the imports mostly off, but the rest appear
below the code...
Thanks for your advice.
import java.net.URL;
import java.applet.Applet;
............
String strImageUp = "graphics/up.gif";
URL urlUp = getClass().getResource(strImageUp);
Image imgUp = null;
try {
MediaTracker m = new MediaTracker(this);
imgUp = getImage(getDocumentBase(), strImageUp);
m.addImage(imgUp, 0);
m.waitForAll();
}
catch (Exception e) {
e.printStackTrace();
}
................
import javax.crypto.interfaces.PBEKey;
import javax.imageio.*;
import java.awt.image.*;
import java.io.File;
import java.io.IOException;
import java.util.Vector;
import java.awt.*;
import javax.swing.*;
import javax.swing.border.Border;
import java.util.LinkedList;
import java.util.ListIterator;
import java.awt.event.ActionListener; //for buttons
import java.awt.event.ActionEvent; //for button events
import java.awt.event.KeyEvent; //for key shortcuts
import java.math.*; //percentage rounding
|
|
|