Abnormal Shutdown of WebLogic, While execting multiple threads

Hi,
We are working on weblogic 5.1. When we using the web application developed on weblogic 5.1, we are getting 'SIGSEGV 11 Segmentation Violation'. we are not able to understand why this is happening. Please find the log file part of this, below.
============================================
SIGSEGV 11 segmentation violation
si_signo [11]: SEGV
si_errno [0]:
si_code [1]: SEGV_MAPERR [addr: 0x790e6748]
     stackpointer=F76F06B8
"RMI ConnectionExpiration-[3.32.105.26:58788]" (TID:0x10b4d40, sys_thread_t:0x10b4c78, state:CW, thread_t: t@47, threadID:0xf77e1d70, stack_bottom:0xf77e1d70, stack_size:0x1fd70) prio=5
============================================
This is not complete log. I can provide complete log for ur analysis.
Thanks in advance,
Vivek

What version of JDK version you are on?
I would suggest that you try the latest jdk (131_04) and see if that helps
Kumar
djon wrote:
do you run your server with the "-server" parameter? if U are running on
jdk1.3xxx you should!
"Vivekananda C" <[email protected]> wrote in message
news:[email protected]..
Hi,
We are working on weblogic 5.1. When we using the web applicationdeveloped on weblogic 5.1, we are getting 'SIGSEGV 11 Segmentation
Violation'. we are not able to understand why this is happening. Please find
the log file part of this, below.
============================================
SIGSEGV 11 segmentation violation
si_signo [11]: SEGV
si_errno [0]:
si_code [1]: SEGV_MAPERR [addr: 0x790e6748]
stackpointer=F76F06B8
"RMI ConnectionExpiration-[3.32.105.26:58788]" (TID:0x10b4d40,sys_thread_t:0x10b4c78, state:CW, thread_t: t@47, threadID:0xf77e1d70,
stack_bottom:0xf77e1d70, stack_size:0x1fd70) prio=5
============================================
This is not complete log. I can provide complete log for ur analysis.
Thanks in advance,
Vivek

Similar Messages

  • Hyperion Planning application got abnormal shutdown

    Hi,
    Would need your help on the issue I recently hit in my environment.
    Product version: 9.3.1.1.00
    Product: Hyperion Planning
    Unix Platform: Sun Solaries 64bit
    Issue:-
    The application received the Abnormal Shutdown command then the application got shutdown and then not starting up by itself after that.
    Query:-
    Is there anyway to set it to be started automatically even after abnormal shutdown?
    Thanks.
    SuSin

    Hi Sandeep,
    The xcp files are in the application directory.
    I've raised SR in Metalink but the support request me to change the Essbase.cfg on the NETRETRY and NETRETRYCOUNT from 5000 and 3000 respectively to 1000 each and also the SERVERTHREAD from 200 change to 100.
    I've read from one of the reply in the forum saying that if the xcp files are in application directory then it does not really related to the Essbase.cfg unless it is from the server directory. So if in this case, should I still modify the config file?
    Hi John,
    Previously in Jan, it happended once where users are not able to retrieve the data from HyperionPlanning and also Workspace. So after that incident actually we did clear the data and reload the level-0 data. The system was OK (no more Abnormal Shutdown) for a while then came back with this issue again recently.
    Anything can be apply in order to clear this problem?
    Thanks.

  • Calling System.exit() from multiple threads

    Hi,
    Why would calling System.exit() from multiple threads cause all the threads to block?
    Laith

    Thanks for your replies.
    I made further tests and the problem is actually not as I described it first.
    I'm using a shutdown hook that would stop all running threads if the program is stopped externally (using ctl-c for example) (I'm not using Thread.stop(), but setting a boolean value to false that would make the thread exit a while() loop in run()) .
    One of the running threads would call System.exit(-1) just before it would exit run().
    This thread is getting blocked if it is stopped by the shutdown hook.
    I know that this is a bad coding practice, bout would still appreciate an explanation to the reason why the thread is actually blocked by System.exit().
    Laith

  • Problem with ioinning multiple Threads

    Hi,
    I have multiple sub Threads T1, T2, T3.... started by main Thread T. After starting each sub Thread, I stored them in the HashMap. When finish starting all Threads, I want to join each sub Thread to my main Thread.
    The problem is when T3 join with T, it hanged forever! Here is my code:
    class MyThread extends Thread
    private name;
    MyThread(String tName)
    name = tName;
    public void run()
    // doing something....
    public HashMap startThreads()
    HashMap tList = new HashMap();
    for (int i=0; i<5; ++i)
    String tName = "Thread" + i;
    MyThread myT = new MyThread(tName);
    myT.start();
    tList.put(tName, myT);
    public void joinThreads(HashMap tList)
    Iterator iter = tList.values().iterator();
    while (iter.hasNext())
    Thread activeThread = (Thread)iter.next();
    if (activeThread.isAlive()) {
    System.out.println("Join alive thread " + activeThread.tName);
    activeThread.join();
    In my method:
    ... doing s/t
    HashMap tMap = startThreads();
    joinThreads(tMap);
    ... doing s/t else (never excecuted!!!)
    My purpose is staring multi Threads at the same time and executing some code after they all die.
    If I join my sub Thread right after creating it, then the other sub Thread couldn't started until subThread 1 dies!
    If I don't join the sub Thread but remove it from the thread Map when it's not alive then my code executed perfectly. I want to apply join method with my mutiple Threads, how ????
    Could some one give me a hint? Thanks.

    Hi,
    What I don't understand here is why the main Thread
    does not join all the sub Threads ?If you're getting a ConcurrentModificationException while iterating the list of threads, then that's why.
    Why main Thread
    has to wait for sub Thread 1 to finish before joinning
    next sub Threads?It has to join all of the threads. That means it has to wait for all of them to finish. In order to wait for all of the threads it has to wait for the first thread.
    I'm 100% sure that my sub Threads in
    the threadList are valid and alive since I already
    veriffied with other methods.I don't see what that has to do with your problem.
    I already set my joinThreads method as synchronized,
    how come I still have ConcurrentModificationException?Because the list was modified concurrently.
    How can I fix this error?Stop modifying the list concurrently. You haven't posted all of the relevant code, so I can't offer any clues about how to do that.

  • Problem with multiple threads accessing the same Image

    I'm trying to draw into one Image from multiple threads. It works fine for a while, but then suddenly, the image stops updating. Threads are still running but the image won't update. I'm using doublebuffering and threads are simply drawing counters into Image with different speed.
    It seems like the Image gets deadlocked or something. Anyone have any idea what's behind this behavior or perhaps better solution to do such thing.
    Any help will be appreciated.

    Sorry Kglad, I didn't mean to be rude. With "No coding
    errors" I meant the animation itself runs with no errors. I'm sure
    you could run the 20 instances with no freezing (that's why I put
    the post :) ) But I'm affraid it is an animation for a client, so I
    cannot distribute the code.
    Perhaps I didnt explain the situation clearly enough (in part
    because of my poor english...).-
    - By 20 instances I mean 20 separated embedded objects in the
    html
    - The animation is relatively simple. A turned on candle, in
    each cycle I calculate the next position of the flame (that
    oscilates from left to right). The flame is composed by 4
    concentric gradients. There is NO loops, only an 'onEnterFrame'
    function refreshing the flame each time.
    - It's true that I got plenty variables at the _root level.
    If that could be the problem, how can I workaround it?
    - It is my first time trying to embed so many objects at the
    same time too. No idea if the problem could be the way I embed the
    object from the html :(
    - The only thing I can guess is that when a cycle of one of
    the object is running, the other 19 objects must wait their turn.
    That would explain why the more instances I run, the worst results
    I get. In that case, I wonder if there's a way to run them in a
    kind of asynchronous mode, just guessing...
    Any other comment would be appreciated. Anyway, thanks a lot
    everybody for your colaboration.

  • How to use multiple threads and swing for displaying status/interaction

    I have a Swing-app which have to show progress and allow userinteraction for these tasks:
    * First:
    retrieve a list of IDs(String) from the database (single thread running)
    * Second:
    some work on the id-list and list written to hd (same thread as above)
    * Third:
    retrieve Objects (based on the id-list) from different sources (Multiple Threads are running)
    To show the status I have a JProgressBar (indeterminate while task1&2 running) and
    a JTextArea showing the current status (connect,retrieve list, sort, ...)
    When task3 is starting the JTextArea have to disappear and be replaced by a ScrollPane
    with an array of Labels/TextAreas showing the status of each thread.
    While theses threads are working, the ID-list will be consumed and the JProgressBar
    shows the remaining precentage of the hole progress.
    Everything is working so far (excepts UI :) , the problem(s) I have:
    I need the threads to interacts with the user through the ui. e.g: "Connection to db-xyz lost! reconnect?"
    But I don&#180;t know how to do this correctly.
    I think one way would be to send an event to the ui... but how?
    (the ui must know which thread is calling to unpause it after user answered)
    I know that threads should NOT change the swing(-container) - How do I notify the ui that a thread has a question?
    Since these threads are really time-consuming the UI is not updated frequently,
    how can I increase this? (perhaps using another thread-priority?)
    thanks for help!

    if/when your threads need to interact with the UI, they can create a Runnable & send it to SwingUtilities.invokeLater or invokeAndWait. This Runnable can popup a message to the user, and act on the choice of the user (reconnect, cancel, ...). This action could be something which "unpauses" the task thread.
    You may need to do synchronisation between the code in the Runnable & the Thread to which it is related - so the latter Thread knows when the user has made the choice.

  • Multiple threads calling the same stored proc with different parameters

    Hi,
    I have a stored procedure which will be called by 8 threads. Every time it takes in a different parameter.
    Actual execution time for this proc (irrespective of the parameter) is around 2 seconds. But when I call the 8 threads, I see that the total time taken (END TO END) is around 16 seconds. Threads do acquire a read lock right? Is there a way i can get over this issue?
    Please let me know.

    Sybase IQ is the database. I am using a thread pool. The time taken to execute this procedure without threads is about 2 seconds. It takes 16 seconds when I start using threads.
    I do something like this :
    ///////////////////////// databaseThreadPool.java
    * example of a fixed-size thread pool using the
    * executors introduced in Java 5
    import java.util.concurrent.ExecutorService;
    import java.util.concurrent.Executors;
    public class databaseThreadPool
    public static void main(String[] args)
    * create a thread pool with four threads
    ExecutorService execSvc = Executors.newFixedThreadPool( 8);
    * place six tasks in the work queue for the thread pool
    for( int i = 0; i < 6; i++ )
    execSvc.execute( new CountDown() );
         long a =System.currentTimeMillis();
    execSvc.execute( new databaseThread("00055","YTD","GROSS") );
    execSvc.execute( new databaseThread("00055","YTD","NET") );
    execSvc.execute( new databaseThread("00055","YTM","GROSS") );
    execSvc.execute( new databaseThread("00055","YTM","NET") );
    execSvc.execute( new databaseThread("00055","LY","GROSS") );
    execSvc.execute( new databaseThread("00055","LY","NET") );
    execSvc.execute( new databaseThread("00055","LLY","GROSS") );
    execSvc.execute( new databaseThread("00055","LLY","NET") );
         long b =System.currentTimeMillis();
         try{
         while(databaseThread.done!=8)
              Thread.sleep(1000);
         catch(Exception ex){}
    execSvc.shutdown();
    System.out.println("END TO END TIME TAKEN : "+(b-a));
    /////////////////////////////////////////////////////////// databaseThread.java
    import java.io.PrintWriter;
    import java.sql.CallableStatement;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.ResultSetMetaData;
    import java.sql.Statement;
    import java.io.PrintWriter;
    import java.sql.CallableStatement;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.ResultSetMetaData;
    import java.sql.SQLException;
    import java.sql.Statement;
    import java.io.IOException;
    public class databaseThread implements Runnable
    protected int count = 8;
    * the following counter is incremented once
    * each time the class is instantiated, giving each
    * instance a unique number, which is printed in run()
    private static int taskCount = 0;
    private final int id = taskCount++;
    private String gpNum;
    private String time;
    private String domain;
    public static int i=0;
    public static int done=0;
    PrintWriter out = null;
    Connection connection = null;
    Statement statement;
    ResultSet rs;
    ResultSetMetaData rsmd;
         CallableStatement cStmt = null;
    public databaseThread(String gpNum, String time, String domain) {
    this.gpNum=gpNum;
    this.time=time;
    this.domain=domain;
    * print the id and the iteration count to the console, then
    * yield to another thread.
    public void run()
         try
         Class.forName("com.sybase.jdbc3.jdbc.SybDriver");
         connection = DriverManager.getConnection("jdbc:sybase:Tds:XXXXXXXXXXX:XXXXXXX", "cp_dbo","cp_dbo");
         statement = connection.createStatement();
              cStmt=connection.prepareCall("{call XXXXXX ?,?,?)}");
              cStmt.setString(1,gpNum);
              cStmt.setString(2, time);
              cStmt.setString(3,domain);
              long a =System.currentTimeMillis();
              rs=cStmt.executeQuery();
              long b=System.currentTimeMillis();
              System.out.println(id+" Time taken by to execute Query : "+(b-a));
         //rsmd=rs.getMetaData();
              while(rs.next())
              Thread.yield();
         catch (ClassNotFoundException e) {
              System.out.println("Driver Error" );
              e.printStackTrace();
              } catch (SQLException e) {
              System.out.println("SQLException: " + e.getMessage());
    }

  • How to proces the record in Table with multiple threads using Pl/Sql & Java

    I have a table containing millions of records in it; and numbers of records also keep on increasing because of a high speed process populating this table.
    I want to process this table using multiple threads of java. But the condition is that each records should process only once by any of the thread. And after processing I need to delete that record from the table.
    Here is what I am thinking. I will put the code to process the records in PL/SQL procedure and call it by multiple threads of Java to make the processing concurrent.
    Java Thread.1 }
    Java Thread.2 }
    .....................} -------------> PL/SQL Procedure to process and delete Records ------> <<<Table >>>
    Java Thread.n }
    But the problem is how can I restrict a record not to pick by another thread while processing(So it should not processed multiple times) ?
    I am very much familiar with PL/SQL code. Only issue I am facing is How to fetch/process/delete the record only once.
    I can change the structure of table to add any new column if needed.
    Thanks in advance.
    Edited by: abhisheak123 on Aug 2, 2009 11:29 PM

    Check if you can use the bucket logic in your PLSQL code..
    By bucket I mean if you can make multiple buckets of your data to be processed so that each bucket contains the different rows and then call the PLSQL process in parallel.
    Lets say there is a column create_date and processed_flag in your table.
    Your PLSQL code should take 2 parameters start_date and end_date.
    Now if you want to process data say between 01-Jan to 06-Jan, a wrapper program should first create 6 buckets each of one day and then call PLSQL proc in parallel for these 6 different buckets.
    Regards
    Arun

  • Skype 4.2.0.11 has abnormally high CPU usage while...

    Skype 4.2.0.11 has abnormally high CPU usage while idle.
    I can't get my laptop under 70 degrees celsius unless I cpulimit or quit skype, and cpulimiting it actually makes it completely unresponsive, as if some other thread is constantly generating a lot of work and taking priority over the UI thread.
    What the heck is skype doing? (And why do any of its threads need nice -10?) It takes up more CPU time than pulseaudio, truecrypt, and deluged combined.
    Its CPU usage is constantly between 5 and 50 percent*, it's absolutely horrible.
    *While idle. I'm unable to make calls.
    I know this is expected from a linux user, but for all I know, Skype is malware. It's not open-source, so I can't find out for myself, and there are no open-source alternatives so the frankly shameful amount of bugs I encounter in Skype will never be fixed.
    There are several bugs I'd love to be fixed in Skype, but first, PLEASE, optimize your code. It's absolutely horriffic at the moment.

    Attached are statistics from my desktop over approximately a 24 hour period for the processes shown (other than firefox and adb).
    Pulseaudio tops skype this time but that's because I've had music playing through mpd for a few hours. Skype uses more than 16 times the CPU that pidgin does, and almost double the RAM! RAM isn't shown in the screenshot but take my word for it. Bear in mind that I haven't taken (or made) any calls in this period of time, and pidgin has been signed into three different services and using encrypted chat.
    I really wish that at least the protocol would be documented so someone could work around this, at the moment I don't think the guys writing skype realize just how unstable the linux port is. At least it's better than the Android port.
    [Edit for those unfamiliar with linux processes: "TIME" is the cumulative time that the program has been scheduled for on any core, effectively making it a measure of total CPU usage for a given time period]
    Attachments:
    2014-06-22-233238_530x119_scrot.png ‏9 KB

  • Executors.newSingleThreadScheduledExecutor() creating multiple threads?

    While examining a stack trace this morning, I found approximately 250 idle threads labelled "pool-4-thread-###", where ### ranged from 1 to 250 or so.
    I then traced pool-4-thread to a ScheduledExecutorService and underlying ThreadPoolExecutor object created via a call to Executors.newSingleThreadScheduledExecutor().
    There are two types of tasks scheduled on that instance of the Executor. The first is a task which runs twice a day. The second type is something that gets scheduled as the result of a user action, which may occur dozens of times a day.
    Under what conditions can a SingleThreadScheduledExecutor create and leave around multiple threads?
    Thanks in advance,
    Mike Benveniste

    If the thread never completes.
    It's either hanging, or, more likely, has an exit condition that's never being met. Or it's spawning processes that are not completing.
    Simply put a debug statement at the beginning and end of the thread so you can see when (and if) it's starting and stopping.
    You may want to use object.killProcess() prior to starting the next instance to force the previous instance to stop if it still exists.
    bcf

  • Illustrator CS6 hangs saving files to local HD while having multiple server share points mounted

    Mac OS 10.6
    Illustrator CS6
    Illustrator CS6 hangs (spinning beach ball) when saving files to the computer's local HD while having multiple server share points mounted.
    I am NOT opening or saving the file to or from a server.
    The server is mounted so that I can move my saved file to it once complete.
    Unmounting the servers fixes the problem and Illustrator CS6 returns to being normal (not causing a spinning beach ball).
    This is repeatable, not intermitent.

    We were having similar issues working over a network. I believe it's a Mac OS 10.6 issue, something to do with the Mac finder searching for file dates or metadata on the servers. From what I understand, this has been fixed in OS 10.7. We can't yet move to 10.7 and after trying many possible fixes, found that a Mac finder alternative, Path Finder, fixed most server delays. It's not free, but you can give it a 30 day trial to see if it fixes your issue. Here is a link to discussions about other suggested fixes:
    https://discussions.apple.com/thread/2172049?start=30&tstart=0

  • Abnormal Shutdown in App when conducting training

    Every time we conduct an Essbase Excel Add-In training class, the application that we are training in abnormally shuts down many times. The app does not appear to be corrupted and does not have problems outside of the class times. None of our other apps have problems during these times. Our classroom pc's are using network hubs and I'm guessing that these abnormal shutdowns have something to do with the fact that so many users are trying to touch the server/app at the same time going through the same network connection. The .xcp file appears to be almost identical every time. Below is an exerpt from the .xcp file:----- Exception Error Log Begin -----Current Date & Time: Thu Mar 20 13:11:41 2003Process Type: ApplicationApplication Name: SldfinDatabase Name: SldfinException Log File: D:\HYPERION\ESSBASE\app\Sldfin\Sldfin\log00012.xcpCurrent Thread Id: 514Exception Code: 0xC0000005=Access ViolationException Flags: 0x00000000=ContinuableException Address: 0x00523427Exception Parameters: 2Exception Parameter 0: 0x00000000=Read Violation Exception Parameter 1: 0x00000020 (Virtual Address)We have NETDELAY 5000 and NETRETRYCOUNT 1000 set in our essbase.cfg. Our server version is 6.2.1, the client versions are 6.0 and 6.2.1 (happens with either client version).Has anyone else experienced this? If so, is there any way to change the essbase.cfg or server o/s (Win NT) settings to avoid this problem?Thanks in advance.

    When your sever is dead, there isn't anything there to run and all the connections are lost.
    On the client side you will have to look for the disconnect, timeout, or some other exception so you know not to continue trying to connect to a dead server socket.

  • Abnormal shutdown of database

    Hai All,
    This alert log content from my production database. what is the cause of the abnormal shutdown.After the shutdown, the database can startup normally.
    Tue Aug 7 04:59:23 2007
    Thread 1 advanced to log sequence 1376
    Current log# 1 seq# 1376 mem# 0: /home/oracle/oracle/product/10.2.0/oradata/dsoft/redo01.log
    Tue Aug 7 09:00:53 2007
    Thread 1 advanced to log sequence 1377
    Current log# 2 seq# 1377 mem# 0: /home/oracle/oracle/product/10.2.0/oradata/dsoft/redo02.log
    Tue Aug 7 11:46:29 2007
    Shutting down instance (abort)
    License high water mark = 132
    Instance terminated by USER, pid = 28548
    Tue Aug 7 11:46:32 2007
    Starting ORACLE instance (normal)
    LICENSE_MAX_SESSION = 0
    LICENSE_SESSIONS_WARNING = 0
    Picked latch-free SCN scheme 2
    Using LOG_ARCHIVE_DEST_10 parameter default value as USE_DB_RECOVERY_FILE_DEST
    Autotune of undo retention is turned on.
    IMODE=BR
    ILAT =18
    LICENSE_MAX_USERS = 0
    SYS auditing is disabled
    Please help..

    Hi Dear,
    I feel this instance is terminated with shu abort command by
    Instance terminated by USER, pid = 28548You should check who is this user who has sysdba privilages.........It can be really very dangerous.
    Regards
    Amit Raghuvanshi

  • Creating multiple Threads in applets

    Hi, I need some help creating multiple threads in applets. If you look at the simple code example below you�ll see that it uses one thread that calls the findTarg() method that gives its sleep() a value and makes the oval find its new target.
    What I want to know is how do I create a new thread in this applet? � So for example I could call a findTarg2() method from within a new thread that sets its sleep() to a faster or slower value and starts at the same time as findTarg().
    Hope that makes sense.
    <applet code="thread.class" height=400 width=400>
    </applet>
    import java.awt.Graphics;
    import java.awt.*;
    import java.awt.event.*;
    public class thread extends java.applet.Applet implements Runnable {
    int x = 200;
    int y = 200;
    int xTarg;
    int yTarg;
    int sleeper;
    boolean go;
    Thread first;
    public void start(){
    if(first == null); {
    first = new Thread(this);
    first.start();
    public void run(){
    while (first != null) {
    findTarg();
    try {
    Thread.sleep(sleeper);
    } catch (InterruptedException e) { }
    public void findTarg(){    
    if(go == true){
    sleeper = 10;
    if(x < xTarg)x++;
    if(x > xTarg)x--;
    if(y < yTarg)y++;
    if(y > yTarg)y--;
    repaint();
    if((x == xTarg)&&(y == yTarg))go = false;
    public boolean mouseDown(Event evt, int x, int y) {
    xTarg= x;
    yTarg= y;
    go = true;
    return true;
    public void paint(Graphics g) {
    g.setColor(Color.black);
    g.fillOval(x,y,20,20);
    }

    I've found another example and this time it extends JApplet. I'm sorry I can't help you more, but I'm new as well.
    // Fig. 15.7: RandomCharacters.java
    // Demonstrating the Runnableinterface
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    public class RandomCharacters extends JApplet
    implements Runnable,
    ActionListener {
    private String alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    private JLabel outputs[];
    private JCheckBox checkboxes[];
    private final static int SIZE = 3;
    private Thread threads[];
    private boolean suspended[];
    public void init()
    outputs = new JLabel[ SIZE ];
    checkboxes = new JCheckBox[ SIZE ];
    threads = new Thread[ SIZE ];
    suspended = new boolean[ SIZE ];
    Container c = getContentPane();
    c.setLayout( new GridLayout( SIZE, 2, 5, 5 ) );
    for ( int i = 0; i < SIZE; i++ ) {
    outputs[ i ] = new JLabel();
    outputs[ i ].setBackground( Color.green );
    outputs[ i ].setOpaque( true );
    c.add( outputs[ i ] );
    checkboxes[ i ] = new JCheckBox( "Suspended" );
    checkboxes[ i ].addActionListener( this );
    c.add( checkboxes[ i ] );
    public void start()
    // create threads and start every time start is called
    for ( int i = 0; i < threads.length; i++ ) {
    threads[ i ] =
    new Thread( this, "Thread " + (i + 1) );
    threads[ i ].start();
    public void run()
    Thread currentThread = Thread.currentThread();
    int index = getIndex( currentThread );
    char displayChar;
    while ( threads[ index ] == currentThread ) {
    // sleep from 0 to 1 second
    try {
    Thread.sleep( (int) ( Math.random() * 1000 ) );
    synchronized( this ) {
    while ( suspended[ index ] &&
    threads[ index ] == currentThread )
    wait();
    catch ( InterruptedException e ) {
    System.err.println( "sleep interrupted" );
    displayChar = alphabet.charAt(
    (int) ( Math.random() * 26 ) );
    outputs[ index ].setText( currentThread.getName() +
    ": " + displayChar );
    System.err.println(
    currentThread.getName() + " terminating" );
    private int getIndex( Thread current )
    for ( int i = 0; i < threads.length; i++ )
    if ( current == threads[ i ] )
    return i;
    return -1;
    public synchronized void stop()
    // stop threads every time stop is called
    // as the user browses another Web page
    for ( int i = 0; i < threads.length; i++ )
    threads[ i ] = null;
    notifyAll();
    public synchronized void actionPerformed( ActionEvent e )
    for ( int i = 0; i < checkboxes.length; i++ ) {
    if ( e.getSource() == checkboxes[ i ] ) {
    suspended[ i ] = !suspended[ i ];
    outputs[ i ].setBackground(
    !suspended[ i ] ? Color.green : Color.red );
    if ( !suspended[ i ] )
    notify();
    return;
    }

  • Jms c api does NOT support multiple threads on solaris?

    It appears that weblogic jms c api (solaris) does not work with multiple threads.
              I wrote a simple test program with multiple threads in the following environment:
              <p>
              <pre>solaris 5.7 Generic_106541-22 sun4u sparc SUNW,Ultra-250,
              weblogic 8.1.3
              jdk 1.4.2_b04
              </pre>
              <b>ONLY the first thread is able to create jms queue senders and send text messages without any problem. The second thread always get the following exception:</b>
              <pre>weblogic.jms.common.JMSException
              at weblogic.jms.dispatcher.DispatcherWrapperState.dispatchSyncTran(DispatcherWrapperStat
              e.java:440)
              at weblogic.jms.client.JMSProducer.sendInternal(JMSProducer.java:382)
              at weblogic.jms.client.JMSProducer.send(JMSProducer.java:207)
              Caused by: java.lang.ExceptionInInitializerError
              at weblogic.j2ee.ApplicationManager.loadClass(ApplicationManager.java:309)
              at weblogic.j2ee.ApplicationManager.loadClass(ApplicationManager.java:258)
              at weblogic.j2ee.ApplicationManager.loadClass(ApplicationManager.java:253)
              at weblogic.rjvm.MsgAbbrevInputStream.resolveClass(MsgAbbrevInputStream.java:324)
              at weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream
              .java:96)
              at weblogic.rjvm.MsgAbbrevInputStream.readObject(MsgAbbrevInputStream.java:117)
              at weblogic.rmi.internal.ObjectIO.readObject(ObjectIO.java:56)
              at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:159)
              at weblogic.rmi.internal.BasicRemoteRef.invoke(BasicRemoteRef.java:138)
              at weblogic.jms.dispatcher.DispatcherImpl_813_WLStub.dispatchSyncTranFuture(Unknown Sour
              ce)
              at weblogic.jms.dispatcher.DispatcherWrapperState.dispatchSyncTran(DispatcherWrapperStat
              e.java:406)
              ... 2 more
              Caused by: <b>java.lang.NullPointerException</b>
              at weblogic.i18ntools.L10nLookup.loadProps(L10nLookup.java:88)
              at weblogic.i18ntools.L10nLookup.<init>(L10nLookup.java:160)
              at weblogic.i18ntools.L10nLookup.init(L10nLookup.java:132)
              at weblogic.i18ntools.L10nLookup.getLocalizer(L10nLookup.java:315)
              at weblogic.management.commo.internal.CommoCommandLineTextFormatter.<init>(CommoCommandL
              ineTextFormatter.java:20)
              at weblogic.management.commo.Commo.<clinit>(Commo.java:89)
              ... 13 more</pre>

    It was caused by the 2nd threads' classloader.
              The 2nd thread uses the bootstrap classloader by default when attached to jvm, which loads the 'core' java classes only, not even extended classes.
              <p>
              This cause JNDI factory initialization failed.
              <p>
              The solution is to set the 2nd thread's context loader as the system class loader using JNI. See java.lang.Thread#setContextLoader and java.lang.ClassLoader#getSystemClassLoader.

Maybe you are looking for

  • Exception while invoking webservice

    I have created a client jar containing stub and port classe, deployment descritor and deployed webservices. Webservices are working fine but while invoking webservice with client code i am getting Exception, can somebody please help me to resolve it

  • Wrong Calculation of Custom Duty for Import PO

    Dear Experts, We have made one PO for Import and after that we have made custom duty for the same PO and then we have captured the excise invoice through J1iex T.code. But when we have posted the MIGO it is calculating wrong custom duty that particul

  • Refund for icloud storage ipod touch

    Hi, I purchased icloud storage on ipod touch and now find this not what i wanted, now I am wanting a refund and would like to know the process. I purchased icloud storage within the fifteen day possible refund opportunity. Thanks Matt

  • Host Credentials Validation Error - Oracle database on Windows Server 2008

    I am trying to log into an oracle database residing on a windows 2008 server through enterprise manager. I keep getting the error Validation error - �. I have added my username to the "log on as bacth job" properties. but I still keep getting this er

  • Sun ONE Portal Server 6.1 - Support for doble-byte characters - China/Korea

    Hi, Can somebody help me in understanding whether Sun ONE Portal Server support double-byte characters. This is basically to support Chinese & Korean languages. If yes, please guide me through the steps to enable the same. Thank you, V