What the he** is wrong with this code?
Hi,
I have 2 tables. Primary table "resease" and secondary table (containing the foreign key) "kunden".
Selecting a release (dropdownlist), will show you the corresponding entry of kunden (datatable).
I added buttons to the datatable for deleting certain rows. This all works fine so far.
But as you are going to delte the last entry of table kunden, I want to delte the corresponding entry of the table release as well. And by trying to do so, I get an exception telling in line "dataTable1Model.commit();"
"java.sql.SQLException: Lock time out; try later."
The exception disappears by deleting the inner try-catch block.
So what is wrong with this code?
Thank,
Mark.
PS: If you need the database-schema or anything else, let me know....
public String delete_action() {
try {
//returns -1, so I can't use it
int rowCount = dataTable1Model.getRowCount();
//get affected row
com.sun.jsfcl.data.DataCache.Row row =
dataTable1Model.getDataCache().get(dataTable1Model.getRowIndex());
row.setDeleted(true);
try {
//New RowSet for getting FK of affected line
JdbcRowSetXImpl pkRowSet = new JdbcRowSetXImpl();
pkRowSet.setDataSourceName("java:comp/env/jdbc/AVT");
pkRowSet.setCommand("SELECT fk_idrelease FROM kunden " +
"where fk_idrelease = ?");
//Convert Row into string
String myRow = row.toString();
//Getting the index of the first "=" (it's before the FK)
int index = myRow.indexOf("=")+1;
//Getting the number (FK) out of the string an casting it to int
int fk = Integer.parseInt(myRow.substring(index,(index+1)));
//Saving the FK in SessionBean1, so I can use it a parameter of
//the setObject(int, Object)-method
getSessionBean1().setFk(fk);
//this will give me a RowSet of all lines containing the FK of
//the affected row
pkRowSet.setObject(1, getSessionBean1().getFk());
pkRowSet.execute();
pkRowSet.last();
int numRow = pkRowSet.getRow();
//If the numRow (numbers of rows) is 1, go to cascade_delte
//and delte the entry with primary key as well
if (numRow == 1) {
cascade_delete(); //not implemented yet
}catch (Exception ex) {
error("Error counting affected rows: " + ex);
dataTable1Model.commit();
dataTable1Model.execute();
info("Deleting row OK!");
}catch (Exception e) {
log("Page 1: Row delete exception: ", e);
error("Error during deleting: " + e);
} // end try catch
return null;
}
just a guess - perhaps call pkRowSet.close() at the end of your try/catch?
v
Similar Messages
-
What is wrong with this code? on(release) gotoAndPlay("2")'{'
Please could someone tell me what is wrong with this code - on(release)
gotoAndPlay("2")'{'
this is the error that comes up and i have tried changing it but it is not working
**Error** Scene=Scene 1, layer=Layer 2, frame=1:Line 2: '{' expected
gotoAndPlay("2")'{'
Total ActionScript Errors: 1 Reported Errors: 1
ThanksIf you have a frame labelled "2" then it should be:
on (release) {
this._parent.gotoAndPlay("2");
or other wise just the following to go to frame 2:
on (release) {
this._parent.gotoAndPlay(2);
You just had a missing curly bracket... -
I can't figure out what's wrong with this code
First i want this program to allow me to enter a number with the EasyReader class and depending on the number entered it will show that specific line of this peom:
One two buckle your shoe
Three four shut the door
Five six pick up sticks
Seven eight lay them straight
Nine ten this is the end.
The error message i got was an illegal start of expression. I can't figure out why it is giving me this error because i have if (n = 1) || (n = 2) statements. My code is:
public class PoemSeventeen
public static void main(String[] args)
EasyReader console = new EasyReader();
System.out.println("Enter a number for the poem (0 to quit): ");
int n = console.readInt();
if (n = 1) || (n = 2)
System.out.println("One, two, buckle your shoe");
else if (n = 3) || (n = 4)
System.out.println("Three, four, shut the door");
else if (n = 5) || (n = 6)
System.out.println("Five, six, pick up sticks");
else if (n = 7) || (n = 8)
System.out.println("Seven, eight, lay them straight");
else if (n = 9) || (n = 10)
System.out.println("Nine, ten, this is the end");
else if (n = 0)
System.out.println("You may exit now");
else
System.out.println("Put in a number between 0 and 10");
I messed around with a few other thing because i had some weird errors before but now i have narrowed it down to just this 1 error.
The EasyReader class code:
// package com.skylit.io;
import java.io.*;
* @author Gary Litvin
* @version 1.2, 5/30/02
* Written as part of
* <i>Java Methods: An Introduction to Object-Oriented Programming</i>
* (Skylight Publishing 2001, ISBN 0-9654853-7-4)
* and
* <i>Java Methods AB: Data Structures</i>
* (Skylight Publishing 2003, ISBN 0-9654853-1-5)
* EasyReader provides simple methods for reading the console and
* for opening and reading text files. All exceptions are handled
* inside the class and are hidden from the user.
* <xmp>
* Example:
* =======
* EasyReader console = new EasyReader();
* System.out.print("Enter input file name: ");
* String fileName = console.readLine();
* EasyReader inFile = new EasyReader(fileName);
* if (inFile.bad())
* System.err.println("Can't open " + fileName);
* System.exit(1);
* String firstLine = inFile.readLine();
* if (!inFile.eof()) // or: if (firstLine != null)
* System.out.println("The first line is : " + firstLine);
* System.out.print("Enter the maximum number of integers to read: ");
* int maxCount = console.readInt();
* int k, count = 0;
* while (count < maxCount && !inFile.eof())
* k = inFile.readInt();
* if (!inFile.eof())
* // process or store this number
* count++;
* inFile.close(); // optional
* System.out.println(count + " numbers read");
* </xmp>
public class EasyReader
protected String myFileName;
protected BufferedReader myInFile;
protected int myErrorFlags = 0;
protected static final int OPENERROR = 0x0001;
protected static final int CLOSEERROR = 0x0002;
protected static final int READERROR = 0x0004;
protected static final int EOF = 0x0100;
* Constructor. Prepares console (System.in) for reading
public EasyReader()
myFileName = null;
myErrorFlags = 0;
myInFile = new BufferedReader(
new InputStreamReader(System.in), 128);
* Constructor. opens a file for reading
* @param fileName the name or pathname of the file
public EasyReader(String fileName)
myFileName = fileName;
myErrorFlags = 0;
try
myInFile = new BufferedReader(new FileReader(fileName), 1024);
catch (FileNotFoundException e)
myErrorFlags |= OPENERROR;
myFileName = null;
* Closes the file
public void close()
if (myFileName == null)
return;
try
myInFile.close();
catch (IOException e)
System.err.println("Error closing " + myFileName + "\n");
myErrorFlags |= CLOSEERROR;
* Checks the status of the file
* @return true if en error occurred opening or reading the file,
* false otherwise
public boolean bad()
return myErrorFlags != 0;
* Checks the EOF status of the file
* @return true if EOF was encountered in the previous read
* operation, false otherwise
public boolean eof()
return (myErrorFlags & EOF) != 0;
private boolean ready() throws IOException
return myFileName == null || myInFile.ready();
* Reads the next character from a file (any character including
* a space or a newline character).
* @return character read or <code>null</code> character
* (Unicode 0) if trying to read beyond the EOF
public char readChar()
char ch = '\u0000';
try
if (ready())
ch = (char)myInFile.read();
catch (IOException e)
if (myFileName != null)
System.err.println("Error reading " + myFileName + "\n");
myErrorFlags |= READERROR;
if (ch == '\u0000')
myErrorFlags |= EOF;
return ch;
* Reads from the current position in the file up to and including
* the next newline character. The newline character is thrown away
* @return the read string (excluding the newline character) or
* null if trying to read beyond the EOF
public String readLine()
String s = null;
try
s = myInFile.readLine();
catch (IOException e)
if (myFileName != null)
System.err.println("Error reading " + myFileName + "\n");
myErrorFlags |= READERROR;
if (s == null)
myErrorFlags |= EOF;
return s;
* Skips whitespace and reads the next word (a string of consecutive
* non-whitespace characters (up to but excluding the next space,
* newline, etc.)
* @return the read string or null if trying to read beyond the EOF
public String readWord()
StringBuffer buffer = new StringBuffer(128);
char ch = ' ';
int count = 0;
String s = null;
try
while (ready() && Character.isWhitespace(ch))
ch = (char)myInFile.read();
while (ready() && !Character.isWhitespace(ch))
count++;
buffer.append(ch);
myInFile.mark(1);
ch = (char)myInFile.read();
if (count > 0)
myInFile.reset();
s = buffer.toString();
else
myErrorFlags |= EOF;
catch (IOException e)
if (myFileName != null)
System.err.println("Error reading " + myFileName + "\n");
myErrorFlags |= READERROR;
return s;
* Reads the next integer (without validating its format)
* @return the integer read or 0 if trying to read beyond the EOF
public int readInt()
String s = readWord();
if (s != null)
return Integer.parseInt(s);
else
return 0;
* Reads the next double (without validating its format)
* @return the number read or 0 if trying to read beyond the EOF
public double readDouble()
String s = readWord();
if (s != null)
return Double.parseDouble(s);
// in Java 1, use: return Double.valueOf(s).doubleValue();
else
return 0.0;
Can anybody please tell me what's wrong with this code? ThanksString[] message = {
"One, two, buckle your shoe",
"One, two, buckle your shoe",
"Three, four, shut the door",
"Three, four, shut the door",
"Five, six, pick up sticks",
"Five, six, pick up sticks",
"Seven, eight, lay them straight",
"Seven, eight, lay them straight",
"Nine, ten, this is the end",
"Nine, ten, this is the end"
if(n>0)
System.out.println(message[n]);
else
System.exit(0); -
Contest: Guess whats wrong with this code!
Can you guess whats wrong with this code snippet? Perhaps its too easy...
private void clearDefaultTableModel( DefaultTableModel dtm) {
int rowCount = dtm.getRowCount();
for(int i =0; i < rowCount; i++) {
dtm.removeRow(i);
}- Karl XIICan you guess whats wrong with this code snippet?
Perhaps its too easy...
private void clearDefaultTableModel(
DefaultTableModel dtm) {
int rowCount = dtm.getRowCount();
for(int i =0; i < rowCount; i++) {
dtm.removeRow(i);
it should be
private void clearDefaultTableModel(DefaultTableModel dtm) {
int rowCount = dtm.getRowCount();
for(int i =0; i < rowCount; i++) {
dtm.removeRow(0);
}or another way
private void clearDefaultTableModel(DefaultTableModel dtm) {
while(dtm.getRowCount()>0){
dtm.removeRow(0); -
Fed up! dont know whats wrong with this code
import java.io.*;
import java.net.*;
import java.awt.*;
public class machine {
private String machine_name;
private String IP_address;
public static void main(String[] args) throws IOException {
machine server = new machine();
server.machine_name = "SERVER1";
server.IP_address = "192.168.0.1";
InputStreamReader reads_incoming = null;
// Reads incoming Bytes
PrintWriter sends_outgoing = null;
Socket ping_socket = null;
try{
ping_socket = new Socket(server.machine_name , 7);
sends_outgoing = new PrintWriter(ping_socket.getOutputStream(),true);
reads_incoming = new InputStreamReader(ping_socket.getInputStream());
catch (UnknownHostException e){
//report error to sole text box
catch (IOException e)
//similar
/* Need a string to send some arbitrary bytes to SERVER1
* using IP_address instead , as this field in this implementation
while(true)
sends_outgoing.println(server.IP_address);
if(ping_socket.getInputStream() != null)
System.out.print("Server is up");
}same... i am not very experienced, and try and uses this as training... but as new to java programming i could still mention about 5 things that might be wrong with this code... so a deeper explanation would be nice...
while(true) { } for example seems like a nice way to make infinite loop that can suck your memory out of your computer pretty fast :-) newb -
Whath is wrong with this code???
Whath is wrong with this code:
import java.sql.*;
class DataBaseConnexion
Connection connexion;
String url;
DataBaseConnexion()
{// 1-charger le driver JDBC-ODBC
try
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
System.out.println("chargement du driver r�ussi");
catch(ClassNotFoundException exc) {
System.out.println("Erreur de chargement du pilote !");
}// d�finir le pseudo URL pour joindre la BD
url = "jdbc:odbc:cdi";//2- se connecter � la base de donn�es
try {
connexion = DriverManager.getConnection(url, "user_name", "pass_word");
System.out.println("connexion r�ussie");
catch(SQLException exc){
System.out.println("Erreur 1 ! - " + exc.toString());
public static void main(String Arg[])
DataBaseConnexion db = new DataBaseConnexion();
}//this errors occure
File "C:\Documents and Settings\Administrateur\Bureau\DataBaseConnexion.java" Line 40: Syntax Error
---------------- JDK Release Build ------------------
Compiling C:\Documents and Settings\Administrateur\Bureau\DataBaseConnexion.java
C:\Documents and Settings\Administrateur\Bureau\DataBaseConnexion.java:40: 'class' or 'interface' expected
public static void main(String Arg[])
^
C:\Documents and Settings\Administrateur\Bureau\DataBaseConnexion.java:45: 'class' or 'interface' expected
^
C:\Documents and Settings\Administrateur\Bureau\DataBaseConnexion.java:47: 'class' or 'interface' expected
^
3 errors
FinishedI think you should remove the last closing curly brackets two lines above the main method.
Regards -
What am i doing wrong with this class please help
What am i doing wrong with this class? I'm trying to create a JFrame with a JTextArea and a ScrollPane so that text can be inserted into the text area. however evertime i run the program i cannot see the textarea but only the scrollpane. please help.
import java.io.*;
import java.util.*;
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
import javax.swing.event.*;
public class Instructions extends JFrame{
public JTextArea textArea;
private String s;
private JScrollPane scrollPane;
public Instructions(){
super();
textArea = new JTextArea();
s = "Select a station and then\nadd\n";
textArea.append(s);
textArea.setEditable(true);
scrollPane = new JScrollPane(textArea, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
this.getContentPane().add(textArea);
this.getContentPane().add(scrollPane);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setTitle("Instructions");
this.setSize(400,400);
this.setVisible(true);
}//end constructor
public static void main(String args[]){
new Instructions();
}//end classI'm just winging this so it might be wrong:
import java.io.*;
import java.util.*;
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
import javax.swing.event.*;
public class Instructions extends JFrame{
public JTextArea textArea;
private String s;
private JScrollPane scrollPane;
public Instructions(){
super();
textArea = new JTextArea();
s = "Select a station and then\nadd\n";
textArea.append(s);
textArea.setEditable(true);
scrollPane = new JScrollPane(textArea, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
// Here you already have textArea in scrollPane so no need to put it in
// content pane, just put scrollPane in ContentPane.
// think of it as containers within containers
// when you try to put them both in at ContentPane level it will use
// it's layout manager to put them in there side by side or something
// so just leave this out this.getContentPane().add(textArea);
this.getContentPane().add(scrollPane);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setTitle("Instructions");
this.setSize(400,400);
this.setVisible(true);
}//end constructor
public static void main(String args[]){
new Instructions();
}//end class -
MacBook Pro continues to reboot then shows main screen with flickering green and white lines then restarts again what the heck is wrong with it?!
Sorry we can't assist with that, you'll have to take it to Apple.
If it's not worth fixing then you may be interested in this User tip
My computer is not working, is my personal data lost? -
Parallelport-whts wrong with this code?
guys i need to know wht's wrong with this code.i sent the byte x=5 to the parallel port.and tried to read it back intoo another variable y..but the value of y is not returning.
it showed the errors:
1. printer port LPT1 :failed to write:IOException
2.Exception
java.io.IOException The device is not connected in writebyte
i have no devices connected to the parallel port.
my code is included:
import javax.comm.*;
import java.io.*;
public class Parallelio {
private static OutputStream outputStream;;
private static ParallelPort parallelPort;
private static CommPortIdentifier port;
private static InputStream inputStream;
// CONSTANT
public static final String PARALLEL_PORT = "LPT1";
public static void main(String[] args) {
try {
// get the parallel port connected to the printer
port = CommPortIdentifier.getPortIdentifier(PARALLEL_PORT);
// open the parallel port -- open(App name, timeout)
parallelPort = (ParallelPort) port.open("CommTest", 50);
outputStream = parallelPort.getOutputStream();
byte x=5;
byte y;
outputStream.write(x);
inputStream=parallelPort.getInputStream();
y=(byte)inputStream.read();
System.out.println("The value read is:"+y);
outputStream.flush();
outputStream.close();
// inputStream.flush();
inputStream.close();
} catch (NoSuchPortException nspe) {
System.out.println("\nPrinter Port LPT1 not found : "
+ "NoSuchPortException.\nException:\n" + nspe + "\n");
} catch (PortInUseException piue) {
System.out.println("\nPrinter Port LPT1 is in use : "
+ "PortInUseException.\nException:\n" + piue + "\n");
catch (IOException ioe) {
System.out.println("\nPrinter Port LPT1 failed to write : "
+ "IOException.\nException:\n" + ioe + "\n");
} catch (Exception e) {
System.out
.println("\nFailed to open Printer Port LPT1 with exeception : "
+ e + "\n");
} finally {
if (port != null && port.isCurrentlyOwned()) {
parallelPort.close();
System.out.println("Closed all resources.\n");
regards
arun
Message was edited by:
arun_koshy
Message was edited by:
arun_koshy
Message was edited by:
arun_koshyHi
I also need jwrapi package, could someone send me the binaries or the password?
My email is
[email protected]
thank you. -
What's wrong with this code (AS3)?
I want to publish a live stream and, when a button is pressed, publish the same stream for vod. I haven't been able to get an answer as to whether I can do this...my code is below. Can someone please tell me if I can do this, or what may be wrong with my code?
The live stream and playback works fine; but the recording doesn't start. Also, I want other objects on the client, such as the current camera and audio information, and the aspect ratio being used. I havent' been able to get these to show up (i.e., the incomingLbl and outgoingLbl do not show up).
Thank you,
Phillip A
My code:
package {
import flash.display.MovieClip;
import flash.net.NetConnection;
import flash.events.NetStatusEvent;
import flash.events.MouseEvent;
import flash.events.AsyncErrorEvent;
import flash.net.NetStream;
import flash.media.Video;
import flash.media.Camera;
import flash.media.Microphone;
import fl.controls.Button;
import fl.controls.Label;
import fl.controls.TextArea;
import fl.controls.CheckBox;
public class vodcast1 extends MovieClip {
private var nc:NetConnection;
private var nc2:NetConnection;
private var ns:NetStream;
private var ns2:NetStream;
private var nsPlayer:NetStream;
private var vid:Video;
private var vidPlayer:Video;
private var cam:Camera;
private var mic:Microphone;
private var camr:Camera;
private var micr:Microphone;
private var clearBtn:Button;
private var startRecordBtn:Button;
private var outgoingLbl:Label;
private var incomingLbl:Label;
private var myMetadata:Object;
private var outputWindow:TextArea;
private var cb1:CheckBox;
public function vodcast1(){
setupUI();
nc = new NetConnection();
nc.addEventListener(NetStatusEvent.NET_STATUS, onNetStatus);
nc.connect("rtmp://localhost/publishLive");
nc2 = new NetConnection();
nc2.connect("rtmp://localhost/vod/videos");
nc2.addEventListener(NetStatusEvent.NET_STATUS, onNetStatus2);
private function startRecordHandler(event:MouseEvent):void {
publishRecordStream();
private function onNetStatus(event:NetStatusEvent):void {
trace(event.target + ": " + event.info.code);
switch (event.info.code)
case "NetConnection.Connect.Success":
trace("Congratulations! you're connected to live");
publishCamera();
displayPublishingVideo();
displayPlaybackVideo();
break;
case "NetStream.Publish.Start":
// NetStatus handler for Record stream
private function onNetStatus2(event:NetStatusEvent):void {
trace(event.target + ": " + event.info.code);
switch (event.info.code)
case "NetConnection.Connect.Success":
trace("Congratulations! you're connected to vod");
break;
case "NetConnection.Connect.Rejected":
case "NetConnection.Connect.Failed":
trace ("Oops! the connection was rejected");
break;
case "NetStream.Publish.Start":
sendMetadata();
break;
private function asyncErrorHandler(event:AsyncErrorEvent):void {
trace(event.text);
private function sendMetadata():void {
trace("sendMetaData() called")
myMetadata = new Object();
myMetadata.customProp = "Recording in progress";
ns.send("@setDataFrame", "onMetaData", myMetadata);
private function publishRecordStream():void {
camr = Camera.getCamera();
micr = Microphone.getMicrophone();
ns2 = new NetStream(nc2);
ns2.client = new Object();
ns2.addEventListener(NetStatusEvent.NET_STATUS, onNetStatus2);
ns2.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
ns2.attachCamera(camr);
ns2.attachAudio(micr);
ns2.publish("vodstream", "record");
private function publishCamera():void {
cam = Camera.getCamera();
mic = Microphone.getMicrophone();
ns = new NetStream(nc);
ns.client = this;
ns.addEventListener(NetStatusEvent.NET_STATUS, onNetStatus);
ns.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
ns.attachCamera(cam);
ns.attachAudio(mic);
ns.publish("livestream", "live");
private function displayPublishingVideo():void {
vid = new Video(cam.width, cam.height);
vid.x = 10;
vid.y = 30;
vid.attachCamera(cam);
addChild(vid);
private function displayPlaybackVideo():void {
nsPlayer = new NetStream(nc);
nsPlayer.client = this;
nsPlayer.addEventListener(NetStatusEvent.NET_STATUS, onNetStatus);
nsPlayer.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
nsPlayer.play("livestream");
vidPlayer = new Video(cam.width, cam.height);
vidPlayer.x = cam.width + 100;
vidPlayer.y = 30;
vidPlayer.attachNetStream(nsPlayer);
addChild(vidPlayer);
private function setupUI():void {
outputWindow = new TextArea();
outputWindow.move(250, 175);
outputWindow.width = 200;
outputWindow.height = 50;
outgoingLbl = new Label();
incomingLbl = new Label();
outgoingLbl.width = 100;
incomingLbl.width = 100;
outgoingLbl.text = "Publishing Stream";
incomingLbl.text = "Playback Stream";
outgoingLbl.move(20, 200);
incomingLbl.move(300, 200);
outgoingLbl.condenseWhite = true;
incomingLbl.condenseWhite = true;
startRecordBtn = new Button();
startRecordBtn.width = 150;
startRecordBtn.move(250, 345);
startRecordBtn.label = "Start Recording";
startRecordBtn.addEventListener(MouseEvent.CLICK, startRecordHandler);
//cb1 = new CheckBox();
//cb1.label = "Record";
//cb1.move(135,300);
//cb1.addEventListener(MouseEvent.CLICK,publishRecordStream);
//clearBtn = new Button();
// clearBtn.width = 100;
// clearBtn.move(135,345);
// clearBtn.label = "Clear Metadata";
// clearBtn.addEventListener(MouseEvent.CLICK, clearHandler);
addChild(outgoingLbl);
addChild(incomingLbl);
// addChild(clearBtn);
addChild(startRecordBtn);
// addChild(cb1);
addChild(outputWindow);
public function onMetaData(info:Object):void {
outputWindow.appendText(info.customProp);use event.currentTarget (and you don't need to repeatedly define the same function):
var c:int;
var buttonName:String;
for (c = 1;c < 5;c++) {
buttonNum = "button"+c;
this[buttonNum].addEventListener(MouseEvent.MOUSE_DOWN, pressStepButton);
function pressStepButton(event:MouseEvent) { trace(event.currentTarget,event.currentTarget.name); } -
What's wrong with this code (in recursion there may be a problem )
// ELEMENTS OF TWO VECTORS ARE COMPARED HERE
// CHECK WHAT IS WRONG WITH THIS PGM
// there may be a problem in recursion
import java.util.*;
class Test
Vector phy,db;
public static void main(String adf[])
Vector pp1=new Vector();
Vector dp1=new Vector();
//adding elements to the vector
pp1.add("1");
pp1.add("a");
pp1.add("b");
pp1.add("h");
pp1.add("c");
dp1.add("q");
dp1.add("c");
dp1.add("h");
dp1.add("w");
dp1.add("t");
printVector(dp1);
printVector(pp1);
check2Vectors(pp1,dp1);
public static void printVector(Vector v1)
System.out.println("Vector size "+v1.size());
for(int i=0;i<v1.size();i++)
System.out.println(v1.get(i).toString());
public static void check2Vectors(Vector p,Vector d)
System.out.println("p.size() "+p.size()+" d.size() "+d.size());
printVector(p);
printVector(d);
for(int i=0;i<p.size();i++)
for(int j=0;j<d.size();j++)
System.out.println(" i= "+i+" j= "+j);
Object s1=p.elementAt(i);
Object s2=d.elementAt(j);
System.out.println("Checking "+s1+" and "+s2);
if(s1.equals(s2))
System.out.println("Equal and Removing "+s1+" and "+s2);
p.remove(i);
d.remove(j);
printVector(p);
printVector(d);
check2Vectors(p,d);
}//inner for
}//outer for
if(p.size()==0||d.size()==0)
System.out.println("Vector checking finished and both match");
else
System.out.println("Vector checking finished and both do not match");
}//method
}hi,
but the upper limit is changing everytime you call the function recursively
so there should not be any problem(i suppose)
my intension is to get the unmatched elements of the two vectors
suggest me changes and thanks in advancce
ashok
The problems comes from the fact that you remove
elements for a Vector while iterating in a loop where
the upper limit as been set to the initial size of the
Vector.
You should use so while loops with flexible stop
conditions that would work when the size of the Vector
changes.
Finally: why don't you use Vector.equals() ? -
DataOutputStream - whts wrong with this code!?!
Hi
I want to write a string to a file already existing on my phone.
I used the following code but it throws a classNotFound and ConnectionNotFoundException
I tried the follwoing 2 ways (I think theyr pretty much the same thing):
1.
String uri = "c:/documents/flash/my.txt";
DataOutputSream dos = Connector.openDataOutputStream(uri);
dos.writeUTF("hi");
2.
String uri = "c:/documents/flash/my.txt";
OutputConnection conn = (OutputConnection)Connector.open(uri",Connector.WRITE);
DataOutputStream dos = conn.openDataOutputStream();
dos.writeUTF("hi");
please can u tell me whts wrong with this or is the method itself that is wrong. how can I solve this... my basic purpose is to write a text to an existing file using a j2me application
thanx
Forum M ParmarProbably, there is no OutputConnection avalaible... writing files is not standard in j2me!
-
HELP PLEASE - WHATS WRONG WITH THIS CODE
Hi. I get this message coming up when I try to compile the code,
run:
java.lang.NullPointerException
at sumcalculator.SumNumbers.<init>(SumNumbers.java:34)
at sumcalculator.SumNumbers.main(SumNumbers.java:93)
Exception in thread "main"
Java Result: 1
BUILD SUCCESSFUL (total time: 2 seconds)
I am not sure whats wrong with the code. Any assistance would be nice. The code is below.
package sumcalculator;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class SumNumbers extends JFrame implements FocusListener {
JTextField value1;
JTextField value2;
JLabel equals;
JTextField sum;
JButton add;
JButton minus;
JButton divide;
JButton multiply;
JLabel operation;
public SumNumbers() {
SumNumbersLayout customLayout = new SumNumbersLayout();
getContentPane().setFont(new Font("Helvetica", Font.PLAIN, 12));
getContentPane().setLayout(customLayout);
value1.addFocusListener(this);
value2.addFocusListener(this);
sum.setEditable(true);
value1 = new JTextField("");
getContentPane().add(value1);
value2 = new JTextField("");
getContentPane().add(value2);
equals = new JLabel("label_1");
getContentPane().add(equals);
sum = new JTextField("");
getContentPane().add(sum);
add = new JButton("+");
getContentPane().add(add);
minus = new JButton("-");
getContentPane().add(minus);
divide = new JButton("/");
getContentPane().add(divide);
multiply = new JButton("*");
getContentPane().add(multiply);
operation = new JLabel();
getContentPane().add(operation);
setSize(getPreferredSize());
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
public void focusGained(FocusEvent event){
try {
float total = Float.parseFloat(value1.getText()) +
Float.parseFloat(value2.getText());
sum.setText("" + total);
} catch (NumberFormatException nfe) {
value1.setText("0");
value2.setText("0");
sum.setText("0");
public void focusLost(FocusEvent event){
focusGained(event);
public static void main(String args[]) {
SumNumbers window = new SumNumbers();
window.setTitle("SumNumbers");
window.pack();
window.show();
class SumNumbersLayout implements LayoutManager {
public SumNumbersLayout() {
public void addLayoutComponent(String name, Component comp) {
public void removeLayoutComponent(Component comp) {
public Dimension preferredLayoutSize(Container parent) {
Dimension dim = new Dimension(0, 0);
Insets insets = parent.getInsets();
dim.width = 711 + insets.left + insets.right;
dim.height = 240 + insets.top + insets.bottom;
return dim;
public Dimension minimumLayoutSize(Container parent) {
Dimension dim = new Dimension(0, 0);
return dim;
public void layoutContainer(Container parent) {
Insets insets = parent.getInsets();
Component c;
c = parent.getComponent(0);
if (c.isVisible()) {c.setBounds(insets.left+24,insets.top+48,128,40);}
c = parent.getComponent(1);
if (c.isVisible()) {c.setBounds(insets.left+256,insets.top+48,128,40);}
c = parent.getComponent(2);
if (c.isVisible()) {c.setBounds(insets.left+408,insets.top+48,56,40);}
c = parent.getComponent(3);
if (c.isVisible()) {c.setBounds(insets.left+488,insets.top+48,152,40);}
c = parent.getComponent(4);
if (c.isVisible()) {c.setBounds(insets.left+128,insets.top+136,72,40);}
c = parent.getComponent(5);
if (c.isVisible()) {c.setBounds(insets.left+248,insets.top+136,72,40);}
c = parent.getComponent(6);
if (c.isVisible()) {c.setBounds(insets.left+368,insets.top+136,72,40);}
c = parent.getComponent(7);
if (c.isVisible()) {c.setBounds(insets.left+488,insets.top+136,72,40);}
c = parent.getComponent(8);
if (c.isVisible()) {c.setBounds(insets.left+176,insets.top+48,56,40);}
}Thank you. How do i amend this? I have defined value1though.Yes, you did - but after the call to addFocusListener(...). It needs to be before it.
BTW, you did the same thing with "value2.addFocusListener(this)" and "sum.setEditable(true)" on the next two lines. You're attempting to call a method on an object that doesn't exist yet (i.e., you haven't called new yet). -
I want to limit the JFileChooser to display only txt and java file. But the code I wrote has error and I don't know what's wrong with it. can anyone help me to check it out? Thank you.
import java.io.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class FileFilterTest extends JPanel
public static void main(String[] args)
new FileFilterTest();
public class fFilter implements FileFilter
public boolean accept(File file)
String name = file.getName();
if(name.toLowerCase().endsWith(".java") || name.toLowerCase().endsWith(".txt"))
return true;
else
return false;
public FileFilterTest()
JFileChooser fc = new JFileChooser();
fc.setFileFilter(new fFilter());
fc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
fc.setCurrentDirectory(new File(System.getProperty("user.dir")));
//fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
//fc.setMultiSelectionEnabled(true);
int returnVal = fc.showDialog(FileFilterTest.this, "Open File");
if(returnVal == JFileChooser.APPROVE_OPTION)
String file = fc.getSelectedFile().getPath();
if(file == null)
return;
else if(returnVal == JFileChooser.CANCEL_OPTION)
System.exit(0);
else
System.exit(0);
JFrame f = new JFrame();
FileFilterTest ff = new FileFilterTest();
f.setTitle("FileFilterTest");
f.setBackground(Color.lightGray);
f.getContentPane().add(ff, BorderLayout.CENTER);
f.setSize(800, 500);
f.setVisible(true);
}There are two file filters
class javax.swing.filechooser.FileFilter
interface java.io.FileFilter
In Swing you need to make a class which extends the first one and implements the second. Sometimes you may not need to implement the second, but it is more versitle to do so and requires no extra work. -
What's Wrong With This Code?
I've been trying to get a test automaton plugin to work. It builds correctly with no errors or warnings yet when I attempt to use it, I get no results. No errors either. All its intended to do is Copy > Make New Layer > Paste. The code is below. The sample code used was the MakeSelectFill plugin that I modified from the old 6.0 SDK along with using an older copy of Visual C++ that can open the project. Any help is much appreciated.
#include <stdio.h>//defines sprintf
#include "PIUGet.h"//defines PIUGetInfo, not used in MakeSelectFill
#include "PIDefines.h"//defines __PIMac__, __PIWin__
#include "PIGeneral.h"//defines kPSPhotoshopCaller, kPSDoIt
#include "SPInterf.h"//defines kSPInterfaceCaller, kSPInterfaceAboutSelector,
//kSPInterfaceStartupSelector,
#include "SPBasic.h"//defines SPBasicSuite
#include "SPAccess.h"//defines kSPAccessCaller, kSPAccessReloadSelector,
//kSPAccessUnloadSelector, not used in MakeSelectFill
#include "PIActions.h"//defines PSActionDescriptorProcs, PSActionReferenceProcs,
//PSActionControlProcs
#include "ADMBasic.h"//contains cross-platform alert dialogs, about boxes,
//file and directory dialogs, string conversions
#include "PIUSuites.h"//defines PIUSuitesAcquire and PIUSuitesRelease
// Function Prototypes.
DLLExport SPAPI SPErr PluginMain(const char* caller,
const char* selector,
const void* data );
// Globals -- Define global variables for plug-in scope.
SPBasicSuite *sSPBasic = NULL;// the Basic Suite
//create pointers to the suites
PSActionDescriptorProcs *sPSActionDescriptor = NULL;
PSActionReferenceProcs *sPSActionReference = NULL;
PSActionControlProcs *sPSActionControl = NULL;
PSActionListProcs *sPSActionList = NULL;
ADMBasicSuite *sADMBasic = NULL;
_AcquireList MySuites[] =
kPSActionDescriptorSuite, kPSActionDescriptorSuiteVersion, (void **)&sPSActionDescriptor,
kPSActionReferenceSuite, kPSActionReferenceSuiteVersion, (void **)&sPSActionReference,
//note that the previous version of the Control suite is used for compatibility with 5.5
kPSActionControlSuite, kPSActionControlSuitePrevVersion, (void **)&sPSActionControl,
kPSActionListSuite, kPSActionListSuiteVersion, (void **)&sPSActionList,
kADMBasicSuite, kADMBasicSuiteVersion, (void **)&sADMBasic
// PluginMain
// All calls to the plug-in module come through this routine.
// It must be placed first in the resource. To achieve this,
// most development systems require this be the first routine
// in the source.
// The entrypoint will be "pascal void" for Macintosh,
// "void" for Windows.
DLLExport SPAPI SPErr PluginMain(const char* caller, // who is calling
const char* selector, // what they want
const void* data )// the message
SPErr error = kSPNoError;
SPMessageData *basicMessage = NULL;
// all messages contain a SPMessageData*
basicMessage = (SPMessageData *) data;
sSPBasic = basicMessage->basic;
// acquire all the global suite pointers now
error = PIUSuitesAcquire(sSPBasic,
MySuites,
sizeof (MySuites) / sizeof (_AcquireList));
if (error) return error;
// check for SP interface callers
if (sSPBasic->IsEqual((char*)caller, kSPInterfaceCaller))
if (sSPBasic->IsEqual((char*)selector, kSPInterfaceAboutSelector))
// Photoshop is calling
if (sSPBasic->IsEqual((char*)caller, kPSPhotoshopCaller))
// the one and only message
if (sSPBasic->IsEqual((char*)selector, kPSDoIt))
// clean up, free memory
PIUSuitesRelease(sSPBasic,
MySuites,
sizeof (MySuites) / sizeof (_AcquireList));
return error;
}/*end PluginMain*/
// Test Plugin
// This plugin is used as a test.
// Its functions are Copy > Make New Layer > Paste
SPErr Copy(void)
PIActionDescriptor result = NULL;
SPErr error = kSPNoError;
error = sPSActionControl->Play(&result, eventCopy, NULL, plugInDialogSilent);
if (error) goto returnError;
returnError:
if (result != NULL) sPSActionDescriptor->Free(result);
return error;
//make new layer here//
SPErr MakeLayer(void)
PIActionDescriptor descriptor = NULL;
PIActionReference reference = NULL;
PIActionDescriptor result = NULL;
SPErr error = kSPNoError;
error = sPSActionDescriptor->Make(&descriptor);
if (error) goto returnError;
// Move this to the top of the routine!
error = sPSActionReference->Make(&reference);
if (error) goto returnError;
error = sPSActionReference->PutClass(reference,classLayer);
if (error) goto returnError;
error = sPSActionDescriptor->PutReference(descriptor,keyNull,reference);
if (error) goto returnError;
error = sPSActionControl->Play(&result,eventMake,descriptor,plugInDialogSilent);
if (error) goto returnError;
returnError:
if (result != NULL) sPSActionDescriptor->Free(result);
if (descriptor != NULL) sPSActionDescriptor->Free(descriptor);
if (reference != NULL) sPSActionReference->Free(reference);
return error;
//end make new layer//
//start paste//
SPErr Paste(void)
PIActionDescriptor result = NULL;
SPErr error = kSPNoError;
error = sPSActionControl->Play(&result,eventPaste,NULL,plugInDialogSilent);
if (error) goto returnError;
returnError:
if (result != NULL) sPSActionDescriptor->Free(result);
return error;
//end paste//
// all windows plug-ins need a DllMain
#ifdef __PIWin__
BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_rearson_for_call,
LPVOID lpReserved )
return TRUE;
#endifYou seem to be missing something inside here. Probably Copy();MakeLayer();Paste();
// Photoshop is calling
if (sSPBasic->IsEqual((char*)caller, kPSPhotoshopCaller))
// the one and only message
if (sSPBasic->IsEqual((char*)selector, kPSDoIt))
Maybe you are looking for
-
SAP threading-how to pass data between different batch job programs?
Hi everyone, now i have one problem about performance tuning using threading in SAP programs: split one big program into two programs - one is main program and the other is sub program. using batch jobs, we can submit multi jobs of sub program at
-
Nested site navigation using Web Page Composer (WPC)
Is it possible to nest navigation nodes using Web Page Composer? I have created a WPC site and added pages, but I am required to create a node with sub-pages (similar to adding a folder to a workset) for a site. Has anyone done this or know how to ea
-
How do I get the English languege pack on Adobe Bridge CC 64-bit.
I tryed uninstalling and installing to get the english languege pack. But no use. Where is the languege cached?
-
How did I accidentally convert all my images to 8-bit?
Hello, Five minutes ago, I verified that my image in Camera Raw prior to importing into Adobe Photoshop CS6 was in 16-bit mode. Immediately after I imported it into Photoshop and it became a .psd document, I verified once again that it was still in 1
-
Motion Time Lapse, Stabilization with a Rotation.
Hello! I use "Stabilize Motion" in AAE CS4 9.0.3.8 for creating MOTION-timelapse video content from series of shots from my DSLR camera. Everything is fine! As I see the tool (marker for Rotation is on) provides the stabilization technique in such wa