Java.lang.NoSuchMethod: main - Help pls

This is the code i got off a book but it seems like it's not working. I got an error which says 'java.lang.NoSuchMethod: main' Help pls...
import java.io.*;
import java.util.*;
class PostfixInterpreter {
     private String postfixString, outputString;
private boolean isOperator(char c) {
     return (c == '+' || c == '-' || c == '*' || c == '/' || c == '^' );
private boolean isSpace(char c) {
     return (c == ' ');
}//end isSpace
public void interpretPostfix() {
     Stack evalStack= new Stack();
     double leftOperand, rightOperand;
     char c;
     StringTokenizer parser = new StringTokenizer(postfixString,"+-*/^ ", true);
     while (parser.hasMoreTokens()){
          String token = parser.nextToken();
          c = token.charAt(0);
          if ((token.length() == 1) && isOperator(c)) {
               rightOperand = ((Double)evalStack.pop()).doubleValue();
               leftOperand = ((Double)evalStack.pop()).doubleValue();
               switch (c) {
                    case'+': evalStack.push(new Double(leftOperand+rightOperand));
                                   break;
                    case'-': evalStack.push(new Double(leftOperand-rightOperand));
                                   break;
                    case'*': evalStack.push(new Double(leftOperand*rightOperand));
                                   break;
                    case'/': evalStack.push(new Double(leftOperand/rightOperand));
                                   break;
                    case'^': evalStack.push(new Double(Math.exp(Math.log(leftOperand)*rightOperand)));
                                   break;
                    default:
                                   break;
               }//end of switch
          }else if((token.length() == 1)&& isSpace(c)){
          }else {
               evalStack.push(Double.valueOf(token));
          }//end if
     }//end while
// remove final result from stack and output it
output("value of postfix expression = " + evalStack.pop());
}//end interpretPostfix
private void output(String input){
     postfixString = input;
     }//end setInput
public String getOutput(){
     return outputString;
}//end getOutput
}//end class PostfixInterpreter
/*Stack class*/
class Stack {
     private int count;
     private int capacity;
     private int capacityIncrement;
     private Object[] itemArray;
//the following defines a no-arg constrcutor for Stack objects
public Stack() {
     count = 0;
     capacity = 100;
     capacityIncrement = 5;
     itemArray = new Object[capacity];
     public boolean empty() {
          return (count ==0);
     public void push(Object X) {
          //if the itemArray does not have enough capacity
          //expend the itemArray by the capacity increment
               if(count == capacity) {
                    capacity += capacityIncrement;
                    Object[] tempArray = new Object[capacity];
                    for (int i=0; i<count;i++){
                         tempArray[i] = itemArray;
               itemArray=tempArray;
          //insert the new item X at the end of the current item sequence
          //and increase the stack's count by one
               itemArray[count++]=X;
public Object pop() {
     if(count==0){
          return null;
     }else{
          return itemArray[--count];
}//end of pop()
public Object peek() {
     if (count == 0){
          return null;
     }else{
          return itemArray[count-1];
}//end peek()

First, when posting code in the future, use the code /code tags. Just highlight the code and click the code. button.
The error probably occurred when you tried to launch the class as an application by entering "java PostfixInterpreter" The java application launcher looks for a method in the PostfixInterpreter class whose signature is exactly public static void main(String[] args)(except 'args' can be any legal variable name). Since your PostfixInterpreter class doesn't have this method, you get the error. If you want this class to run, you have to include the method and code inside the method that runs the application.

Similar Messages

  • Exception in thread "main" java.lang.NoSuchMethodError: main -- Help

    I am new to Java programming and I have been working out of a book trying to learn the language. I am working on a Ubuntu system using Eclipse. I get an error when I try to run this app. It is: Exception in thread "main" java.lang.NoSuchMethodError: main. I have Googled it and read different possible solutions, but none have helped. Can someone help me solve this?
    Here is the code for battleshipGameTestDrive.java:_
    import java.util.ArrayList;
    public class battleshipGameTestDrive
         public static void main(String[] args, ArrayList<String> locations)      
              int numOfGuesses = 0;
              boolean isAlive = true;
              GameHelper helper = new GameHelper();
              battleshipGame ship = new battleshipGame();
              for (int ctr = 1; ctr < 4; ctr++)
                   int randomNum = (int) (Math.random() * 5);          
                   locations.add(Integer.toString(randomNum));
                   ship.setLocationCells(locations);
              while (isAlive == true){
                   String userGuess = helper.getUserInput("Enter a number (1-7): ");
                   numOfGuesses++;
                   String result = ship.checkYourself(userGuess);
                   if (result.equals("kill")){
                        isAlive = false;
                        System.out.println("You took " + numOfGuesses + " guesses");
                   } // close result if
              }  //end while loop
         }// end of main
    }// end of battleshipGameTestDrive class
    Here is the code for the battleshipGame class.java:_
    import java.util.ArrayList;
    public class battleshipGame {
         private ArrayList<String> locationCells;
         public void setLocationCells(ArrayList<String> loc){
              locationCells = loc;
         public String checkYourself(String userInput){
              String result = "miss";          
              int index = locationCells.indexOf(userInput);
              if (index >= 0){
                   locationCells.remove(index);
                   if (locationCells.isEmpty()){
                        result = "kill";
                   }else{
                        result = "hit";
                   }// close if
              }// closer outer if
              return result;
         }     //close method
    }     //close class

    Hello,
    I saw your short message youe sent to someone who had a problem : Exception in thread "main" java.lang.NoSuchMethodError :main
    So I was thinking maybe you could help me I struggle with this code fro 3weeks, this is a code I save it later as
    import java.awt.*;
    import java.awt.event.*;
    class Party {
    public void makeInvitation(){
    Frame f = new Frame();
    Label l = new Label("Party at Tom's");
    Button b = new Button("Sure");
    Button c = new Button("Noo...");
    Panel p = new Panel();
    p.add(l);
    I write this code in Notepad++ than I save it as java file with looks like this : Java source file (*.java)
    - than in Command Prompt I write : javac Party.java as usual and it comes with this error below Exception in thread "main" .......
    I have no idea what's wrong with it.Can you help me
    Thank you in advance

  • Bea weblogic server 6.1 - Failure in process sockets - Java.lang.NoSuchmethod Error

    Hi
    I have installed the BEA weblogic server 6.1 service pack 4 as part of PIA (PeopleSoft
    Internet Architecture) installation for PeopleSoft 8.8.
    After starting the weblogic server, When I type the
    http://localhost:12080 (http port number 12080) ideally it should take me to
    the BEA home page, but it is throwing an error in the log file.
    " Failure in Process sockets - Get Data Java.lang.nosuchmethod error"
    Your help is very much appreciated.
    Any pointers are welcome.
    Thanks
    Aswartha

    I had similar problems with my install of Weblogic 6.1 sp4. I am installing PS
    HRMS 8.8 sp1
    and PeopleTools 8.44 Patch 2 (Patch 2 is required for install) Peoplesoft sent
    me Weblogic 8.1
    with my new Tools 8.44. This version and installation is light years ahead of
    Weblogic 6.1. If
    you are able to load the new version of Weblogic and Tuxedo, it is worth it.
    If not, you may want to check to see if your JAR file was installed correctly.
    (The new version
    of WL doesn't make you unzip your JAR files for the install.)
    In the command line for unzipping the JAR file, make sure you type the phrase
    EXACTLY as
    shown IT IS CASE SENSITIVE. I messed with this for two hours until I saw that
    I wasn't putting
    a capital letter in one of the words where I should have been.
    Hope this helps.
    "Aswarth" <[email protected]> wrote:
    >
    Hi
    I have installed the BEA weblogic server 6.1 service pack 4 as part of
    PIA (PeopleSoft
    Internet Architecture) installation for PeopleSoft 8.8.
    After starting the weblogic server, When I type the
    http://localhost:12080 (http port number 12080) ideally it should take
    me to
    the BEA home page, but it is throwing an error in the log file.
    " Failure in Process sockets - Get Data Java.lang.nosuchmethod error"
    Your help is very much appreciated.
    Any pointers are welcome.
    Thanks
    Aswartha

  • Java.lang.NoSuchMethodError: main, only when I run project, not file

    When I am running my project to test it I am getting the following error message.
    Exception in thread "main" java.lang.NoSuchMethodError: main
    I have checked all the files are in the corrcet place, and all called what the class is called, which they are, I do not know where else to look. And I have to hjand this in is a week and a half!!!
    Also, the error only happens when I run the PROJECT and not when I run the file on its own. Below is the code. Does anyone have any ideas to help me?
    public class ToolList
         private Tool[] toolArray;
         public ToolList()
              toolArray = new Tool[100];
              for (int i=0;i<toolArray.length;i++)
                   toolArray=null;
         }//end toolList default constructor
         public boolean addTool (Tool toolIn)
              for (int i=0;i<toolArray.length;i++)
                   if (toolArray[i]==null)
                        toolArray[i]=toolIn;
                        return true;
              return false;
         public static void main(String args[])
                   Tool Hammer = new Tool("Hammer","H0001",16.45F);
                   ToolList tl1 = new ToolList();
                   if (tl1.addTool(Hammer) ) System.out.println("Tool added");
    Thanks
    Java Chick :)

    Thanks all!
    "Java has no concept of a 'project' so I assume that you are using an IDE for development. Most IDEs have a 'project' concept and some means of defining the 'main' class for the 'project'. Which IDE are you using?
    I am using JCreator V3 LE. I have many files set up, Tool.java, ToolList.java, Company.java, Customer.java and CustomerList.java.
    At the moment I am just tesing each class as I go and adding Main to the bottom of the classs I am testing.
    but, as this one has an array that refers to other objects I thought I had to create this in a seperate file and run the group of files together.
    "James 91 - Environment Variables"
    When I check the class path I see the following:
    C:\Program Files\Xinox Software\JCreatorV3 LE\MyProjects\Main Project\classes;C:\Program Files\Java\jdk1.5.0\jre\lib\rt.jar;C:\Program Files\Java\jdk1.5.0\lib\dt.jar;C:\Program Files\Java\jdk1.5.0\lib\tools.jar;C:\Program Files\Java\jdk1.5.0\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.5.0\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.5.0\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.5.0\jre\lib\ext\sunpkcs11.jar
    Should I change this to C\Program Files\Java\jdk1.5.0\lib\tools.jar
    Thanks
    Java Chick.

  • Business Component Tester-java.lang.NoSuchMethod error

    I'm running Oracle 8i(R2) on Linux. The OAS is on the NT 4.5 SP5. I succesfully deployed a simple BC4J to OAS, but testing it from JD3.1 the BC Tester return following error:
    "java.lang.System: method
    setProperty(Ljava/lang/String; Ljava/lang/String ;) Ljava/lang/String; not found"
    Testing it locally works just fine.
    Could anybody help me with this?
    null

    I had similar problems with my install of Weblogic 6.1 sp4. I am installing PS
    HRMS 8.8 sp1
    and PeopleTools 8.44 Patch 2 (Patch 2 is required for install) Peoplesoft sent
    me Weblogic 8.1
    with my new Tools 8.44. This version and installation is light years ahead of
    Weblogic 6.1. If
    you are able to load the new version of Weblogic and Tuxedo, it is worth it.
    If not, you may want to check to see if your JAR file was installed correctly.
    (The new version
    of WL doesn't make you unzip your JAR files for the install.)
    In the command line for unzipping the JAR file, make sure you type the phrase
    EXACTLY as
    shown IT IS CASE SENSITIVE. I messed with this for two hours until I saw that
    I wasn't putting
    a capital letter in one of the words where I should have been.
    Hope this helps.
    "Aswarth" <[email protected]> wrote:
    >
    Hi
    I have installed the BEA weblogic server 6.1 service pack 4 as part of
    PIA (PeopleSoft
    Internet Architecture) installation for PeopleSoft 8.8.
    After starting the weblogic server, When I type the
    http://localhost:12080 (http port number 12080) ideally it should take
    me to
    the BEA home page, but it is throwing an error in the log file.
    " Failure in Process sockets - Get Data Java.lang.nosuchmethod error"
    Your help is very much appreciated.
    Any pointers are welcome.
    Thanks
    Aswartha

  • Exception in thread "main" java.lang.NoSuchMethodeError: main

    I'm trying to learn Java, but even the simple HelloWord won't run.
    It compiles fine with: javac HelloWorld.java
    But when I run the program with: java Helloworld or java -classpath . HelloWorld
    I always get the following error message: Exception in thread "main" java.lang.NoSuchMethodeError: main
    Path = ....;C:\j2sdk1.4.1\bin
    Classpath = C:\j2sdk1.4.1\lib\tools.jar;c:\j2sdk1.4.1\src.zip;c:\Java
    c:\Java is where I've stored HelloWorld.java.
    I'm using Java 2 SDK 1.4.1 on a Windows XP Pro platform.
    Here the simple code for HelloWorld:
    public class HelloWorld{
    public static void main(String[] args){
    System.out.println("Hello World!");
    Who out there can help me along. I want to learn Java, but if I can't even run the simplest application, it's hopeless.
    You can mail me: [email protected]
    or leave a message here.
    thx

    It should run with things as you've set them up. I copied, compiled and ran the program ok.
    Watch your capitalization; there is an error in your post (but maybe you just posted wrong):
    But when I run the program with: java Helloworld or java -classpath . HelloWorldSearch for another file that has the same name - but is an applet, without the main method; that is what the error is saying it found.
    Delete all the HelloWorld .java & .class files, recreate the program file, recompile and try running the new copy. There may be a non-visible error in the file.
    Make sure you run as follows:
    In the same directory as HelloWorld.java, enter "javac" - the program should print out a list of options, if not, set your PATH - see below.
    In the same directory as HelloWorld.java, enter "javac HelloWorld.java" and the javac compiler will create HelloWorld.class. If it was successful it will not give any messages. Check that the file is created.
    In the same directory as HelloWorld.java, enter "java -cp . HelloWorld" with the spaces and the period. The program will run.
    Here is additional information:
    The Path is a set of pointers that Windows uses to locate programs that you execute, like javac.exe and java.exe. This setting is explained here:
    http://java.sun.com/j2se/1.4/install-windows.html
    Scroll down to: 5. Update the PATH variable
    (you should have already done this as part of the s/w installation)
    The CLASSPATH is another set of pointers that is used by Java to find the files that you create and want compiled and/or run. This setting is explained here:
    Setting the Classpath:
    http://java.sun.com/j2se/1.4/docs/tooldocs/windows/classpath.html
    [NOTE: always start your classpath with ".;" which means the current directory. See my classpath, below]
    How Classes are Found:
    http://java.sun.com/j2se/1.4/docs/tooldocs/findingclasses.html
    Examples:
    This is my path
    PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;C:\BATCH;C:\J2SDK1.4.1\BIN;C:\PROGRA~1\UTILIT~1;C:\PROGRA~1\WIN98RK
    This is my classpath
    CLASSPATH=.;C:\mjava;C:\mnrx;C:\NetRexx\lib\NetRexxC.jar;C:\j2sdk1.4.1\lib\tools.jar;C:\NetRexx\NrxRedBk

  • Java.lang.Error: IP Helper Library GetIfTable function failed

    Some of our users are sometimes getting the following exception:
    java.lang.Error: IP Helper Library GetIfTable function failed
    java.net.NetworkInterface.getAll(Native Method)
    java.net.NetworkInterface.getNetworkInterfaces(Unknown Source)
    Does anyone know why this happens and what can be done against it?
    Is this a bug?

    The operating system is     Windows XP, Java is version 1.6.0_03 Sun Microsystems Inc.
    Today, I got another error report containing this error. They all seem to come from the same user. Given that the user is still using our product, I guess it doesn't happen every time. :) The error actually happens in a third party library that uses JNI, so it could also be possible that this library messes up something. Given that the error happens rather rarely and we haven't got much data, I guess it isn't worth investigating this further at the moment.

  • "Exception in thread "main" java.lang.NumberFormatException"error..pls help

    Hi,
    I'm trying to run a program I've written but keeping getting this error:
    Exception in thread "main" java.lang.NumberFormatException: empty String
    at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:994)
    at java.lang.Double.parseDouble(Double.java:482)
    at data.newLineToRead(data.java:21)
    at data.data(data.java:34)
    at train.main(train.java:86)
    I'm not quite sure where I'm going wrong.I've included the data class and train class.Could someone pls help me.
    Thanks a lot.
    Data Class:
    import java.io.*;
    import java.util.*;
    public class data{
            private static parameter par;
            private static double[][] x=new double[par.n()][par.D()];
            public static double[] t=new double[par.n()];
            public static void newLineToRead(String LineToRead,int n){
            int d=0;
            String stringToRead=new String();
                    for(int i=0;i<=LineToRead.length();i++){
                            StringTokenizer str = new StringTokenizer (stringToRead,"/t");
                            String[] strtemp = new String[str.countTokens()];
                                    while (str.hasMoreTokens()){
                                    x[n][d++] = Double.parseDouble(str.nextToken());
                                    d++;
                                    System.out.println(x[n][d++]);
                            stringToRead=new String();
                    t[n]=Double.parseDouble(stringToRead);
                    x[n][par.d()]=1.0;
            public static void data() throws IOException{
            DataInputStream in=null;
                    try{
                            in=new DataInputStream(new FileInputStream(par.f()));
                            for(int n=0;n<par.n();n++){
                            String LineToRead=in.readLine();
                                    if(LineToRead.length()==0){
                                            System.out.println("Remove empty lines");
                                    else{
                                            newLineToRead(LineToRead,n);
                    }finally{if(in!=null){in.close();}}
            public static double x(int n,int d){return x[n][d];}
            public static double t(int n){return t[n];}
    }Train Class
    import java.io.*;
    import java.util.*;
    public class train{
             private static parameter       par;
             private static data            dat;
             private static model           mod;
             private static response        resp;
             private static void error(String msg){
                    System.out.println(msg);
                    System.exit(1);
             private static void check(){
                if(par.f().length()==0)
                    error("No filename of input vectors!");
                if(par.n()==0)
                    error("No number of input vectors!");
                if(par.d()==0)
                    error("No number of input variables!");
                if(par.d()>par.D())
                    error("Dimension is larger than 100!");
              private static void usage(){
                System.out.println("Non-default parameters==========================");
                System.out.println("-f filename of input vectors");
                System.out.println("-n number of input vectors");
                System.out.println("-d number of input variables");
                System.out.println("Default parameters==========================");
                System.out.println("-R regularisation constant (must be positive and the default value is 0.0)");
                System.out.println("-S epsilon criterion for stopping a learning process (default value is 0.001)");
                System.out.println("-C maximum learning cycle (default value is 10000)");
                      public static void main(String[] argv){
                            if(argv.length==0){
                                    System.out.println("Command line is <Java [-cp path] train parameters>");
                                    usage();
                                    System.exit(1);
                            if(argv.length==1 && argv[0].equals("help")==true){
                                    usage();
                                    System.exit(1);
                            par.nin(0); par.din(0); par.Rin(0.0); par.Cin(10000); par.Sin(0.001);
    for(int i=0;i<argv.length;i++){
                                            if(argv.equals("-f")==true){
    if((i+1)==argv.length)
    error("miss the para");
    par.fin(argv[i+1]);
    i++;
    else if(argv[i].equals("-d")==true){
    if((i+1)==argv.length)
    error("miss the para");
    par.din(Integer.parseInt(argv[i+1]));
    i++;
    else if(argv[i].equals("-n")==true){
    if((i+1)==argv.length)
    error("miss the para");
    par.nin(Integer.parseInt(argv[i+1]));
    i++;
    else if(argv[i].equals("-S")==true){
    if((i+1)==argv.length)
    error("miss the para");
    par.Sin(Integer.parseInt(argv[i+1]));
    i++;
    else if(argv[i].equals("-C")==true){
    if((i+1)==argv.length)
    error("miss the para");
    par.Cin(Integer.parseInt(argv[i+1]));
    i++;
    else if(argv[i].equals("-R")==true){
    if((i+1)==argv.length)
    error("miss the para");
    par.Rin(Double.parseDouble(argv[i+1]));
    i++;
    else error("Unkown token");
    check();
    try {
    dat.data();
    }catch(IOException e) { System.err.println(e.toString()); }
    try {
    mod.model();
    }catch(IOException e) { System.err.println(e.toString()); }
    try {
    resp.record();
    }catch(IOException e){ System.err.println(e.toString()); }

    String stringToRead=new String();
                    for(int i=0;i<=LineToRead.length();i++){
                            StringTokenizer str = new StringTokenizer (stringToRead,"/t");
                            String[] strtemp = new String[str.countTokens()];
                                    while (str.hasMoreTokens()){
                                    x[n][d++] = Double.parseDouble(str.nextToken());
                                    d++;
                                    System.out.println(x[n][d++]);
                            stringToRead=new String();
                    t[n]=Double.parseDouble(stringToRead);
                    x[n][par.d()]=1.0;
            }Not sure exactly what you are trying to do above but...
    You are setting your String to an empty String with "new String()" and then parsing that empty String. Eventually, you are trying to parse a double from that empty String:
    t[n]=Double.parseDouble(stringToRead);Also, I cannot think of a reason to ever use "new String()" when you could just use:
    String myString = "";

  • Exception in thread "main" java.lang.OutOfMemoryError(please help me )

    Hi All
    here my java class trying to read a txt file(which is having size of 60MB).and putting each line into a Vector class. problem is ,upto certain number of line it is reading properly and putting into vector..after that it is giving error like Exception in thread "main" java.lang.OutOfMemoryError..what is the problem and how to rectify this one..anybody help me on this.
    actual situation is one txt is there in that 80 lakhs of lines of content is there..java file trying to read each line and put it into vector or stringbuffer and split it into two lines like key=value and put it into hashmap object.then finally iam creating new file(.properties) and writing these hashmap data on it. if you want clearly..please look into below code..
    package test.utf8; import java.io.*; import java.util.*; public class AssetUtils
    //static StringBuffer stringbuffer = new StringBuffer();
    public AssetUtils()
    public static void main(String args[]) throws IOException
    BufferedReader bufferedreader = new BufferedReader(new InputStreamReader(new FileInputStream("D:\\list.txt")));
    Vector vector = new Vector(0x30D40, 50000);
    System.out.println(vector.capacity());
    Object obj = null;
    int n=0;
    System.out.println("Reading list:" + new Date(System.currentTimeMillis()));
    do
    String s = bufferedreader.readLine();
    //System.out.println("line no: "+ ++n);
    if(s == null)
    break;
    vector.add(s);
    } while(true);
    System.out.println("List Read complete:" + new Date(System.currentTimeMillis()));
    String s1 = args[0];
    System.out.println("S1: "+s1);
    System.out.println(vector.capacity());
    HashMap hashmap = new HashMap();
    System.out.println( "Vector.Size..>>>>>>>>>>>>>>>>.."+vector.size());
    for(int i = 0; i < vector.size(); i++)
    System.out.println("i value:"+i);
    String s2 = (String)vector.get(i);
    //System.out.println("S2: "+s2);
    if(s2.indexOf("/") != -1)
    String s3 = s2.substring(s1.length(), s2.length());
    //System.out.println("S3: "+s3);
    if(s3.indexOf("/") != -1) {
    String s4 = s3.substring(0, s3.lastIndexOf("/"));
    //System.out.println("S4: "+s4);
    String s6 = s3.substring(s3.lastIndexOf("/") + 1, s3.length());
    //System.out.println("S6: "+s6);
    StringBuffer stringbuffer=null;
    stringbuffer = new StringBuffer();
    String s8 = (String)hashmap.get(s4);
    //System.out.println("S8: "+s8);
    if(s8 != null) stringbuffer.append(s8 + "," + s6);
    else
    stringbuffer.append(s6);
    hashmap.put(s4, stringbuffer.toString());
    //stringbuffer.delete(0,stringbuffer.length());
    stringbuffer=null;
    System.out.println("Opening asset.properties:" + new Date(System.currentTimeMillis()));
    File file = new File("D:\\asset.properties");
    PrintWriter printwriter = new PrintWriter(new FileOutputStream(file));
    String s5;
    String s7;
    for(Iterator iterator = hashmap.keySet().iterator(); iterator.hasNext(); printwriter.println(s5 + "=" + s7))
    { s5 = (String)iterator.next(); s7 = (String)hashmap.get(s5); } printwriter.close();
    System.out.println("Closing asset.properties:" + new Date(System.currentTimeMillis()));

    Theres a number of ways you can improve your memory usage:
    1) Build you map as you read in your file.
    2) Use StringBuffers in your map - do not use "asshaj" + "ashaskj" This is very memory intensive
    If you still run out of memory try running the JVM using -Xms128m -Xmx512m or higher

  • Argh! "java.lang.NoClassDefFoundError"! help!

    I am a student and only just started programming in Java. When I installed the SDK on my home computer i discovered that everytime i try and run a program i have written, no matter how basic, i get a "java.lang.NoClassDefFoundError". I did a search on the forum and found lots of stuff about something called classpath, but i have no idea what it is or how to do it, despite the explanations ive read. If someone could please take me through it step by step id be VERY greatful.
    I'm running it on Windows XP home edition.
    Thanks alot
    Jon

    I tried the tutorial you showed me, thanks. However, it doesnt seem to have worked, when i did the "set CLASSTEST=" in the directory i was in then it worked, but only temporarily. But when I tried changing the Path variable in Environment Variables (Control Panel\System --> Advanced --> Environment Variables, it didnt seems to work. I added "C:\j2sdk1.4.2_02\bin" to both the user variables and system variables.
    Anyway, this is what I tried, from the beginning...
    I wrote the code in TextPad, the code is as follows -
    public class HelloWorld {
    public static void main( String[] args ) {
    System.out.println( "hello world" );
    (as i understand, it couldnt be any simpler!)
    I then compiled this in TextPad and got no errors.
    I then tried then run it, also through TextPad (Tools --> Run Java Application) and got this error (word for word) -
    Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld
    Press any key to continue . . .
    I also tried running it from the command prompt and just got the same error, even when i switched to the right directory (C:\Documents and Settings\Jon\Desktop\Uni_stuff). The commands i entered were "java HelloWorld".
    If anyone can help me with this, id be greatful as its getting pretty urgent.
    Thanks
    Jon Britton

  • Unexpected exception: java.lang.reflect.InvocationTargetException Help!

    What this error mean. Help! I dont understand. The program is running when I try to run it but when I try to deploy it using JNLP it wont work.
    java.lang.reflect.InvocationTargetException
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at com.sun.javaws.Launcher.executeApplication(Unknown Source)
         at com.sun.javaws.Launcher.executeMainClass(Unknown Source)
         at com.sun.javaws.Launcher.continueLaunch(Unknown Source)
         at com.sun.javaws.Launcher.handleApplicationDesc(Unknown Source)
         at com.sun.javaws.Launcher.handleLaunchFile(Unknown Source)
         at com.sun.javaws.Launcher.run(Unknown Source)
         at java.lang.Thread.run(Unknown Source)
    Caused by: java.lang.NoClassDefFoundError: Cutout$1
         at Cutout.<init>(Cutout.java:45)
         at Cutout.main(Cutout.java:175)
         ... 11 more
    It seems like the error is at line 45 of my code. My code starting from line 45 is this...
         capture.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                        try {
                             java.awt.Point pos = jFrame.getLocationOnScreen();
                             javax.imageio.ImageIO.write(shot.getSubimage(pos.x + 3, pos.y + 27, jFrame.getWidth() - 7, jFrame.getHeight() - 30), "jpg", new java.io.File("image.jpg"));
                        } catch(java.io.IOException ioe) {
                             ioe.printStackTrace();
         popup.add(capture);
         refresh = new javax.swing.JMenuItem("Refresh");
         refresh.setMnemonic('R');
            refresh.addActionListener(new java.awt.event.ActionListener() {
              public void actionPerformed(java.awt.event.ActionEvent evt) {
                        refresh();
         popup.add(refresh);
         exit = new javax.swing.JMenuItem("Exit");
         exit.setMnemonic('x');
            exit.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                        jFrame.setVisible(false);
                        jFrame.dispose();
                        System.exit(0);
         popup.add(exit);
            addMouseListener(new java.awt.event.MouseAdapter() {
                public void mouseReleased(java.awt.event.MouseEvent evt) {
                    popup.show(evt.getComponent(), evt.getX(), evt.getY());
            });Is there something wrong with this one?

    Hi,
    I get the same error and i am not really sure what your explanation says... This problem below is the latest of a series of problems i started getting after i updated my BIRT version in Eclipse 3.3.1 and RAD 6.0... I troubleshooted and resolved most of them however i am not sure and it is not obvious to me what is required for this particular one below
    In the problems tab there is nothing to give me a clue. The exception below appears in the Websphere console and also on the page when trying to access my jsp file normally. I am not sure what is causing it, but here it is:
    JSP Processing Error
    HTTP Error Code: 500
    Error Message:JSPG0227E: Exception caught while translating /directory/init.jsp: java.lang.reflect.InvocationTargetException
    Root Cause:com.ibm.ws.jsp.translator.JspTranslationException: JSPG0227E: Exception caught while translating /directory/init.jsp: java.lang.reflect.InvocationTargetException     at com.ibm.ws.jsp.translator.JspTranslator.processVisitors(JspTranslator.java:133)     at com.ibm.ws.jsp.translator.utils.JspTranslatorUtil.translateJsp(JspTranslatorUtil.java:168)     at com.ibm.ws.jsp.translator.utils.JspTranslatorUtil.translateJspAndCompile(JspTranslatorUtil.java:81)     at com.ibm.ws.jsp.webcontainerext.JSPExtensionServletWrapper.translateJsp(JSPExtensionServletWrapper.java:298)     at com.ibm.ws.jsp.webcontainerext.JSPExtensionServletWrapper.checkForTranslation(JSPExtensionServletWrapper.java:265)     at com.ibm.ws.jsp.webcontainerext.JSPExtensionServletWrapper.handleRequest(JSPExtensionServletWrapper.java:137)     at com.ibm.ws.jsp.webcontainerext.JSPExtensionProcessor.handleRequest(JSPExtensionProcessor.java:230)     at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:2837)     at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:220)     at com.ibm.ws.webcontainer.VirtualHost.handleRequest(VirtualHost.java:204)     at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:1681)     at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:77)     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:421)     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:367)     at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:94)     at com.ibm.ws.tcp.channel.impl.WorkQueueManager.requestComplete(WorkQueueManager.java:548)     at com.ibm.ws.tcp.channel.impl.WorkQueueManager.attemptIO(WorkQueueManager.java:601)     at com.ibm.ws.tcp.channel.impl.WorkQueueManager.workerRun(WorkQueueManager.java:934)     at com.ibm.ws.tcp.channel.impl.WorkQueueManager$Worker.run(WorkQueueManager.java:1021)     at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1332)
    One of the funny things here, is that this is happening only when i start websphere in debug mode!
    Does anyone have any idea of what may be causing this or how we can find what's causing it or how to resolve it??
    Thanks in advance
    & Best Regards
    Spiros P.

  • Error watching JMS queues with JMSUtils: java.lang.NoSuchMethodError: main

    Hi. I'm trying to use the command line utility JMSUtils to see if I have configured correctly a new queue in oc4j server but when I try to use execute it following the instructions I have found on the net it doesn't appear to be in the oc4j.jar
    I found that class in oc4jclient.jar but without a main method.
    I use the 10g Release 3 (10.1.3.0.0) for Microsoft Windows
    The instruction I execute is:
    C:\product\10.1.3\OracleAS_1\j2ee\home>java -classpath c:\ora10g\j2ee\home\oc4j.
    jar;c:\ora10g\j2ee\home\lib\jms.jar com.evermind.server.jms.JMSUtils -username admin -password welcome destinations
    Exception in thread "main" java.lang.NoClassDefFoundError: com/evermind/server/j
    ms/JMSUtils
    Mensaje editado por:
    user515269
    Mensaje editado por:
    user515269

    When I try to execute the JMSUtils class that's inside
    oc4j-internal.jar appears the same exception I had
    executing the class that's inside oc4jclient.jar:
    NoSuchMethodError: main
    Anybody knows why this class doesn't have a main method
    or how can I execute it?Jose:
    It seems that the command line utility JMSUtils is removed from oc4j 10.1.3, although the class is still packaged into some oc4j jar. According to the documentation, "In this release, OracleAS JMS Utility functionality is available as attributes and operations on various MBeans, replacing the deprecated command line interface of previous releases.".
    Please see the section "OracleAS JMS Utility" of the book "Oracle® Containers for J2EE
    Services Guide, 10g Release 3 (10.1.3) for Windows or UNIX, B14427-01", which is available on line.
    Hope this helps.

  • Excel File read using WebUtil does not work. Gives java.lang.NoSuchMethodEr

    We have a form which reads from an Excel File. The form works in development env., but in the live env when we deployed the form it does not work. Form fails @ the 1st call to Client_OLE2 where we set the Excel file to read.
    For both the envs. the values are given here:
    (1.) Client Forms Version : Forms [32 Bit] Version 10.1.2.0.2 (Production)
    (2.) Application Server Version : 10.1.2.0.2
    (3.) AS Linux Version : (Live) RHEL 5.7 Tikanga / (Dev) Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
    (4.) Client Sun JRE Version :Version 1.5.0 (build 1.5.0_10)
    (5.) Client Web Browser & Version: I.E 8.0.6001 or Mozilla  3.0.15
    (6.) WebUtil Version: 1.0.6Both envs. are the same except the Linux version.
    Works fine in Dev but does not work in Live. Other Webutil functions like file open dialog box works fine in live, only this Excel read is not working.
    Full Error message
    Java Plug-in 1.5.0_10
    Using JRE version 1.5.0_10 Java HotSpot(TM) Client VM
    User home directory = C:\Documents and Settings\dinesha.IIL
    c:   clear console window
    f:   finalize objects on finalization queue
    g:   garbage collect
    h:   display this help message
    l:   dump classloader list
    m:   print memory usage
    o:   trigger logging
    p:   reload proxy configuration
    q:   hide console
    r:   reload policy configuration
    s:   dump system and deployment properties
    t:   dump thread list
    v:   dump thread stack
    x:   clear classloader cache
    0-5: set trace level to <n>
    RegisterWebUtil - Loading WebUtil Version 1.0.6
    proxyHost=null
    proxyPort=0
    connectMode=HTTP, native.
    Forms Applet version is : 10.1.2.0
    Exception in thread "AWT-EventQueue-3" java.lang.NoSuchMethodError:
    com.jacob.com.Dispatch.put(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V
         at
    oracle.forms.webutil.ole.OleFunctions.set_obj_property(OleFunctions.java:1216)
         at
    oracle.forms.webutil.ole.OleFunctions.setProperty(OleFunctions.java:333)
         at oracle.forms.handler.ComponentItem.setCustomProperty(Unknown Source)
         at oracle.forms.handler.ComponentItem.onUpdate(Unknown Source)
         at oracle.forms.handler.JavaContainer.onUpdate(Unknown Source)
         at oracle.forms.handler.UICommon.onUpdate(Unknown Source)
         at oracle.forms.engine.Runform.onUpdateHandler(Unknown Source)
         at oracle.forms.engine.Runform.processMessage(Unknown Source)
         at oracle.forms.engine.Runform.processSet(Unknown Source)
         at oracle.forms.engine.Runform.onMessageReal(Unknown Source)
         at oracle.forms.engine.Runform.onMessage(Unknown Source)
         at oracle.forms.engine.Runform.processEventEnd(Unknown Source)
         at oracle.ewt.lwAWT.LWComponent.redispatchEvent(Unknown Source)
         at oracle.ewt.lwAWT.LWComponent.processEvent(Unknown Source)
         at java.awt.Component.dispatchEventImpl(Unknown Source)
         at java.awt.Container.dispatchEventImpl(Unknown Source)
         at java.awt.Component.dispatchEvent(Unknown Source)
         at java.awt.EventQueue.dispatchEvent(Unknown Source)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown
    Source)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
         at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
         at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
         at java.awt.EventDispatchThread.run(Unknown Source)We connected to Live AS server via VPN and ran the Form in a client machine (where the Dev. is working) but same problem.
    Any help would be greatly appreciated.

    Channa,
    I sounds like you might have missed a configuration step on your Linux application server (AS). I recommend you go back through the configuration of your AS and verify each step of the WebUtil Runtime Setup Checklist was completed correctly. Seach the Forms Help system on "Runtime Setup Checklist" for a copy of the checklist.
    Hope this helps,
    Craig B-)
    If someone's response is helpful or correct, please mark it accordingly.

  • JDBC for Postgresql(on Linux): java.lang.NullPointerExceptio--Please HELP!

    I'm trying to build a JSP web application with Apache Tomcat 4.0 on Linux, using PostgreSQL database.
    The test page for building a connection to the database is very simple.
    However, unfortunately, I always get the following error message from the web server.
    The code is also show below.
    I have another Tomcat server working on Window2000 with Oracle. So I change the JDBC driver to Oracle on that machine, and it works fine.
    I guessed I might have some problem with the Tomcat setting, but I'm not sure what I need to change.
    The directory of my web application is built under the webapps.
    And I've added JAVA_HOME, JAVA_HOME/lib/tool.jar, and JDBC for PostgreSQL to my CLASSPATH.
    Is there any other configuration that I missed?
    Please help if you see the problem.
    Thanks a lot in advance.
    Error message:
    type: Exception report
    message: Internal Server Error
    description: The server encountered an internal error (Internal Server Error) that prevented it from fulfilling this request.
    exception
    java.lang.NullPointerException
         at org.apache.jsp.index$jsp._jspService(index$jsp.java:231)
         at org.apache.jasper.runtime.HttpJspBase.service(Unknown Source)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(Unknown Source)
         at org.apache.jasper.servlet.JspServlet.serviceJspFile(Unknown Source)
         at org.apache.jasper.servlet.JspServlet.service(Unknown Source)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Unknown Source)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(Unknown Source)
         at org.apache.catalina.core.StandardWrapperValve.invoke(Unknown Source)
         at org.apache.catalina.core.StandardPipeline.invokeNext(Unknown Source)
         at org.apache.catalina.core.StandardPipeline.invoke(Unknown Source)
         at org.apache.catalina.core.ContainerBase.invoke(Unknown Source)
         at org.apache.catalina.core.StandardContextValve.invoke(Unknown Source)
         at org.apache.catalina.core.StandardPipeline.invokeNext(Unknown Source)
         at org.apache.catalina.core.StandardPipeline.invoke(Unknown Source)
         at org.apache.catalina.core.ContainerBase.invoke(Unknown Source)
         at org.apache.catalina.core.StandardContext.invoke(Unknown Source)
         at org.apache.catalina.core.StandardHostValve.invoke(Unknown Source)
         at org.apache.catalina.core.StandardPipeline.invokeNext(Unknown Source)
         at org.apache.catalina.valves.ErrorDispatcherValve.invoke(Unknown Source)
         at org.apache.catalina.core.StandardPipeline.invokeNext(Unknown Source)
         at org.apache.catalina.valves.ErrorReportValve.invoke(Unknown Source)
         at org.apache.catalina.core.StandardPipeline.invokeNext(Unknown Source)
         at org.apache.catalina.valves.AccessLogValve.invoke(Unknown Source)
         at org.apache.catalina.core.StandardPipeline.invokeNext(Unknown Source)
         at org.apache.catalina.core.StandardPipeline.invoke(Unknown Source)
         at org.apache.catalina.core.ContainerBase.invoke(Unknown Source)
         at org.apache.catalina.core.StandardEngineValve.invoke(Unknown Source)
         at org.apache.catalina.core.StandardPipeline.invokeNext(Unknown Source)
         at org.apache.catalina.core.StandardPipeline.invoke(Unknown Source)
         at org.apache.catalina.core.ContainerBase.invoke(Unknown Source)
         at org.apache.catalina.connector.http.HttpProcessor.process(Unknown Source)
         at org.apache.catalina.connector.http.HttpProcessor.run(Unknown Source)
         at java.lang.Thread.run(Thread.java:484)
    Here's my code:
    <%@ page language="java" import="java.io.*, java.sql.*, java.util.*, java.lang.*" %>
    <HTML>
    <HEAD>
    <TITLE>TEST</TITLE>
    </HEAD>
    <BODY>
    <b> City </b><br>
    <%
         Class.forName("org.postgresql.Driver");
         String sqlurl = "jdbc:postgresql://localhost:5432/customer";
         String username = "guest";
         String passwd = username;
         Connection conn = DriverManager.getConnection(sqlurl, username, passwd);
         Statement st = conn.createStatement();
         String queryStr = "select CITY from WEATHER";
         ResultSet rs = st.executeQuery(queryStr);
         if (rs != null){
              while(rs.next()){
                   String strCity = rs.getString(1);
    %>
    -- <%=strCity %> --<br>
    <%
         st.close();
         conn.close();
    %>
    </BODY>
    </HTML>

    Error is not there in the code what you are showing. Can you edit index$jsp.java and see what is there in line 231?
    You may find it in tomcat_home\work\your_application directory.
    Sudha

  • Java.lang.NegativeArraySizeException ERROR, Help!!!!

    Hi,
    I am running the following line of code and it is generating an error, I am not sure what is causing this error. ANy thoughts or pointers???
    Command:
    C:\Users\Sheetal\marcxml\marc4j>java org.marc4j.util.MarcXmlWriter summerland.xml
    Error
    java.lang.NegativeArraySizeException
    at org.marc4j.MarcReader.parse(Unknown Source)
    at org.marc4j.marcxml.MarcXmlReader.parse(Unknown Source)
    at org.apache.xalan.transformer.TransformerIdentityImpl.transform(Unknow
    n Source)
    at org.marc4j.marcxml.Converter.convert(Unknown Source)
    at org.marc4j.marcxml.Converter.convert(Unknown Source)
    at org.marc4j.util.MarcXmlWriter.main(Unknown Source)
    Total time: 61 miliseconds
    thanks
    sheetal

    The xml document is probably malformed and it exposes a bug in MarcReader (bad error handling)
    Kaj

Maybe you are looking for