Who's running a Flex-Java app in an enterprise clustered environment?

And how are you handling session management and security?  Using distributed cache functionality such as that in Terracotta, or another method?

Wow, don't everyone answer at once! 
Is the question too open ended?

Similar Messages

  • Jrocket segfaults when running even trivial java app

    Trying to run it on debian woody (2.2) it segfaults and on debian sid it just hangs
    (can't control c it)
    gdb on the core gives:
    Core was generated by `/usr/local/jrockit/jre1.3.1/bin/i386/native_threads/java
    -jrockit -cp . test'.
    Program terminated with signal 11, Segmentation fault.
    #0 0x2ad0e38d in ?? ()
    stracing it on woody stops it segfaulting and I get these messages
    wait4(2418, ********** Warning: Alternative 2 also failed
    ******* JRockit failed in setfs -1 - repeat
    NULL, 0, NULL) = 2418
    --- SIGCHLD (Child exited) ---
    getpid() = 1761
    fork() = 2419
    wait4(2419, ********** Warning: Alternative 2 also failed
    ******* JRockit failed in setfs -1 - repeat
    NULL, 0, NULL) = 2419
    --- SIGCHLD (Child exited) ---
    getpid() = 1761
    fork() = 2420
    test.java is:
    public class test {
    public static void main(String[] args) {
    System.out.println("test");

    Hi Chris.
    I agree, I think it may be something in the OS like glibc or perhaps some other lib.
    Unfortunately we don't test on debian, and we don't certify on it. 8-(
    You might compare glibc versions between your version of debian and the version of
    redhat we support, and make them the same if possible. Other than that I'm not sure
    what else to suggest other than go with RedHat.
    Maybe someone else reading this forum can offer a better suggestion.
    Regards,
    Michael
    Christoph Sturm wrote:
    Hi Michael!
    I tried both the old version and the 7.0 version on debian, and it didnt work.
    Both versions worked fine on RH.
    maybe a problem with the glibc.
    tell me if you need any config info or want me to run tests.
    regards
    chris
    Michael wrote:
    Hi.
    Hmm, weird. I tried your test app on RH linux with jrockit and it worked fine.I
    gather you are not getting a jrockit.dump file, so it's an initialization problem.
    I don't have any good suggestions. You might try the new release of JRockit7.
    Your copy of jrockit may have been corrupted.
    HTH,
    Michael
    M wrote:
    running within gdb is slightly different:
    This GDB was configured as "i386-linux"...
    (gdb) set args -Xmx128m test
    (gdb) r
    Starting program: /usr/local/jrockit/jre1.3.1/bin/i386/native_threads/java -Xmx1
    28m test
    [New Thread 1024 (LWP 21840)]
    ********** Warning: Alternative 2 also failed
    ******* JRockit failed in setfs -1 - repeat
    ********** Warning: Alternative 2 also failed
    ******* JRockit failed in setfs -1 - repeat
    this repeats over and over

  • Error when trying to run my first Java app

    Okay, Im new to Java programming. I started a day ago :). My question is after I compile my application like so.
    javac TestGreeting.javaIt give me a .class file. So the next step is I want to run it so I do the following.
    java TestGreeting.classWhen I run this I get this error:
    Exception in thread "main" java.lang.NoClassDefFoundError: TestGreeting/classCan some one tell me what is going on? I am running Mac OSX Leopard on a MBP. I have the latest Xcode Tools which is 3.1 if I am not mistaken.
    Thanks everyone. Go easy on a newbie :)

    The argument for the java command is the fully qualified Class Name. It is not a file name or path. You provided a file name. The JVM tried to find a class named 'class' in a package named TestGreeting. Most likely, you should have typed "java TestGreeting"
    Here is a link to a tutorial, and the Getting Started section includes a section for problem resolution.
    [http://java.sun.com/docs/books/tutorial/]

  • Running Permission Scripts for App-V packages in VDI environment

    Hi
    We use App-V 5.0 SP1 in VDI environment.
    We have a major problem with packages' permissions
    Our users don't have administrative privileges on their machines.
    As the option for "Security Descriptors" is discontinued, the only way to give permissions to a folder in a package is to use the VFSCACLS.vbs as a startup script of a package.
    This way the first time users launch an application they're prompt to reopen it, and the second time they can use the application with the needed permissions.
    The problem:
    The script saves those permission changes under LOCALAPPDATA\AppV...
    Therefore, everytime the users logoff the folder is deleted (VDI...) and again, they must run the script for the first  again to get the permissions back after logon!
    We cannot roam the LOCALAPPDATA\AppV folder as its size can be dozens of GBs...
    Folder permissions with group policy is also not a solution, as the folder name changes everytime we upgrade a package and it's impossible to follow with hundreds of packages.
    So it's either we're missing something critical in the architecture with VDI environment or there's a normal solution for these situations.
    Would love to get some help
    Thanks
    Tamir Levy

    Hi Nicke
    that's what I did! the problem is that I find my self over and over again want to sequence packages in App-V 5.0 and forced to sequence it in App-V 4.6.
    I really hope that it wasn't App-V team's goal. announcing App-V 5.0 and tell us it doesn't support many things so we will still need App-V 4.6 forever.
    I have to maintain 2 different App-V environments with 4 different servers , 4 different sequencers and 2 clients on each computer. it doesn't make any sense for me to forced to stay with both of the versions forever.
    correct me if I'm wrong but App-V 4.6 is a legacy application. the new versions cover only support on newer operating systems and nothing more. I won't be surprised if in the next version of MDOP won't come with App-V 4.6 anymore and Microsoft will announced
    it's unsupported very soon.
    Every time I open a ticket with MS Support the best thing I get is "It's a known issue, we can't tell when it will be fixed"
    can you help me more ? move it forward to other people from the inside? at least agree with me that something is not as expected in App-V 5.0... :(
    I love the technology, I believe in it, I'm kinda depend on it and I only want it to be better
    Tamir Levy

  • Killing Java app from C

    Ive seen this question posted before, but never found a good answer. I am invoking a JVM from a legacy C app (via JNI_CreateJavaVM) and I want to be able to end the JVM and have the C app continue. The problem is that a call to System.exit() from inside the java app causes the entire native process (not just the JVM) to be killed. A call to DestroyJavaVM() does not unload the
    JVM (as it claims it does in the API documentation).
    Currently, the Java code calls dispose and System.gc (for good measure) on exiting, although this doesnt completely kill the java app. If the user wishes to invoke another Java app, the C code uses JNI_GetCreatedVMs to see if one already exists, and if so uses AttachThread (or GetEnv) to hook to the existing JVM to run the new Java app. The problem with this is with complicated GUI apps, the machine soon hits a wall, I guess because of un-gc'd stuff laying around.
    Is there a way to kill the app from java without using System.exit or is there a way to unload the JVM from the C app?

    Unfortunately I am running into the same issues using JDK1.4 on Win32. Basically the call to jvm->DestroyJavaVM() is NEVER returning. This seems to mainly be a problem when you use classes which require a native class loader to load native libraries. EX: classes which use System.loadLibrary("some native library"). Has anyone found a workaround to allow us to stop the jvm from the native side when these are present?
    Also if anyone in interested - this is the exact c++ code I am currently using:
        if(vm != NULL) {
             * Detach the current thread from the vm so that it appears to have
             * exited when the process has detatched from the dll.
            if (vm->DetachCurrentThread() != 0) {
                MessageBox(NULL,"Could not detatch the Java Virtual Machine","DEBUG Info",MB_OK+MB_ICONEXCLAMATION);
            MessageBox(NULL,"Try to destroy the VM","DEBUG Info",MB_OK+MB_ICONEXCLAMATION);
            vm->DestroyJavaVM();
            vm = NULL;
        MessageBox(NULL,"JVM destroyed successfully","DEBUG Info",MB_OK+MB_ICONEXCLAMATION);Basically all the calls succeed except the vm->DestroyJavaVM(); including the call to detatch the current thread from the VM! Am I missing something obvious? Is this a known bug? Anyone know any workarounds? Aany and all constructive comments are welcome.

  • Error While running WLST script to create SOA Domain in Clustered Environme

    Hi,
    I am trying to run WLST script to create SOA Domain in clustered environment.The script is as follows.
    import sys
    print "@@@ Starting the script ..."
    global props
    from wlstModule import *#@UnusedWildImport
    from java.io import FileInputStream
    from java.io import File
    #=======================================================================================
    # Create Boot Properties File
    #=======================================================================================
    def createBootPropertiesFile(directoryPath, username, password):
    adminserverDir = File(directoryPath)
    bool = adminserverDir.mkdirs()
    fileNew=open(directoryPath + '/boot.properties', 'w')
    fileNew.write('username=%s\n' % username)
    fileNew.write('password=%s\n' % password)
    fileNew.flush()
    fileNew.close()
    def createNodeManagerPropertiesFile(directoryPath, username, password):
    adminserverDir = File(directoryPath)
    bool = adminserverDir.mkdirs()
    fileNew=open(directoryPath + '/nm_password.properties', 'w')
    fileNew.write('username=%s\n' % username)
    fileNew.write('password=%s\n' % password)
    fileNew.flush()
    fileNew.close()
    def createAdminStartupPropertiesFile(directoryPath, args):
    adminserverDir = File(directoryPath)
    bool = adminserverDir.mkdirs()
    fileNew=open(directoryPath + '/startup.properties', 'w')
    args=args.replace(':','\\:')
    args=args.replace('=','\\=')
    fileNew.write('Arguments=%s\n' % args)
    fileNew.flush()
    fileNew.close()
    I am getting the error :
    Problem invoking WLST - Traceback (innermost last):
    (no code object) at line 0
    File "D:\Oracle\Middleware\Oracle_SOA1\bin\SOADomainScript.py", line 11
    adminserverDir = File(directoryPath)
    ^
    SyntaxError: invalid syntax
    Do i need to set any jar in the classpath? Already jython.jar is available in the classapath.
    Thanks in advance.
    Regards,
    Subha

    Hi,
    I am trying to run WLST script to create SOA Domain in clustered environment.The script is as follows.
    import sys
    print "@@@ Starting the script ..."
    global props
    from wlstModule import *#@UnusedWildImport
    from java.io import FileInputStream
    from java.io import File
    #=======================================================================================
    # Create Boot Properties File
    #=======================================================================================
    def createBootPropertiesFile(directoryPath, username, password):
    adminserverDir = File(directoryPath)
    bool = adminserverDir.mkdirs()
    fileNew=open(directoryPath + '/boot.properties', 'w')
    fileNew.write('username=%s\n' % username)
    fileNew.write('password=%s\n' % password)
    fileNew.flush()
    fileNew.close()
    def createNodeManagerPropertiesFile(directoryPath, username, password):
    adminserverDir = File(directoryPath)
    bool = adminserverDir.mkdirs()
    fileNew=open(directoryPath + '/nm_password.properties', 'w')
    fileNew.write('username=%s\n' % username)
    fileNew.write('password=%s\n' % password)
    fileNew.flush()
    fileNew.close()
    def createAdminStartupPropertiesFile(directoryPath, args):
    adminserverDir = File(directoryPath)
    bool = adminserverDir.mkdirs()
    fileNew=open(directoryPath + '/startup.properties', 'w')
    args=args.replace(':','\\:')
    args=args.replace('=','\\=')
    fileNew.write('Arguments=%s\n' % args)
    fileNew.flush()
    fileNew.close()
    I am getting the error :
    Problem invoking WLST - Traceback (innermost last):
    (no code object) at line 0
    File "D:\Oracle\Middleware\Oracle_SOA1\bin\SOADomainScript.py", line 11
    adminserverDir = File(directoryPath)
    ^
    SyntaxError: invalid syntax
    Do i need to set any jar in the classpath? Already jython.jar is available in the classapath.
    Thanks in advance.
    Regards,
    Subha

  • Problem running my Java apps in my LG phone. Please help!

    Hi all!!
    I am quite new to the world of J2me, altough I've been coding Java for quite a few years now.
    Recently I bought a LG u 8120 phone with Java-support so I decided it was time to step into the mobile Java-world.
    Now I have written my first small app, a simple timer application which my phone (strangely enough) does not already have.
    So what happens is this : I create my app on my PC and package it with the WTK into a jar -file and a jad-file which i transfer to the phone.
    After this I can see the name of my app in the list of available programs in the phone. But when I try to run it: Nothing. The Java logo shows up for a few seconds and then I am tossed back to the menu.
    I have thought of the following as possible problems:
    1. the 8120 does not support MIDP2.0
    2. I am doing something wrong transfering the files
    3. I have missed out on one or several necessary steps in the process
    Anyone who have developed Java apps for LG phones who can give me some hints?
    I've used the Sun J2ME Wireless Toolkit 2.2 with MIDP2.0 and CLDC1.1 .
    The apps works fine in the emulator. The problem starts when I want to run it in the phone. The phone I've tried is an LG u8120. LG apparently does not want to make life easy for its customers, so there is no support for transfering Java apps in the vendor-supplied software. I suppose that's because they want you to only download stuff from their site. However, after surfing around on some discussion forums for a while I found a program called G-thing which can be used to upload Java apps to LG-phones via USB.
    Any help is very appreciated!
    Thanks,
    Sarah

    Thanks,
    I have tried this and ruled out some of the possible causes.
    When I added some more exception handling, I could see that a "java.lang.IllegalArguenException" is thrown.
    When I ran the AudioDemo package that came with WTK2.2 I noticed that the examples that uses WAV-files do not work while the rest works fine.
    My new theory is now that the u8120 does not support the WAV-format, so I will try with an mp3 instead and see what happens.
    Anyone who knows if LG-phones support WAV-format?
    /Sarah

  • Java apps have started running very slowly since last update.  Anyone else experiencing any problems.

    There is an java app that I have run for years without any problem  Within the last few days it started running very slowly.  I went to the Apple store and ran the same app and experienced exactly the same problem 
    Yesterday I tried running this app on a Windows based machine and it ran perfectly. 
    I was all set to download the latest java when I saw that Apple supplied the java version on the MAC.
    I have run sotware updates and get results that all software is uptodate.
    Any suggestions?

    There are many people who have posted about persistent  export failures since the update. A search will uncover a number of threads just within the past month. There doesn't seem to be a pattern to these problems – and if there is common fix, I haven't heard about it.
    However, the update hasn't been a problem for me – nor presumably has it been for the majority of users.
    Russ 

  • How do I run multiple java apps in one JVM to reduce memory use?

    Hi all,
    I saw an article either on the web or in a magazine not too long ago about how to "detect" if the app is already running, and if so, it hands off the new instance to the already running JVM, which then creates a thread to run the Java app in. As it turns out, my app will be used in an ASP environment, through Citrix. We may have as many as 50 to 100 users running the same app, each with their own unique user ID, but all using the same one server to run it on. Each instance eats up 25MB of memory right now. So the question is if anybody knows of a URL or an app like this that can handle the process of running the same (or even different Java) apps in one JVM as separate threads, instead of requring several instances of the JVM to run? I know this article presented a fully working example, and I believe I know enough to do it but I wanted ot use the article as a reference to make sure it is done right. I know that each app basically would use the same one "launcher" program that would on first launch "listen" to a port, as well as send a message through the port to see if an existing launcher was running. If it does, it hands off the Java app to be run to the existing luancher application and shuts down the 2nd launching app. By using this method, the JVM eats up its normal memory, but each Java app only consumes its necessary memory as well and doesn't use up more JVM instance memory.
    Thanks.

    <pre>
    import java.util.Properties;
    import java.io.FileInputStream;
    import java.io.IOException;
    import java.lang.reflect.Method;
    import java.lang.reflect.InvocationTargetException;
    import java.util.Enumeration;
    import java.util.NoSuchElementException;
    public class RunProg implements Runnable, Cloneable
    private String iProg;
    private String iArgs[];
    public static void main(String args[])
    new RunProg().main();
    // first step is to start main program itself
    private void main()
    Properties properties = System.getProperties();
    try
    properties.load(new FileInputStream("RunProg.properties"));
    catch(IOException e)
    System.setProperties(properties);
    int i = 0;
    System.out.println("enter main, activeCount=" + Thread.activeCount());
    while(true)
    String program = properties.getProperty("Prog" + i);
    if(program == null)
    break;
    StringTokenizer st = new StringTokenizer(program);
    String[] args = new String[st.countTokens() - 1];
    try
    RunProg rp = (RunProg)this.clone();
    rp.iProg = st.nextToken();
    for(int j = 0; st.hasMoreTokens(); j++)
         args[j] = st.nextToken();
    rp.iArgs = args;
    Thread th = new Thread(rp);
    th.setName("prog" + i + "=" + program);
    th.start();
    System.out.println("prog" + i + "=" + program + ", started");
    catch(CloneNotSupportedException e)
    System.out.println("prog" + i + "=" + program + ", can't start");
    i++;
         System.out.println("end of main, activeCount=" + Thread.activeCount());
    // next step is to start all others one by one
    public void run()
    try
    Class c = Class.forName(iProg);
    Class p[] = new Class[1];
    p[0] = String[].class;
    Method m = c.getMethod("main", p);
    Object o[] = new Object[1];
    o[0] = iArgs;
    m.invoke(null, o);
    catch(ClassNotFoundException e)
    System.out.println(iProg + "ClassNotFoundException");
    catch(NoSuchMethodException e)
    System.out.println(iProg + "NoSuchMethodException");
    catch(InvocationTargetException e)
    System.out.println(iProg + "NoSuchMethodException");
    catch(IllegalAccessException e)
    System.out.println(iProg + "NoSuchMethodException");
    System.out.println(Thread.currentThread().getName() + ", ended");
    System.out.println("exit run, activeCount=" + Thread.activeCount());
    // setup SecurityManager to disable method System.exit()
    public RunProg()
         SecurityManager sm = new mySecurityManager();
         System.setSecurityManager(sm);
    // inner-class to disable method System.exit()
    protected class mySecurityManager extends SecurityManager
         public void checkExit(int status)
              super.checkExit(status);
              Thread.currentThread().stop();
              throw new SecurityException();
    * inner-class to analyze StringTokenizer. This class is enhanced to check double Quotation marks
    protected class StringTokenizer implements Enumeration
    private int currentPosition;
    private int maxPosition;
    private String str;
    private String delimiters;
    private boolean retTokens;
    * Constructs a string tokenizer for the specified string. All
    * characters in the <code>delim</code> argument are the delimiters
    * for separating tokens.
    * <p>
    * If the <code>returnTokens</code> flag is <code>true</code>, then
    * the delimiter characters are also returned as tokens. Each
    * delimiter is returned as a string of length one. If the flag is
    * <code>false</code>, the delimiter characters are skipped and only
    * serve as separators between tokens.
    * @param str a string to be parsed.
    * @param delim the delimiters.
    * @param returnTokens flag indicating whether to return the delimiters
    * as tokens.
    public StringTokenizer(String str, String delim, boolean returnTokens)
    currentPosition = 0;
    this.str = str;
    maxPosition = str.length();
    delimiters = delim;
    retTokens = returnTokens;
    * Constructs a string tokenizer for the specified string. The
    * characters in the <code>delim</code> argument are the delimiters
    * for separating tokens. Delimiter characters themselves will not
    * be treated as tokens.
    * @param str a string to be parsed.
    * @param delim the delimiters.
    public StringTokenizer(String str, String delim)
    this(str, delim, false);
    * Constructs a string tokenizer for the specified string. The
    * tokenizer uses the default delimiter set, which is
    * <code>"&#92;t&#92;n&#92;r&#92;f"</code>: the space character, the tab
    * character, the newline character, the carriage-return character,
    * and the form-feed character. Delimiter characters themselves will
    * not be treated as tokens.
    * @param str a string to be parsed.
    public StringTokenizer(String str)
    this(str, " \t\n\r\f", false);
    * Skips delimiters.
    protected void skipDelimiters()
    while(!retTokens &&
    (currentPosition < maxPosition) &&
    (delimiters.indexOf(str.charAt(currentPosition)) >= 0))
    currentPosition++;
    * Tests if there are more tokens available from this tokenizer's string.
    * If this method returns <tt>true</tt>, then a subsequent call to
    * <tt>nextToken</tt> with no argument will successfully return a token.
    * @return <code>true</code> if and only if there is at least one token
    * in the string after the current position; <code>false</code>
    * otherwise.
    public boolean hasMoreTokens()
    skipDelimiters();
    return(currentPosition < maxPosition);
    * Returns the next token from this string tokenizer.
    * @return the next token from this string tokenizer.
    * @exception NoSuchElementException if there are no more tokens in this
    * tokenizer's string.
    public String nextToken()
    skipDelimiters();
    if(currentPosition >= maxPosition)
    throw new NoSuchElementException();
    int start = currentPosition;
    boolean inQuotation = false;
    while((currentPosition < maxPosition) &&
    (delimiters.indexOf(str.charAt(currentPosition)) < 0 || inQuotation))
    if(str.charAt(currentPosition) == '"')
    inQuotation = !inQuotation;
    currentPosition++;
    if(retTokens && (start == currentPosition) &&
    (delimiters.indexOf(str.charAt(currentPosition)) >= 0))
    currentPosition++;
    String s = str.substring(start, currentPosition);
    if(s.charAt(0) == '"')
    s = s.substring(1);
    if(s.charAt(s.length() - 1) == '"')
    s = s.substring(0, s.length() - 1);
    return s;
    * Returns the next token in this string tokenizer's string. First,
    * the set of characters considered to be delimiters by this
    * <tt>StringTokenizer</tt> object is changed to be the characters in
    * the string <tt>delim</tt>. Then the next token in the string
    * after the current position is returned. The current position is
    * advanced beyond the recognized token. The new delimiter set
    * remains the default after this call.
    * @param delim the new delimiters.
    * @return the next token, after switching to the new delimiter set.
    * @exception NoSuchElementException if there are no more tokens in this
    * tokenizer's string.
    public String nextToken(String delim)
    delimiters = delim;
    return nextToken();
    * Returns the same value as the <code>hasMoreTokens</code>
    * method. It exists so that this class can implement the
    * <code>Enumeration</code> interface.
    * @return <code>true</code> if there are more tokens;
    * <code>false</code> otherwise.
    * @see java.util.Enumeration
    * @see java.util.StringTokenizer#hasMoreTokens()
    public boolean hasMoreElements()
    return hasMoreTokens();
    * Returns the same value as the <code>nextToken</code> method,
    * except that its declared return value is <code>Object</code> rather than
    * <code>String</code>. It exists so that this class can implement the
    * <code>Enumeration</code> interface.
    * @return the next token in the string.
    * @exception NoSuchElementException if there are no more tokens in this
    * tokenizer's string.
    * @see java.util.Enumeration
    * @see java.util.StringTokenizer#nextToken()
    public Object nextElement()
    return nextToken();
    * Calculates the number of times that this tokenizer's
    * <code>nextToken</code> method can be called before it generates an
    * exception. The current position is not advanced.
    * @return the number of tokens remaining in the string using the current
    * delimiter set.
    * @see java.util.StringTokenizer#nextToken()
    public int countTokens()
    int count = 0;
    int currpos = currentPosition;
    while(currpos < maxPosition)
    * This is just skipDelimiters(); but it does not affect
    * currentPosition.
    while(!retTokens &&
    (currpos < maxPosition) &&
    (delimiters.indexOf(str.charAt(currpos)) >= 0))
    currpos++;
    if(currpos >= maxPosition)
    break;
    int start = currpos;
    boolean inQuotation = false;
    while((currpos < maxPosition) &&
    (delimiters.indexOf(str.charAt(currpos)) < 0 || inQuotation))
    if(str.charAt(currpos) == '"')
    inQuotation = !inQuotation;
    currpos++;
    if(retTokens && (start == currpos) &&
    (delimiters.indexOf(str.charAt(currpos)) >= 0))
    currpos++;
    count++;
    return count;
    </pre>
    RunProg.properties like this:
    Prog1=GetEnv 47838 837489 892374 839274
    Prog0=GetEnv "djkfds dfkljsd" dsklfj

  • Running a Java App like a service in linux and not closing with window

    I know its not really a question i should ask you but thought you might have a quick answer for me, I have trying to running a small java application on one of the servers. I want it to run almost like a service, what i mean is i dont want the application to end when the terminal session is ended. So i thought i should put an entry into the /etc/rc.local file as follows (Final Line):
    cd /home/bluepoint/Teamselect_ServerApp_v1.0/bin/
    java Server
    #!/bin/sh
    # This script will be executed *after* all the other init scripts.
    # You can put your own initialization stuff in here if you don't
    # want to do the full Sys V style init stuff.
    touch /var/lock/subsys/local
    /home/bluepoint/kmyfirewall.sh
    su - bluepoint "/usr/local/tomcat/jakarta-tomcat-5.0.28/bin/startup.sh"
    cd /home/bluepoint/startme.sh
    As you will see it call a shell script which contains only the following lines (or see attached):cd /home/bluepoint/Teamselect_ServerApp_v1.0/bin/
    java Server
    but nothing happens when i restart the server. The DB, sendmail, tomcat etc start fine but not my app.
    The application works fine if i start it in a terminal window so i know it can run.
    Any ideas what im doing wrong??
    Kind Regards

    It's probably not happening because you missed the -c from the su command. However this isn't the correct approach to daemon processes on linux (which is what you're after).
    What you need to do is to place a script in the /etc/init.d directory. This script should take a single argument and start the daemon if the argument is "start", and stop it if "stop". Check out the scripts already in there to see how it's done.
    Then go to System Settings/Server settings/Services and enable the new service for the normal run level.

  • Running multiple java-apps in single JVM?

    We have about 125 Citrix clients running on 5 Citrix Servers. We are investigating a new very big development project which will cover about 10 main projects with 15 Applications each. The complete project will be written in Java.
    Basically, each module will have it's own JVM. BUt, when each client runs a couple of modules, the servers will surely run out of memory...
    I searched for way's to run different modules within 1 single JVM but it seems to be 'not done', because of 'System.exit()', 'Static Variable' probs to name only 2.
    Any idea's on how to implement this?
    thanks.

    thanks for the reply.
    Yes, I assume the server will run out of memory.
    1) Our citrix servers are consuming about 3/4th of their 4Gb memory capacity without any java_application running.
    2) Each of our 5 Citrix servers has 25 users active
    3) Each JVM takes about 20mb memory
    4) Each user will run at least 3 app's simultaneously
    Abouve results in 3*20=60Mb / user * 25= 1,5Gb memory extra needed.
    Can you give me an example of a Thread.sleep(60000) test_pgm?
    and/or an example for a "classloader" program to launch each app in its ow sandbox (in same JVM)?
    (eventually a link to get more info on this)
    thanks

  • What path to use to access network files from Java app running on Mac

    I have a Java app running on a Mac with OS X that I'm using to check for files that exists on Windows servers within our network.
    Using a path like /Volumes/<Share>/ works because I've already connected to the drive using Finder. If I try to use a fully qualify the path with "smb://<Server>/<Share>" then my app doesn't see anything. Is there any way that I can get Java to connect to a directory without first having mapped or made the connection via some external tool like Finder?
    Here's the code I'm testing with:
    package FileImports;
    import java.io.File;
    import java.util.Arrays;
    public class Dir {
    static int indentLevel = -1;
    static void listPath(File path) {
    File files[];
    indentLevel++;
    files = path.listFiles();
    if (!(files == null)){
    Arrays.sort(files);
    for (int i = 0, n = files.length; i < n; i++) {
    for (int indent = 0; indent < indentLevel; indent++) {
    System.out.print(" ");
    System.out.println(files.toString());
    if (files[i].isDirectory()) {
    listPath(files[i]);
    indentLevel--;
    } else System.out.println("Directory not accessible!");
    public static void main(String args[]) {
    // this path works where <share> = the directory where my files exist.
    listPath(new File("/Volumes/<share>"));
    // this path returns a null result in files
    // listPath(new File("smb://<Server>/<Share>/"));
    Thanks,
    Alex
    Edited by: agates on Sep 25, 2008 11:14 AM

    agates wrote:
    Thanks for the response. I'll have to dig a little deeper into JCIFS. It looks like it would work great windows to windows. I haven't been able to find in the documentation where it would work on OS X without having to mount the targeted file system first. Has anyone had success creating a connection to a windows file system from OS X with JCIFS?Since jCIFS is written in pure Java and implements the entire SMB/CIFS protocoll on it's own it doesn't require any support from the OS (apart from a normal JVM runnig). Thus it should work exactly the same in OS X and Windows (and Linux and Solaris and ...).

  • How I can get current path during a java app running?

    I want to know the running path of the java app is running.
    do me a favor

    Syestm.getProperty(String Key)
    The requires key somethig like "path", or "user.path", not sure. See Javadoc to find the key you need.
    Abraham

  • Proper way to exit with a j2ee java app running in the NW70 j2ee engine

    Hello,
    I am working on migrating an app and it's ear from j2ee 6.20 to 7.0. It deploys okay, but when invoked, the j2ee server restarts. Looking at the part that fails, its trying to create a jco connection, which fails and then it catches the failure and does a stack dump and a System.exit(1). It shuts down and restarts at that point. Is System.exit(1) the proper way to exit a java app that is running within the j2ee engine? If it is, is it possible I am picking up the wrong System.exit and need to use an SAP specific one? I inherited the code, but not the IDE it was written with.
    Thanks,
    Paul D. Chamberlain

    Hi,
    Answered my own question. System.exit(1) should not be used. Return works.
    Paul D. Chamberlain

  • What is needed as a minimum to run Java apps?

    Hello,
    I'm running Windows 2000 Pro on a home computer and want to conserve disk space. There seem to be a lot of duplicate files in Java directories on my system. I only want to be able to run Java apps - no development or deployment. What is the minimum installation required to just run apps?
    I currently have J2SE Runtime Environment installed.
    Thanks in advance,
    Kudzuken

    I could get all technical and fancy on you, tell you about jre's that can run on palm pilots and such, but nevermind that stuff.
    The answer is that the java 2 runtime environment is all you need
    Be careful about moving and deleting files tho
    Hello,
    I'm running Windows 2000 Pro on a home computer and
    want to conserve disk space. There seem to be a
    lot of duplicate files in Java directories on my
    system. I only want to be able to run Java apps -
    no development or deployment. What is the minimum
    installation required to just run apps?
    I currently have J2SE Runtime Environment installed.
    Thanks in advance,
    Kudzuken

Maybe you are looking for