Property Loader won't Import ConditionExpr (Loop Conditions)

Hello,
I'm finishing up a project that automatically builds and distributes my test sequences.  It uses the property loader at runtime to get the actual step parameters.  Everything is working well, and my process is fully automated, but it can't seem to import the ConditionExpr property (conditions for loops).  I have about 20 other properties that all import fine, but I can't do anything with timing and if I try, I get stuck in an infinite loop.
I've attached a dummy sequence file and the corresponding CSV.  The step names are weird, but that's just because of how our database for result files works.  Each of the tests is just getting the current time, looping until the duration specified has passed, and then comparing.  Pointless test but it demonstrates the problem.
My tests build dynamically, so there are common step types - each step is defaulted to a common version - they get updated from the property loader.  Any insight would be extremely helpful.
Thanks,
Bryan
Solved!
Go to Solution.
Attachments:
TTIM.csv ‏12 KB
TTIM.seq ‏69 KB

Hello Bryan,
I think I have found out what is happening. I looked at your properties file in Notepad and noticed that the FileGlobals.Duration < 5 did not have quotes around it. This causes TestStand to evaluate the expression when it is being imported which causes it to be set to true. If it has quotes around it, TestStand will still evaluate it, but it does so by removing the quotes and then putting the expression in the While loop. I am not sure what caused the file to be exported this way. I was hoping you could walk me through the steps you did to export the file so we can try and see what might have gone wrong. Also what version of TestStand are you using?
When I exported the properties I went through these steps:
1. Go to Tools»Import/Export Properties
2. Selected the destination for my file and the format
3. Went to the Properties Tab and exported all of the properties
4. Pressed Export
A workaround you can use right now is to go into your properties files and manually put quotes around the expressions for the While Loop. Look forward to your response and have a great day!
Best Regards,
Adam G 
National Instruments
Applications Engineer

Similar Messages

  • Property Loader won't Load FileGlobal variable values

    What am I doing wrong here?
    I've Exported three FileGlobal string variables into a tab delimited TEXT file and then cleared out the Values (values="") . The contents of that file is:
    Variable Value
    Variable Value
    FilteredInputValueTag "tag_AI_ENGINEERING_VALUE_FILTERED"
    FullDefaultTag "tag_SYS_FACTORY_DEFAULT"
    OutputValueTag "tag_SYS_OUTPUT_VALUE"
    Variable Value
    If I manually IMPORT the file, it works OK, and tells me that it has imported 3 Variables.
    However, I can't get the values to Import using the Property Loader at Runtime (Context of the FileGlobals remain at blank -""). I DO have the correct Path & Filename set (if I change one charact
    er and it gives me an Error Box.)
    Mike

    Hi Mike,
    I have attached a small TS2.0.1 example which I hope will help you sort your problem.
    Regards
    Ray Farmer
    Regards
    Ray Farmer
    Attachments:
    FileGlobalsExample.seq ‏31 KB
    FileGlobalsExample.txt ‏1 KB

  • Property loading an empty array

    I have an array that I want to initialize from text file using a property loader step.  I want the number of elements of the initialized array to be equal to the number of elements in  the array in the text file.  I tried to accomplish this by defining the TestStand array empty and importing all properties from the text file.  This resulted in an error message for each property in the array - here's a snippet of the error messages:
    Error evaluating expression:FileGlobals.Arinc629.Limits.Label[0].Address = (0xE90)
    Property does not exist.
    The text file I'm loading the properties from is attached.  The properties are loaded successfully if I define the TestStand array with a size bigger or equal to the number of elements in the text file.  But I want to have the text file to dictate how many elements are in the TestStand array.  Is there a good way to do that?
    Thanks,
    Hans
    Message Edited by hans17 on 11-05-2008 06:28 PM

    Hans,
    What version of TestStand are you using?
    Starting with TestStand 3.1 you can import/export arrays and containers as XML strings.
    If
    you want to be able to set the array bounds in the text file all you
    have to do is to modify the LBound and HBound attributes in the
    corresponding XML Prop tag and add the Value tags corresponding to the
    elements you want to add.
    For example.
    Let's assume I have an numeric array local variable named MyArray (Locals.MyArray).
    The first thing I would do is to use the Import/Export Properties tool to generate my text file.
    1. Make sure that the Locals.MyArray variable is not empty (In my case Lower Bound =0 and Upper Bound= 9)
    2.  Go to Tools>>Import/Export Properties
    3. Go to the Source/Destination tab and  specify your text file location
    4.  Go to the properties tab and add Locals.MyArray to the selected properties list
    5. Click the Export  button
    6. Open your text file and verify it looks as follows:
    <Step Name>
    <Locals>    Variable Value
    MyArray   
    <Prop Name='MyArray' Type='Array' LBound='[0]' HBound='[9]'
    ElementType='Number'><Value ID='[0]'>0</Value><Value
    ID='[1]'>0</Value><Value
    ID='[2]'>0</Value><Value
    ID='[3]'>0</Value><Value
    ID='[4]'>0</Value><Value
    ID='[5]'>0</Value><Value
    ID='[6]'>0</Value><Value
    ID='[7]'>0</Value><Value
    ID='[8]'>0</Value><Value
    ID='[9]'>0</Value></Prop>
    <FileGlobals>    Variable Value
    <StationGlobals>    Variable Value
    7. In my case I only exported the Locals.MyArray variable
    8. Notice that the Value of the Locals.MyArray variable is a XML string that contains a Value tag for each element in the array.
    9. 
    If I want to change the number of elements in the array next time I
    import the text file, I only have tp modify the LBound and HBound
    attributes and add or remove the value tags for the array elements.
    10.
    Let's say that I want my array to have only one element, then I need to
    set the value of HBound to 0 and get rid of the Value tags
    corresponding to the rest of the elements.
     <Step Name>
    <Locals>    Variable Value
    MyArray  
     <Prop Name='MyArray' Type='Array' LBound='[0]' HBound='[0]'
    ElementType='Number'><Value
    ID='[0]'>0</Value></Prop>
    <FileGlobals>    Variable Value
    <StationGlobals>    Variable Value
    11.  Modify your text file and use the Import/Export Properties tool or the property loader step to import the text file
    12 . Verify that the array bounds are modified
    You could use this technique to initialize an empty array using the property loader.
    Hope it helps.
     Regards.

  • Importing an array of containers with Property Loader

    Hi,
    I'm using TestStand 2.0 and am having trouble importing arrays of containers using the property loader... The first array element is copied in ok but the subsequent ones do not (all values are 0).
    I'm sure I'm looping through the array ok as I can load in simple arrays of numbers. I only see this problem with arrays of containers.
    Is there anything I may have overlooked?

    Hi,
    The trouble with importing arrays with the property loader is you have to specify each elements of the array individually.
    I have attached an example which I hope helps.
    Regards
    Ray Farmer
    Regards
    Ray Farmer
    Attachments:
    LoadContainerArray.seq ‏22 KB
    LoadContainerArray.txt ‏1 KB

  • Error while importing a big array with thr property loader

    Hello,
    the following problems occure: when I want to import a *.txt file with a array of more than arround 3300 members with the property loader, the following error meassage occures:
    property loader step failed to import or export properties
    x property values were found
    x-1 property values were imported from y rows
    Error code: -18, user defined error code.
    how can I solve this problem?
    I think sizes of arrays are limited somewhere in the source code of the property loader. is it possible to increase this size? And how?
    regards samuel

    Could you attach an example of your .txt file and your sequence?

  • How do I get my music from Media center to my iphone. Itunes won't import the MC music library, and MC won't recognize and synch to the iphone so I can't load playlists from MC to my iphone. Itunes help doesn't work.

    How do I get my music from Media Center to my iphone 4s. Itunes 10.5 won't import the MC music library, and MC won't recognize and synch to the iphone plugged into the USB port so I can't load playlists from MC to my iphone. Itunes help doesn't work.

    Hello and welcome to the support community
    As you know, your iPhone 5 is not compatible with our iBook G4. To get your music in iTunes from your iBook to your iPhone you would need to migrate the music files to a newer intel based Mac. A Mac which has Mac OS X 10.6 or higher installed. Then sync your iPhone 5.

  • IPhoto won't load albums or import

    When I open iPhoto it says loading pictures but they never load. It just continues. I've moved all the images to the desktop and tried importing them but it keeps giving me a message saying that is can't recognise some of the data even though the images were working for months.
    Pictures won't import from my camera either and it never had a problem previously (it's a Concord 4060AF)

    First here are two Apple KB documents that you should be aware of, particularly the second one:
    iPhoto Library Description
    Don't tamper with files in the iPhoto Library folder from the Finder
    How did you move those files to the desktop? Did you move the entire iPhoto library folder to the desktop, relaunch iPhoto and then drag that old library folder into the open iPhoto window? If that's what you did, you're getting all of the original files, edited files and thumbnail files imported as normal files and the files that you're getting the message about are non image files.
    What you want to do is
    1 - move any iPhoto library folder out of the pictures folder. If your original iPhoto Library folder is on the desktop then trash the one currently in the Pictures folder.
    2 - launch iPhoto and create a new library.
    3 - using the File->Add to Library menu option, select your original iPhoto Library folder and start the import process that way.
    You should now get only the original files and the edited files, no thumbnail files. Also you may retain some roll organization. When you're satisfied that you have all your photos in the new library you can trash the old one.
    For the record, did you do any moving of files within your original library folder before this happen or run any software updates just before?
    OT

  • Property loader in .csv Format : Error with list of Numbers

    Hi,
    I need to change property files from the .xls format to the .csv format so that I won't need to install Ms Office on the Test Station PC.
    Everything works is .csv format except for variales containing lists of numbers.  Here is an example.
    This variable contains the channel list to send to a Digital Multimeter.  A string containing all channel numbers seperated by comas (The DMM model is Agilent  34070A). 
    I create a variable named ChannelList of type string containing : "101,102,103,104,105"
    When exporting to property file (Using Tools-Import/Export properties), TestStand will write the following line is .csv format :
    ChannelList,"101,102,103,104,105"
    When trying to import this property value with a property loader I get the following error :
    Runtime Error Occured
    Error evaluating expression:Runstate.Sequence.locals.ChannelList = (""101")
    Unexpected Token: 101
    What puzzles me is that teststand is not even capable of reading its own exported property within a newly created file.
    Any ideas?
    TestStand 2013
    Thanks in advance
    Nien

    Nien,
    This is a known issue and we are looking into this issue in future version of TestStand.
    There are couple of approaches for fixing the problem:
    1. Use a different character for comma in the property loader file. After importing the data, replace the character with comma using TestStand expression in the sequence file.
    2. Use Tab Delimited Text format instead of CSV format.
    3. We can see that, property loader is using expression to update the value of the property (The exact expression is specified in the error message you have posted). In a text editor, update the csv file to have the value as
    ChannelList,101""+Chr(44)+""102""+Chr(44)+""103""+Chr(44)+""104""+Chr(44)+""105
    This will create the expression such that, the value of ChannelList property will become 101,102,103,104,105
    Note: This is just a workaround and you should use this approach with caution.
    Thanks,
    Shashidhar

  • Property loader error

    I have created a test for 50 measurements. This requires the property loader to read:
    1 off StationGlobals.CurrentTestName
    1 off StationGlobals.FailTarget
    1 off StationGlobals.PassTarget
    1 off Step.Comp
    1 off Step.Limits.High
    1 off Step.Limits.Low
    Array 0f [0] to [49] of:
    Step.Result.Measurement[*].Comp
    Step.Result.Measurement[*].Limits.High
    Step.Result.Measurement[*].Limits.Low
    To test this a single block program was written. The above was entered into the property loader step. All variables pointing to the reference files and the file start and stop label are set up by local variables. The limits file was manual altered and trial values entered.
    The program ran and loaded all limits successfully.
    I have a large program under development that I could not get this function to work in. I copied the property loader step and limits string from the working files into the larger program. I have checked the correct variables are being passed to the property loader for the limits source file name and the Data Start and End Markers. Everything looks fine but when I run the program I get an error message saying:
    Sequence File: 1065-32911_Block09_RDVS.seq
    Property loader step failed to import or export properties.
    153 property value(s) were found.
    3 property value(s) were imported from 6 row(s) of data
    I even tried copying the complete performance test across and the whole of the limits section for that performance test too. It still won’t work.
    Also, what does the error message
    3 property value(s) were imported from 6 row(s) of data
    actually mean anyway?
    I've attached a text file with the individual linits test text.
    Attachments:
    Multilim.txt ‏6 KB

    BrianM,
    It seems that the properties does not exist in your current context.
    'Rows of data' means the number of lines in your text file within the data markers.
    Is the error message you are providing complete?
    Did you copy the message from the Run-Time error dialog?.
    Make sure you have the same steps you had originally and that the steps contains tha same properties (measurements).
    In this case you should aways have a step called 'Test Multiple Numeric' containing 50 measurements.
    It is very importatnt that the step name is the same.
    It seems to me that the step is only being able to import the station globals.
    You can verify it by ignoring the error and checking the station globals values after the step executes.
    Hope it helps.
    If you have any question let me know.
    Antonio Lie.
    Message Edited by Antonio Lie (NI) on 04-12-2006 12:46 PM

  • How to use the property-loader?

    Hello,
    i´m using TS 3.5 and LV 8.0. Now i also want to use the built-in property-loader from Teststand.
    Is there somewhere a documentation for "beginners" how to use this property-loader? At the end i want to read parameters from an ascii-file which updates my input-parameters of the steps in the current-sequence.
    I know how to read and change parameters from teststand in labview via active-x, but i have no idea how to use this propertyloader-thing.
    Is there an easy help file somewhere in the net ( I havent found one yet)?
    Thanks for your help.

    Meanwhile i can use the propertyloader for Limits and Variables which are in a container of the teststep. What not worked was:
    1.) setting the properties of a "Messagebox". For example the property "Button1Label". Why is this not working?
    2.) The second thing what is not clear: Do i need for each sequence an own property-loader? I tested it with a sequence with one subsequence. Does the subsequence needs its own property-loader?
    Currently the import-csv-file looks like this:
    Start Marker,,,
    <Step Name>,Limits.Low,Limits.High,Cont.Voltage
    TestStep_1,1,2,4
    TestStep_2,8,16,32
    End Marker,,,
    When Teststep_1 and Teststep_2 are both in mainsequence then it works. When i copy Teststep_2 in a subsequence then i get an error (-18).
    Any ideas about my two questions?
    Thanks

  • How can I add a new vaiable to the file loaded by Property Loader without changing my script

    I have an input file to my script that I load via Property Loader. The number of parameters in the input file may change from test to test.. Is it possible in some way to add a new parameter without changing the sequence file?
    Is there for example a way to make the Property loader read parameters until end of file, and put the parameter into a temporary variable in my script?
    Hope there is a way to resolve this.
    Cheers
    Claus Christophersen

    Claus,
    The solution you have is a valid one.
    Basically you have a variable (global or local) and you import the expected parameter to this variable before you pass it to the hardware.
    You use that variable as the input parameter you pass to your hardware of course.
    You have to modify your source file depending on the test type you want to execute every time you want to change the test type though.
    Another solution would be to use Data Markers in your file to separate the variable values corresponding to each test type.
    Check the example I am attaching.
    At the beginning I prompt the user for the Test Type (Type I or Type II).
    Based on the type, I import the corresponding variables from the source file using Data Markers.
    If you have questions let me know.
    Attachments:
    SourceFile.zip ‏8 KB

  • Premiere CC won't import AAC audio

    I'm trying to loop two videos together in Premiere Pro CC 2014.1. One of the videos won't import the audio, just the video track. The audio is in AAC format, the video is a MPEG-4 movie with H.264 format. Every other video I've tried imports as usual, but for some reason the audio drops off on this one. The video plays just fine in Quicktime with the audio track. When I import it, the audio track drops off and only the video track shows up.
    I didn't create the video, so I don't have access to the original working files. Anyone know any workarounds or fixes for this?
    Thanks!

    Hi Neila,
    Neila@IPSUMM wrote:
    Thanks for responding, but I work for a very small company and since I'm the only one who needs CC, I have the personal version installed.
    Also this appears to be a blanket issue with all audio and video file formats, thus not likely a codec issue since the files I've tried so far should be covered by premiere's compatibility, the even play in windows media player with no issue.
    Video itself plays fine, but any audio attached to a video, or just plain audio files will not import no matter what I try.
    Sorry my info didn't help.
    Two things to try.
    Create a brand new project and test if you can import the problematic files.
    If that does not work, change the name of the folder that contains your media files. Then try to import.
    Let us know what happens.
    Thanks,
    Kevin

  • How to apply Property Loader to all sequences in the Sequence File?

    HI,
    I'm following the help instructions for the Property Loader and it states....
    Use Current Sequence File—Selects the file where the step is located.
    Sequence—Specifies the name of the sequence into which to import variables and properties. The specified sequence must exist in the specified sequence file. Select the <ALL SEQUENCES> tag from the drop-down list to instruct TestStand to import variables and properties for all of the sequences in the specified sequence file. You must specify a valid sequence name for the step to work properly.
    In my specific sequence file I added the Callbacks:  SequenceFileLoad, SequenceFileUnload, PreUUT. In addition to that, my MainSequence is calling 2 subsequences.
    I put the propertyLoader step (setting few values of the SequenceFileGlobals) in the setup section of the SequenceFileLoad, checked the 'Use Current Sequence File' and selected ALL SEQUENCES tag in the 'Sequence' option.  I verified that it does what I wanted.  Then, is it entered the PreUUT subsequnce, the values returned to the "original" values.
    Is that a bug?
    If not, how do I use the PropertyLoader in a sequenceFile that include several subsequences as well as Callback sequences.
    Thanks
    Rafi

    Ooops, sorry about that...
    I forgot to mention....it is TS 3.5.
    As per your questions-- yes they all in the same sequence file. 
         mySeqFile.seq
               SequenceFileLoad
               SdequnceFileUnload
               PreUUT
               Seq1
               Seq2
    AS I said....I put the property loader in the setup of the SequenceFileLoad,  I see that it works properly in that subsequence.  Then, after the SuequenceFileLoad is finished, I do Ctl+F5 for Test UUT's.  I put a breakpoint in the first step of the preUUT subsequence and check the context.  I notice that the variables in the FileGlobals to whom the property loader writes, have been changed back to the original values.
    I'll try to create a simple program to duplicate it but it may take me time as this test station is very busy.
    Thanks
    Rafi

  • Help with a while loop condition

    I'm trying to write to a File. I ask the user for input, then I enter a while loop and test the condition. The loop works, but it won't stop. I've tried everything. Here is my code please help!!
    thanks
    inputline = keyboard.readLine();//read the keyboard
    try{
    while( inputline != null ){
    DiskOut.println( inputline );
    DiskOut.flush();
    inputline = keyboard.readLine();//read the keyboard again
    }//end while
    }//end try
    catch (IOException e) { 
    e.printStackTrace();
    }//end catch
    also i've tried these while loop conditions:
    while(inputline != "\n" || inputline != "\r") and the sort

    while(inputline != "\n" || inputline != "\r")The condition
    X!=Y OR X!=Z (given Y != Z)
    is always true. X will always not be equal to at least one of the values. So you'll want to use:
    while(!inputline.equals("\n") && !inputline.equals("\r"))In other words, "while inputline is not equal to either of them". Note the use of && instead of ||.
    If "keyboard" is simply a BufferedReader on top of System.in (and not your own class), the trailing line feeds and carriage returns won't even be in the string returned by readLine(). Your best bet is this:
    while(null != inputline && 0 != inputline.length())Make sure you type the two parts of that AND condition in the order above. If for whatever reason there are trailing \r and \n on the strings, you'll want to accomodate for platforms that may include both characters.
    // trim the trailing newline characters
    while(inputline.endsWith("\r") ||
          inputline.endsWith("\n")) {
       inputline = inputline.substring(0,inputline.length()-1);
    // or maybe this will work if you don't mind losing
    //  the whitespace at the beginning of the string:
    inputline = inputline.trim();Hope that helps somewhat.

  • Endless loop condition

    Hi there,
    Working on a client/server chat application. On the client side app, everytime I want to send a message I create a new Thread called "SendingThread". See below.
    import java.io.*;
    import java.net.*;
    public class SendingThread extends Thread
      private Socket clientSocket;
      private String messageToSend;
      public SendingThread(Socket socket, String userName, String message)
           super("SendingThread: " + socket);
           clientSocket = socket;
           messageToSend = userName + Constants.MESSAGE_SEPERATOR + message;
      public void run()
           try
                PrintWriter writer = new PrintWriter(clientSocket.getOutputStream());
                writer.println(messageToSend);
                writer.flush();
                writer.close();
           catch(IOException ioe)
                System.out.println("Server must have closed connection");
                ioe.printStackTrace();
    }As you can see the line writer.close() is important in regard to a Thread that is running on the server app called "ReceivingThread" (see below). In the ReceivingThread there is a line:
    if((temp = input.readLine()) != null)
    It blocks until I actually send a message to read in. This is expected. However, now I have a catch 22 situation. On the client side app, since I called writer.close(), this was necessary in order to get a null value during the readLine() call on the ReceivingThread on the server. The one line gets processed as expected. The stream is now closed and on the server side app, since this is true, the next iteration of the while loop attempts to read in another line but now it is alway null and thus I wind up with an endless loop condition. I introduced a "count" variable and a condition only so that the loop wouldn't get away too far. I was hoping it would block again, but it isn't. I believe the ReceivingThread is written correctly, but I need to somehow obtain a null value on the stream for message completion and also have the ReceivingThread block for the next message coming in.
    Please advise,
    Alan
    public class ReceivingThread extends Thread
      private BufferedReader input;
      private MessageListener messageListener;
      private boolean keepListening = true;
      public ReceivingThread(MessageListener listener, Socket clientSocket)
           super("ReceivingThread: " + clientSocket);
           messageListener = listener;
           try
                clientSocket.setSoTimeout(50000);
                input = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
           catch(IOException ioe){ioe.printStackTrace();}
      public void run()
           StringBuffer messageBuffer = new StringBuffer();
           String temp = "";
           int messageCount = 0;
           int count = 0;
             //START:
             while(keepListening)
               while(true)
                  try
                    //In order to receive a null, the client app
                    //has to close the stream!  Otherwise, this
                    //will block indefinitely.
                    System.out.println("blocking...");
                    if((temp = input.readLine()) != null)
                       if(messageCount == 0)
                            messageBuffer.append(temp);
                            messageCount++;
                            System.out.println("temp: " + temp);
                       else
                         //When we use the readLine method, it strips
                         //off the newline character, so we need to
                         //put it back.
                         messageBuffer.append("\n" + temp);
                         System.out.println("temp: " + temp);
                    else
                         break;
                  catch(IOException ioe)
                       System.out.println("IOException...");
                       ioe.printStackTrace();
                       //break;
               }//end while
                //System.out.println("out of inner while loop...message:\n" + messageBuffer.toString());
                String message = messageBuffer.toString();
                System.out.println("message: " + message);
                StringTokenizer tokenizer = new StringTokenizer(message, Constants.MESSAGE_SEPERATOR);
                if(tokenizer.countTokens() == 2)
                     System.out.println("message received");
                     messageListener.messageReceived(tokenizer.nextToken(), tokenizer.nextToken());
                     //reset string variables
                     messageCount = 0;
                     temp = "";
                     messageBuffer.delete(0, messageBuffer.length());
                     message = "";
                else
                    //System.out.println("checking disconnect string: " + message);
                   if(message.equalsIgnoreCase(Constants.MESSAGE_SEPERATOR + Constants.DISCONNECT_STRING))
                          stopListening();
                count++;
                if(count > 3)break;
             }//end while
             try
               //System.out.println("closing ReceivingThread");
               input.close();        
             catch(IOException ioe){ioe.printStackTrace();}
      public void stopListening()
           keepListening = false;
    }Edited by: ashiers on Nov 21, 2007 7:33 AM
    Edited by: ashiers on Nov 21, 2007 7:34 AM

    I'm not quite sure what you want to happen here. Here is what I would expect from the code you posted:
    *1.* The client connects and sends its message to the server.
    *2.* The server iterates through the line-reading loop until it exhausts the input (input.readLine() == null) and breaks out of the while (true) loop. The "temp: foo" messages are written to standard output accordingly.
    *3.* The server reaches the message portion of the loop and writes the "message: foo" to standard output.
    *4.* The server hits the end of the "while (keepListening)" loop and (assuming that you didn't receive a disconnect message) keepListening is still true. So it loops back around.
    *5.* The first time through the while (true) loop, the input is still empty (of course). So you get a null.
    *6.* Next, you get a "message: foo" output.
    *7.* Repeat *4* through *6* until your computer hardware fails or you abort the program. (Except that you added that count thing, so it'll loop three times and then break.)
    What are you trying to make the "keepListening" loop do? It doesn't seem like it should be there at all. At no point does this reading thread get the opportunity to read from any other socket. It almost seems like you want to spawn one ReceivingThread for each Socket you receive from the ServerSocket; if that's the case, the main thread (or whichever thread you have running that code and spawning the ReceivingThreads should be inside of the while (keepListening) loop.
    Any help?

Maybe you are looking for

  • Socket threads problem after SOA installation

    Hi all, I am getting below error after sending request to the server(after weblogic and SOA servers started properly. <Warning><Socket>'There are: '5' active sockets, but the maximum number of socket readers allowed by the configuration is: '4', you

  • Wireless backup possible?

    Is there a way to wirelessly backup files? I'm opening a new office and have 4 terminals and need to have their data backed up and would like to do so wirelessly...is this possible?

  • Buying iPod touch 2g - have 6 questions

    Tomorrow most likely. The 16gb. $280 ($20 off at Wal-Mart 8-) Don't really care about the rumored iPod Touch 3rd gen; as the 2nd gen will be able to download the 3.0 software. I wouldn't use the camera anyways as it would probably only be 4 megapixel

  • PGP encryption and decryption in soa suite

    Hi, We have a requriement where bpel process plays the role of encrypting a file using PGP encryption and then it has to be placed onto a SFTP server using an FTP adapter. We would like to know if this can be done using an owsm policy or a seperate j

  • Format of the Random Questions

    Hi - I'm creating random quizzes. When I review the pool questions the format is terrible. The answers aren't in a line and are displayed all over the bottom half of the slide. Is there a way to get the display to be more consistent or do I have to m