Problem with if/else statement for adventure game

Can anyone offer a hint as to why I am getting a null value printed out in the last line. I have comments that indicate what progress or validation step has occurred to move forward. There is something obviously not working with my user input if/else block. It's supposed to the user input, n,s,e, or w and execute the code, nextRoom = current.get*(); * - referring to whatever direction is specified by the user. For instance if the user enters "e", then this code is executed ... nextRoom = current.getEast(); and the players' new room is set to this room: player1.setCurrentRoom(nextRoom).
That is not what is currently happened as validated by the last line System.out.println(player1.getCurrentRoom()); which prints null; This must be something obvious no?
Room r1 = new Room();  //instantiates new room r1
        r1.setName("Hallway");  //sets r1's name to Hallway
        r1.setDescription("Long and dark.  There are exits to the north, east and west");
        Room r2 = new Room();  //new room2, etc...
        r2.setName("Bathroom");
        r2.setDescription("Bathroom stinks. There are no doors other than the entry");
        Room r3 = new Room();
        r3.setName("Kitchen");
        r3.setDescription("This is where the food is cooked");
        Room r4 = new Room(); 
        r4.setName("Master Bedroom");
        r4.setDescription("Bedroom of the master");     
        r1.setEast(r2); // sets r2 east of r1
        r1.setWest(r3); //sets r3 west of r1
        r1.setNorth(r4); //sets r4 north of r1
        System.out.print("The room east of r1 is: ");  // this is simply a check to verify that it has set the room properly and it does
        System.out.println(r1.getEast());               
        System.out.printf("You are currently in the %s", r1.getName());
        System.out.println();          //another validation step
        System.out.println("There are exits on the north end of the\n" +
                            "hallway and midway on both sides\n");
        System.out.println("To move you can type the following: \n"+
                "(n) to move north\n" +
                "(e) to move east\n" +
                "(w) to move west\n" +
                "(s) to move south\n");
        player1.setCurrentRoom(r1);
        System.out.print("You are currently in ");
        System.out.println(player1.getCurrentRoom()); //this prints out the correct value for current Room, which is the Hallway
        Room current = player1.getCurrentRoom();     
        System.out.println(current);  //as a double check this does print out the correct value for current, which is the Hallway
        System.out.println("Where would like to go?  Your choices are east, west, and north.\n" +
                "Enter e, n, or w");
        Scanner ns = new Scanner(System.in);       
        String input = ns.next();
        Room nextRoom = null; 
        if (input == "e") {
            nextRoom = current.getEast();
        else if (input == "n") {
            nextRoom = current.getNorth();
        else if (input == "w") {
            nextRoom = current.getWest();
        else if (input == null) {
            System.out.println("Illegal Move");
        player1.setCurrentRoom(nextRoom);  //somehow this is setting the current room value to null
        System.out.println(player1.getCurrentRoom());  //this prints out null

I initially thought of that but my IDE (netbeans) gives me the incompatible data types (expects boolean, gets string) error when I use input = rather than input (==.). I really want to avoid asking the dumb ass java questions (I should have posted the new to java forum) but how do you set this up if Scanner is expecting a String, my input variable is String and the if statement is expecting a boolean instead of a String?
Scanner ns = new Scanner(System.in);       
String input = ns.next();
if (input = "e" ) {
            nextRoom = current.getEast();
        else if (input = "n" ) {
            nextRoom = current.getNorth();
        else if (input = "w" ) {
            nextRoom = current.getWest();
        else if (input = null) {
            System.out.println("Illegal Move");
        player1.setCurrentRoom(nextRoom);  //somehow this is setting the current room value to null
        System.out.println(player1.getCurrentRoom());  //this prints out null

Similar Messages

  • I refurbished my macbook air 7 months ago because there was a problem with the steady state drive. Now my battery seems to be dead again. How long does the warranty last? Do I need to pay for a new battery?

    I refurbished my macbook air 7 months ago because there was a problem with the steady state drive. Now my battery seems to be dead again. How long does the warranty last? Do I need to pay for a new battery?

    As I wrote Apple will diagnose an Apple product even if it is out of warranty for free. That should be your first step to find out if the problem is the battery or something else.
    Once you have Apple telling you a 7 month old battery is defective (if that turns out to be the case)  then it becomes a game of horse trading. You'll need to speak to the tech and when he tells you there is nothing he can do you will need to speak to the tech manager and when she says most likely there is nothing they can do you go to the store manager, etc.  It is unlikely (though possible) that they will give in easily you need to be firm, polite and let on that you're willing to accept a partial reimbursement.
    So again the first step is to find out what is wrong.
    good luck

  • Problem with "SELECT...FOR UPDATE OF..." and "POST command" combination

    Problem with "SELECT...FOR UPDATE OF..." and "POST command" combination
    Problem in committing transactions in Multiple Forms (Oracle Forms) with POST built-in command:
    Consider that the following statements are written in WHEN-WINDOW-CLOSED trigger of a called form.
    Statements in called form (Form name: FORM_CHILD):
    go_block('display_block') ;
    do_key('execute_query') ;
    -- Data from table_b will be populated in this block, based on the value of COLUMN_1 obtained
    -- from TABLE_A.
    -- Example: If the value of COLUMN_1 is 10, then all the matching records from TABLE_B, which
    -- are inserted with value 10 in TABLE_B.COLUMN_1 will be fetched and shown here.
    if user_choice = 'YES' then
    commit ;
    else
    rollback ;
    end if ;
    Statements in calling forms:
    There are two calling forms having following statements and it is going to call the above said called form.
    CALLING FORM 1
    Statements in KEY-COMMIT trigger:
    post;
    call_form(form_child, no_activate) ;
    Statements in ON-INSERT trigger:
    select column_1
    from table_a
    for update of column_1
    where column_2 = 'X' ;
    update table_a
    set column_1 = column_1 + 1
    where column_2 = 'X' ;
    insert into table_b ...;
    insert into table_b ...; Statements in KEY-COMMIT trigger:
    post;
    call_form(form_child, no_activate) ;
    CALLING FORM 2:
    Statements in ON-INSERT trigger:
    select column_1
    from table_a
    for update of column_1
    where column_2 = 'X' ;
    update table_a
    set column_1 = column_1 + 1
    where column_2 = 'X' ;
    insert into table_b ...;
    insert into table_b ...;
    insert into table_b ...;
    Our understanding:
    Assume that both the forms are running from two different machines/instances, issuing commit at the same time. In this case, forms will start executing the statements written in ON-INSERT trigger, the moment POST command is executed. Though the commit is issued at the same time, according to oracle, only one of the request will be taken for processing first. Assume that calling form 1 is getting processed first.
    So, it fetches the value available in COLUMN_1 of TABLE_A and locks the row from further select, update, etc. as SELECT...FOR UPDATE command is used (note that NOWAIT is not given, hence the lock will be released only when COMMIT or ROLLBACK happens) and proceed executing further INSERT statements. Because of the lock provided by the SELECT...FOR UPDATE command, the statements in calling form 2 will wait for the resource.
    After executing the INSERT statements, the FORM_CHILD is called. The rows inserted in to TABLE_A will be queried and shown. The database changes will be committed when user closes the window (as COMMIT is issued in its WHEN-WINDOW-CLOSED trigger). Then the SELECT...FOR UPDATE lock will be released and calling form 2's statements will be executed.
    Actual happenings or Mis-behavior:
    Calling form 2 starts executing INSERT statements instead of waiting for SELECT...FOR UPDATE lock. Also, the value selected from TABLE_A.COLUMN_1 is same in both the calling forms, which is wrong.
    The rows inserted into TABLE_B are having similar COLUMN_1 values in calling form 2 and they are fetched and shown in the called form FORM_CHILD.
    Note that in calling form 2 also POST only is issued, but the changes posted there are accessible in calling form 1 also, which is wrong.
    Kindly suggest us as to how to fix above problem. It will be much use, if you can send us the information regarding the behavior of Oracle Forms POST built-in also.
    Our mail ID: [email protected]
    Thanks a lot in advance.

    You have several problems:
    1. On-Insert will ONLY run if you have created a new record in a base-table block. If you haven't done that, then the POST command will not cause it to run.
    2. Select for update without a "no wait" will lock records for the first form, but when the second form tries this, it will hit the ORA-00054 exception, and will NOT wait. The only way you could make it wait is to issue an UPDATE sql command, which is not such a good way to go.
    All POST does is issues SQL insert or update commands for any changes the user has made to records in a form's base-table blocks, without following with a Commit command.
    Also understand that Commit is the same as Commit_Form, and Rollback is the same as Clear_Form. You should read up on these in the Forms help topics.

  • Problems with "Select Distinct" Statement

    Hi... I've a little problem with my SQL Statement...
    I've a Table in a DataBase with Solds of the Month... the fields are: vta_fecha, vta_prod, vta_total, vta_mesa.
    I've to Select only the distincts fields of vta_prod... selected by vta_fecha and vta_mesa...
    My code is like this:         try{
                Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
                conec = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=C:/POOL/Data/BaseDat.MDB");
                state = conec.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);try{
                rec = state.executeQuery("Select DISTINCT vta_prod, vta_fecha, vta_mesa from Ventas where vta_fecha = #" + Fecha_q + "# And vta_mesa = 0");           
                rec.first();
                int x = 0;
                while (rec.isAfterLast()==false){
                    x++;
                    rec.next();
                rec.first();
                if (x > 0){
                    Productos = new String[x];
                    Total_Vta = new int[x];
                    Cant_Prod = new int[x];
                    x = 0;
                    while (rec.isAfterLast() == false){
                        Productos[x] = rec.getString("vta_prod");
                        rec.next();
                        x++;
                else{
                    Productos = new String[0];
                    Total_Vta = new int[0];
                    Cant_Prod = new int[0];
            }catch(Exception e){JOptionPane.showMessageDialog(null,e.getMessage());}Now, in the Table I have only 3 diferents vta_prod, but this Statement returns 9 Rows... and I don't know why...
    Please help me...
    Regards...

    I don�t have a complete picture because I don�t know what values you are passing in the select and I don�t know your column types but this is what I think is happening from what you have shared.
    You may have misunderstood what the DISTINCT keyword does.
    The DISTINCT keyword applies to the full set of columns in the select (not just the first column). So in your case it would be equivalent to:
    SELECT vta_prod, vta_fecha, vta_mesa
    FROM Ventas
    WHERE ...
    GROUP BY by vta_prod, vta_fecha, vta_mesa
    So, it doesn't matter that you only have 3 distinct vta_prod values if you have multiple values being returned in the other columns. The vta_mesa column can only a return a single value as �0�. That leaves the vta_fecha column which is probably a date/time column and is probably the column that is returning the three other distinct values (one date with three distinct times).
    (3 vta_prod) x (3 vta_fecha) x (1 vta_mesa) or 3x3x1 = 9 rows
    So find a way to strip the time from vta_fecha in your select statement and your SQL should return the results you expect. I�m not an Access expect but I think I remember you can use something like the �Convert� or �DatePart� functions to make that happen (check your documentation to be sure)..
    A couple of asides;
    1) You should use a PreparedStatement and rarely if ever use Statement.
    2) You should start Java variable names with lower case.

  • Having trouble with an else statement.........

    I am having trouble figuring out what to do with this else statement error.........I can't seem to see where I am going wrong...............can anyone help? I can compile it but I just keep getting this one error I can't fix.....................
    Program Name:     Transfer
    import java.io.*;
    import java.awt.*;
    import java.awt.event.*;
    public class Transfer extends Frame implements ActionListener
    DataOutputStream output;
    //Construct components
    Panel dataFields = new Panel();
    Panel firstRow = new Panel();
    Panel secondRow = new Panel();
    Panel thirdRow = new Panel();
    Panel fourthRow = new Panel();
    Panel buttonArea = new Panel();
    Button submit = new Button("Submit");
    Button exit = new Button("Exit");
    Label firstNameLabel = new Label("Name:");
    TextField firstName = new TextField(15);
    Label studentIdLabel = new Label("Student ID:");
    TextField studentId = new TextField(15);
    Label transferCourseLabel = new Label("Transfer Course Number:");
    TextField transferCourse = new TextField (15);
    Label localCourseLabel = new Label("Local Course Number:");
    TextField localCourses = new TextField (15);
    public static void main(String args[])
    Transfer window = new Transfer();
    window.setTitle("Transfer Course Substitutions");
    window.setSize(450, 250);
    window.setVisible(true);
    public Transfer()
    //set backgound and layout managers
    setBackground(Color.magenta);
    setLayout(new BorderLayout());
    dataFields.setLayout(new GridLayout(4,2));
    FlowLayout rowSetup = new FlowLayout(FlowLayout.LEFT,4,2);
    firstRow.setLayout(rowSetup);
    secondRow.setLayout(rowSetup);
    thirdRow.setLayout(rowSetup);
    fourthRow.setLayout(rowSetup);
    buttonArea.setLayout(new FlowLayout());
    //Add fields to rows
    firstRow.add(firstNameLabel);
    secondRow.add(studentIdLabel);
    thirdRow.add(transferCourseLabel);
    fourthRow.add(localCourseLabel);
    //Add rows to panel
    dataFields.add(firstRow);
    dataFields.add(secondRow);
    dataFields.add(thirdRow);
    dataFields.add(fourthRow);
    //Add buttons to panel
    buttonArea.add(submit);
    buttonArea.add(exit);
    //Add panels to frame
    add(dataFields, BorderLayout.NORTH);
    add(buttonArea, BorderLayout.SOUTH);
    //Add functionality to buttons
    submit.addActionListener(this);
    exit.addActionListener(this);
    // output states
    try
    output = new DataOuputStream(new FileOUtputStream("Transfer.dat"));
    catch(IOException ex)
    System.exit(1);
    //construct window listener
    addWindowListener(
    new WindowAdapter()
    public void windowClosing(WindowEvent e)
    System.exit(0);
    public void actionPerformed(ActionEvent e)
    String arg = e.getActionCommand();
    if (arg == "Submit")
    try
    output.writeUTF(code);
    output.writeUTF(firstName.getText());
    output.writeUTF(studentId.getText());
    output.writeUTF(transferCourse.getText());
    output.writeUTF(localCourse.getText());
    catch(IOException ex)
    System.exit(1);
    clearFields();
    else //code to execute if the user clicks Exit
    try
    output.close();
    catch(IOException c)
    System.exit(1);
    System.exit(0);
    public void clearFields()
    firstName.setText("");
    studentId.setText("");
    transferCourse.setText("");
    localCourse.setText("");
    firstName.requestFocus();

    The == method does work but it compares Object references and not the String contents. If the string you are comparing is actually the same object it will reply with 'true' also id both Strings are generated with quotes in the same methos and they contain the same string it will also work. This because the compiler will optimize your creating 2 identical Strings to 1 crete statement.
    String a = "Hello";
    String b = "Hello";
    String c = new String("Hello");
    String d = "He" + "llo";
    String e = "He";
    e +="llo";
    a == b ==> true : because of optimization
    a == c ==> false: because of different objects
    a.equals(c) ==> true
    a == d ==> true : because of optimization
    a == e ==> false : because of different objects

  • I having problem with the answer  question for the App Store. And I forgot the answer

    I having problem with the answer  question for the App Store. And I forgot the answer

    Pleae call 1800MYAPPLE ask to speak to account security

  • Why has my 3G stopped working on my iphone? It is enabled, and I never had problems with it before, but for about 2 months now it has refused to work and as a result I can't send any attachments such as photos or videos via text.

    Why has my 3G stopped working on my iphone? It is enabled, and I never had problems with it before, but for about 2 months now it has refused to work and as a result I can't send any attachments such as photos or videos via text.

    Cellular data is a feature from your phone carrier.  Have you contacted them to resolve your issue.

  • I am having major problems with the latest update for my itunes!

    I am having problems with the latest update for itunes, it says 'itunes has an invalid signature'. I have completely uninstalled itunes but now it wont download at all. Have tried downloading it 4 times tonight already. Anyone know how to get it to download? Or what to do?

    I am having problems with the latest update for itunes, it says 'itunes has an invalid signature'.
    That suggests that the installer is getting damaged during the download.
    I'd first try downloading an installer from the Apple website using a different web browser:
    http://www.apple.com/itunes/download/
    If you use Firefox instead of IE for the download (or vice versa), do you get a working installer?

  • RSAU461, problem with activating update rules for cube 0csrv_c01

    Hello,
    I have added new fields to data source 0CRM_SRV_PROCESS_H, then changed transfer rules, added characteristics to ODS 0crm_proh, and reactivated update rules 80crm_proh. But now I have problem with second update rules for this cube named 80crm_cnfh. It is not active and all fields in it have red status, error RSAU461, and I cannot activate it.
    What I should do? Should I change somehow that second source for data to my cube (change infosource, ods, rule?)
    Regards
    Radek

    hi
    As said by the Mti u have just changed the info objects in the ods and u need to map them with the specific info objects from the ods.
    double click on the Update rules of the cube and go to the characteristic tab there map the newly added info objects with the IO in the ods.
    Khaja

  • Problemas with file "ns_emails.xml" for SMTP EXCHANGE

    Hi,
    I have problems with my ns_emails configuration for a SMTP EXCHANGE Mail Server.
    I configured Outlook with this parameters and works: Autenthication: yes, SSL: yes, port: 25, host: gmail.smtp.com.
    In my BPEL process is a right msg, but the email doesn`t arrive:
    <2008-01-27 19:19:51,781> <INFO> <default.collaxa.cube.services> <Utils::initNotificationMode> Notification via voice, fax, SMS, IM or pager will be sent. Emails will be sent with the current settings. If you would like to enable them, please configure accounts in ns_iaswconfig.xml and then set the NotificationMode attribute in ns_emails.xml to either NONE, EMAIL or ALL.
    Please, ¿do you see something wrong with this file?
    <EmailAccounts xmlns="http://xmlns.oracle.com/ias/pcbpel/NotificationService"
    EmailMimeCharset=""
    NotificationMode="EMAIL">
    <EmailAccount>
    <Name>Default</Name>
    <GeneralSettings>
    <FromName>Laura</FromName>
    <FromAddress>[email protected]</FromAddress>
    </GeneralSettings>
    <OutgoingServerSettings>
    <SMTPHost>smtp.gmail.com</SMTPHost>
    <SMTPPort>25</SMTPPort>
    <AuthenticationRequired>true</AuthenticationRequired>
    <UseSSL>true</User>
    <UserName>[email protected]</UserName>
    <Password ns0:encrypted="false" xmlns:ns0="http://xmlns.oracle.com/ias/pcbpel/NotificationService">mypass</Password>
    </OutgoingServerSettings>
    </EmailAccount>
    </EmailAccounts>
    Thanks,
    Laura

    Hi,
    I know about domain.log file. In my first post, I put the message that I get.
    The problema is with the SMTP Exchange MS Server.
    I tried with a Local Mail Server with this parametes and its right.
    <GeneralSettings>
    <FromName>Laura Garcia</FromName>
    <FromAddress>testuser@lgrico-port</FromAddress>
    </GeneralSettings>
    <OutgoingServerSettings>
    <SMTPHost>lgrico-port</SMTPHost>
    <SMTPPort>25</SMTPPort>
    <UserName>testuser@lgrico-port</UserName>
    <Password>laura</Password>
    </OutgoingServerSettings>
    But with this configuration its wrong:
    <OutgoingServerSettings>
    <SMTPHost>smtp.gmail.com</SMTPHost>
    <SMTPPort>25</SMTPPort>
    <AuthenticationRequired>true</AuthenticationRequired>
    <UseSSL>true</UseSSL>
    <UserName>[email protected]</UserName>
    <Password ns0:encrypted="false" xmlns:ns0="http://xmlns.oracle.com/ias/pcbpel/NotificationService">pass</Password>
    </OutgoingServerSettings>
    My company has the same kind of mail server than gmail, so I,m trying to configure this first.
    This is domain.log and it`s right, I can´t see where is the problem.
    <2008-01-29 09:26:05,006> <INFO> <default.collaxa.cube.services> <Utils::initNotificationMode> Notification via voice, fax, SMS, IM or pager will be sent. Emails will be sent with the current settings. If you would like to enable them, please configure accounts in ns_iaswconfig.xml and then set the NotificationMode attribute in ns_emails.xml to either NONE, EMAIL or ALL.
    <2008-01-29 09:26:05,053> <DEBUG> <default.collaxa.cube.services> <oracle.bpel.services.notification.queue.QueueConnectionPool::QueueConnectionPool> Creating connection pool for java:comp/env/jms/Queue/NotificationSenderQueueConnectionFactory initial size 20
    <2008-01-29 09:26:05,053> <DEBUG> <default.collaxa.cube.services> <oracle.bpel.services.notification.queue.QueueConnectionPool::QueueConnectionPool> Fetched a queue connection from pool java:comp/env/jms/Queue/NotificationSenderQueueConnectionFactory, available connections=19
    <2008-01-29 09:26:05,053> <DEBUG> <default.collaxa.cube.services> <oracle.bpel.services.notification.queue.sender.Publisher::init> Start of send(type,caller,message) type = email caller = BPEL
    <2008-01-29 09:26:05,053> <DEBUG> <default.collaxa.cube.services> <oracle.bpel.services.notification.queue.sender.Publisher::init> Notification ID 50d528357d42a957:-4d67d6df:117c49fc103:-7fcf
    <2008-01-29 09:26:05,053> <DEBUG> <default.collaxa.cube.services> <oracle.bpel.services.notification.queue.sender.Publisher::init> Start Persisting notification in database
    <2008-01-29 09:26:05,100> <DEBUG> <default.collaxa.cube.services> <oracle.bpel.services.notification.queue.sender.Publisher::init> End Persisting notification in database
    <2008-01-29 09:26:05,100> <DEBUG> <default.collaxa.cube.services> <oracle.bpel.services.notification.queue.sender.Publisher::init> Start of send(type,caller,message)
    <2008-01-29 09:26:05,100> <DEBUG> <default.collaxa.cube.services> <oracle.bpel.services.notification.queue.QueueConnectionPool::QueueConnectionPool> Released queue connection to pool java:comp/env/jms/Queue/NotificationSenderQueueConnectionFactory, available connections=20
    Thanks for your answers,
    Laura

  • Hi I have a problem with my licence number for Lightroom

    Hi I have a problem with my licence number for Lightroom, has been forced to re-install lightroom again but, have downloaded a trial version of adobe but now works license number are not, there are some who can help me with what is going wrong. Thanks Henrik

    Download Lightroom 5 from Product updates and install, use your serial number

  • Java.util.logging - Problem with setting different Levels for each Handler

    Hello all,
    I am having issues setting up the java.util.logging system to use multiple handlers.
    I will paste the relevant code below, but basically I have 3 Handlers. One is a custom handler that opens a JOptionPane dialog with the specified error, the others are ConsoleHandler and FileHandler. I want Console and File to display ALL levels, and I want the custom handler to only display SEVERE levels.
    As it is now, all log levels are being displayed in the JOptionPane, and the Console is displaying duplicates.
    Here is the code that sets up the logger:
    logger = Logger.getLogger("lib.srr.applet");
    // I have tried both with and without the following statement          
    logger.setLevel(Level.ALL);
    // Log to file for all levels FINER and up
    FileHandler fh = new FileHandler("mylog.log");
    fh.setFormatter(new SimpleFormatter());
    fh.setLevel(Level.FINER);
    // Log to console for all levels FINER and up
    ConsoleHandler ch = new ConsoleHandler();
    ch.setLevel(Level.FINER);
    // Log SEVERE levels to the User, through a JOptionPane message dialog
    SRRUserAlertHandler uah = new SRRUserAlertHandler();
    uah.setLevel(Level.SEVERE);
    uah.setFormatter(new SRRUserAlertFormatter());
    // Add handlers
    logger.addHandler(fh);
    logger.addHandler(ch);
    logger.addHandler(uah);
    logger.info(fh.getLevel().toString() + " -- " + ch.getLevel().toString() + " -- " + uah.getLevel().toString());
    logger.info("Logger Initialized.");Both of those logger.info() calls displays to the SRRUserAlertHandler, despite the level being set to SEVERE.
    The getLevel calls displays the proper levels: "FINER -- FINER -- SEVERE"
    When I start up the applet, I get the following in the console:
    Apr 28, 2009 12:01:34 PM lib.srr.applet.SRR initLogger
    INFO: FINER -- FINER -- SEVERE
    Apr 28, 2009 12:01:34 PM lib.srr.applet.SRR initLogger
    INFO: FINER -- FINER -- SEVERE
    Apr 28, 2009 12:01:40 PM lib.srr.applet.SRR initLogger
    INFO: Logger Initialized.
    Apr 28, 2009 12:01:40 PM lib.srr.applet.SRR initLogger
    INFO: Logger Initialized.
    Apr 28, 2009 12:01:41 PM lib.srr.applet.SRR init
    INFO: Preparing Helper Files.
    Apr 28, 2009 12:01:41 PM lib.srr.applet.SRR init
    INFO: Preparing Helper Files.
    Apr 28, 2009 12:01:42 PM lib.srr.applet.SRR init
    INFO: Getting PC Name.
    Apr 28, 2009 12:01:42 PM lib.srr.applet.SRR init
    INFO: Getting PC Name.
    Apr 28, 2009 12:01:42 PM lib.srr.applet.SRR init
    INFO: Finished Initialization.
    Apr 28, 2009 12:01:42 PM lib.srr.applet.SRR init
    INFO: Finished Initialization.Notice they all display twice. Each of those are also being displayed to the user through the JOptionPane dialogs.
    Any ideas how I can properly set this up to send ONLY SEVERE to the user, and FINER and up to the File/Console?
    Thanks!
    Edit:
    Just in case, here is the code for my SRRUserAlertHandler:
    public class SRRUserAlertHandler extends Handler {
         public void close() throws SecurityException {
         public void flush() {
         public void publish(LogRecord arg0) {
              JOptionPane.showMessageDialog(null, arg0.getMessage());
    }Edited by: compbry15 on Apr 28, 2009 9:44 AM

    For now I have fixed the issue of setLevel not working by making a Filter class:
    public class SRRUserAlertFilter implements Filter {
         public boolean isLoggable(LogRecord arg0) {
              if (arg0.getLevel().intValue() >= Level.WARNING.intValue()) {
                   System.err.println(arg0.getLevel().intValue() + " -- " + Level.WARNING.intValue());
                   return true;
              return false;
    }My new SRRUserAlertHandler goes like this now:
    public class SRRUserAlertHandler extends Handler {
         public void close() throws SecurityException {
         public void flush() {
         public void publish(LogRecord arg0) {
              Filter theFilter = this.getFilter();
              if (theFilter.isLoggable(arg0))
                   JOptionPane.showMessageDialog(null, arg0.getMessage());
    }This is ugly as sin .. but I cannot be required to change an external config file when this is going in an applet.
    After much searching around, this logging api is quite annoying at times. I have seen numerous other people run into problems with it not logging specific levels, or logging too many levels, etc. A developer should be able to complete configure the system without having to modify external config files.
    Does anyone else have another solution?

  • Problem with fetch cursor statement

    Hi,
    I am using FETCH CURSOR statement to fetch the data from a database table with package size. For the fetched records I am doing parallel processing using parallel processing frame work in banking system.
    Here the problem is for the first iteration it works fine but when it comes to FETCH NEXT CURSOR in the second iteration , programs gets dumping by saying that 'CURSOR already closed'.
    I am not closing the cursor in the program but some how it got closed some where in the standard function module which I used for parallel processing.
    I used WITHHOLD also along with FETCH CURSOR but no use. Please let me know how to avoid the cursor to get close.
    Below is my code
    IF NOT l_tab_product IS INITIAL.
        OPEN CURSOR WITH HOLD lv_cursor FOR
         SELECT contract_int prodint cn_currency mig_grp
              INTO TABLE gt_cont
                FROM bca_contract
                FOR ALL ENTRIES IN l_tab_product
                WHERE prodint = l_tab_product-prodint
                AND   mig_grp IN s_migrp.
        DO.
          FETCH NEXT CURSOR lv_cursor
                            INTO TABLE gt_cont
                                 PACKAGE SIZE lv_size.
          IF sy-subrc <> 0.
            CLOSE CURSOR lv_cursor.
            EXIT.
          ELSE.
    parallel processing logic
    ENDDO.
    ENDIF.

    Using Withhold will not make sure that the cursor will not get closed because of commits.
    SAP Doc says
    If the addition WITH HOLD is specified, the database cursor is not closed by a database commit executed using Native SQL. The addition does not have an influence, however, on implicit database commits or on any rollbacks which always close the database cursor.
    You have to check the part written in your parallel processing logic.
    As Brad said please donot dump your old threads like this.

  • Problem with Binary search statement

    Hi,
    I have problem with reading the internal with Binary search.
    I have two internal tables BSAS and BSIS. In BSAS I have 1,200,000 line items and BSIS 500,000 line items. I need to delete the line items if BSIS-BELNR NE BSAS-AUGBL.
    I am using the following code :
        LOOP AT gt_bsas .
          READ TABLE gt_bsis WITH KEY bukrs = gt_bsas-bukrs
                                      belnr = gt_bsas-augbl
                                      gjahr = gt_bsas-gjahr.
          IF sy-subrc NE 0.
            DELETE gt_bsas.
            CLEAR  gt_bsas.
          ELSE.
         endif.
    endloop.
    By this execution of the loop is taking long time. If I use the binary search it is fast but result is not correct.
    Please suggest me, how to resolve this issue.
    Thanks,
    Sri.

    Try this way:
    LOOP AT gt_bsas .
    <b>SORT GT_BSIS BY BUKRS BELNR GJAHR.</b>
    READ TABLE gt_bsis WITH KEY bukrs = gt_bsas-bukrs
    belnr = gt_bsas-augbl
    gjahr = gt_bsas-gjahr
    <b>BINARY SEARCH.</b>
    <b>IF sy-subrc eq 0.</b>
    ****Do Nothing.
    ELSE.
    <b>DELETE gt_bsas sy-tabix.</b>
    CLEAR gt_bsas.
    endif.
    endloop.
    1. Also make sure that the KEY mentioned in READ statement follows the same seqeunce of gt_bsis structure.
    Thanks,
    Santosh
    Message was edited by:
            SKJ

  • Is there a problem with maximum RAM size for Satellite 320CDT?

    I have a Satellite 320CDT with the latest BIOS (v8.00) and Windows 98 SE installed; there is 32MB base memory and a 32MB module in the single expansion slot. If I change this for a 64MB expansion module I can still only see 64MB total memory reported, not 96MB as expected; the spec for the machine states that the maximum allowable memory is 160MB (32MB base + 128MB expansion). Does anybody know if there is a problem with the maximum memory size for this model and whether there is a solution or workaround? I need to know quickly, in order to decide if I need to return the memory module to the supplier! Many thanks for any help, Peter

    Are you certain you tried the correct type of memory module? It sounds like you're maybe trying to fit an incompatible type.
    There's a few different suppliers below.
    http://www.orcalogic.co.uk/asp/prodtype.asp?prodtype=5634&ft=m&st=3
    http://www.offtek.co.uk/product.php?manuname=Toshiba&maincat=1&subcat=1&mo del=Satellite+320CDT
    http://www.crucial.com/uk/store/listparts.aspx?model=Satellite+320CDT
    http://www.memoryx.net/tosa323bame1.html

Maybe you are looking for

  • Crackling Sound with Announcements

    Hi. I use the "announce when event occurs" option in iChat. Last night, I did a video chat, and audio chat, and some screen sharing. After all that, the announcements now crackle when they occur. Any idea who to fix it? My speakers are fine, and anyt

  • Creating index that points back to main page

    I have a personal web site to share photos of the baby. During the last four months I have found myself making adjustments to how I want to display. The first two months it was all pictures on one page. That wasn't good. I decided to have albums for

  • Multi channel instument... ultrabeat

    Hello, I'm having problems with ultrabeat. In some projects it appears to work fine whilst in others i cannot get multi channel functionality out of it. Basically, I don't get that little plus and minus sign appearing on the channel strip that's used

  • Trying to use system recovery but getting error f3-f100-f001

    My computer currently will not start in anything but safe mode(starting normally will not load computer), so I'm trying to restore my computer to its factory defaults. However whenever I choose the Repair Your Computer option after pressing F8 at sta

  • Unable to run admsi.pl from Linux console after 7305220 PATCH FOR R12.AD.A.

    Looks like they do not want you running admsi.pl directly from linux console sessions as of AD.A.6: my $DISPLAY= $ENV{'DISPLAY'}; if(($DISPLAY eq "") || ($DISPLAY eq ":0.0")){ print "Please set the DISPLAY variable and re-run this script\n"; exit 1;