Help with Application Module

I have created 3 application modules
am1, am2, am3.
am2, am3 are nested in am1
Now on trying to access application module instance am2 or am3 in a custom static method in am1 throws this error:
Exception in thread "main" oracle.jbo.InvalidOwnerException: JBO-25301: Application module is not a root app module but has no parent
     at oracle.jbo.server.ComponentObjectImpl.getRootApplicationModule(ComponentObjectImpl.java:168)
     at oracle.jbo.server.ApplicationModuleImpl.findApplicationModule(ApplicationModuleImpl.java:1295)
     at
the code is as below incase needed:
public class AppModule1Impl
extends ApplicationModuleImpl
/**This is the default constructor (do not remove)
public AppModule1Impl()
/**Sample main for debugging Business Components code using the tester.
public static void main(String[] args)
//launchTester("sni.pricing", /* package name */
// "AppModule1Local" /* Configuration Name */);
AppModule1Impl am=new AppModule1Impl();
AppModule2Impl m2=(AppModule2Impl)am.getAppModule2();
AppModule3Impl m3=(AppModule3Impl)am.getAppModule3();
/**Container's getter for AppModule2
public ApplicationModuleImpl getAppModule2()
return (ApplicationModuleImpl) findApplicationModule("AppModule2");
/**Container's getter for AppModule3
public ApplicationModuleImpl getAppModule3()
return (ApplicationModuleImpl) findApplicationModule("AppModule3");
Message was edited by:
Naga Kalyan

You can't just instantiate an application module with new AppModuleImpl(). You have to set up an application module in a context. Therefor you have to create an root application module which set up all other stuff for the framework.
The easiest way to set things up is to build an JUnit test case (Business Components Test Suit or Business Components Test Fixture). This will create the fixture class which handles the creation of the root application module and some code how to use it.
Timo

Similar Messages

  • Table QBE-Filter BUG in combination with Application Module Pooling ?

    Hi,
    i use JDEVADF_11.1.1.1.0_GENERIC_090615.0017.5407, Java 1.6.0_14, ADF BC and ADF Faces.
    I have one View Object, one Page with a panelCollection and a table with option filtering (create via drag-and-drop from datacontrol).
    When I disable the application module pooling on the AM configuration and run the application, i can execute the query-by-example filter, but when I delete the filterCriteria and press enter (requerry for select all) the table shows the old data.
    Image for setting on application module:
    http://img265.imageshack.us/img265/1374/filterdoesnotwork1.png
    Image for execute querry and requerry for "all rows" (deleted filterCriteria)
    http://img140.imageshack.us/img140/1963/filterdoesnotwork2.png
    When I enable application module pooling all works fine. Is this a issue?
    kind regards

    Hi Frank,
    if I filter for employees which firstname starts with "D" and then for employees with "F" --> i see "No data to display.".
    So uncheck "Enable Application Module Pooling" on application module doesn't work with QBE-Filter ?
    I can send a testcase but it is so simple you can create it with jdeveloper in 2 minutes ;)
    Martin

  • Need help with the Modulation Toolkit to configure a QPSK Modulation

    Hi! I'm
    trying to build a CDMA system with the Modulation Toolkit to use it later with
    a PXI-RF Product as a part of my thesis (I don't remember the exact model
    number because it's in my university and I'm home right now, sorry). But my problem right now is, I assume, a very simple one.
    I'm having
    some trouble understanding the MT Modulate PSK.vi and the MT
    Demodulate PSK.vi since I have them both connected and the output bit stream is
    not the same as the input bit stream. I'm guessing it's a problem with the sync
    parameters in the MT Generate Synchronization Parameter.vi because maybe I
    don't really understand how the sync bits work. I tried using a simple
    sync header but the output bit stream is always shorter than the input and shows
    only a little portion of the input bit stream and some of the 1's I used to
    create the sync header, and it gets worse when I increase the number of input
    bits.
    I'm
    attaching the simple vi I created to try to understand the mod-demod vi's, so
    if someone knows what I'm doing wrong it would be great if you let me know
    since I'm stuck in my thesis and understanding this issue will let me continue
    with the project.
    Thanks a
    lot in advance!
    Daniel
    Attachments:
    QPSK Test V-1.0.vi ‏31 KB

    Por favor mire en enlace abajo:
    Cordiales Saludos
    http://forums.ni.com/ni/board/message?board.id=6170&message.id=11549&jump=true
    Luciano Borges
    National Instruments Brazil
    Luciano Borges
    R&D Engineer
    Pirelli Brazil

  • Moving to CF10, Need help with Application.cfc

    I've been googling about how to work with Application.cfc since last week but I still have some questions and I can't find the answers.
    My application is under the root (in unix) and there are many subfolders underneath it. Each sub-folder is hosting a different web application.
    From what I read, I can create 1 root Application.cfc and then on subsequent sub-folder, when I need to have another Application.cfc on that level, I can create ProxyApplication (see below) and then create a sub-folder level Applicatin.cfc
    So, when I set an application.DSN on my root Application.cfc, using proxyApplication I don't have to reset this dsn again in my sub folder level Application.cfc
    Since my loginform.cfm and loginaction.cfm is right under root directory too,  I also set OnsessionStart in the root Application.cfc to handle user login. Then this means, I don't have to reset session variable again anywhere because session.username, etc has been set on the highest level.
    Is this correct?
    In addition, Am I correct when I do the following:
    1. Since I have root level and sub-folder level Application.cfc, I should set this.name with a different name, am I right?
        On the root Application.cfc I set this.name = "StudentServices" because this represent the global application
        On the sub-folder level's Application.cfc, I set this.name to "StudentServices_stdLoad" becaus this sub-folder only handle student load application.
    2. On the root Application.cfc, I set the DSN to the application scope. So on the sub-folder level Application.cfc I can check if a particular db is working or not
        because as awhole, in the global sense, this web application uses more than one Databases. Each sub-folder may use a database that is dfferent than the other sub folder.
    Am I doing the right thing? Please advice
    Below is example of what I have, Thank you!
    I created a root Application.cfc under the root directory: 
    <CFCOMPONENT displayname="Application" output="true" hint="My Root Application component">
       <!--- Set up the application --->    <cfset THIS.Name = "StudentServices" />    <cfset THIS.ApplicationTimeout = CreateTimeSpan(0,0,30,0) />    <cfset THIS.SessionManagement = true />    <cfset THIS.SetClientCookies = false />
           <cffunction name="OnApplicationStart" access="public" returntype="boolean" output="false">
       <cfset application.MainDSN = "DSN1">
       <cfset application.ReportDSN = "DSN2">
       <cfreturn true/>
    </cffunction>
     <cffunction name="onApplicationEnd" output="false">
         <cfargument name="applicationScope" required="true">  </cffunction>
     <cffunction name="onSessionEnd">
    </CFCOMPONENT>
    Then, in this root directory I also created a ProxyApplication:
     <!--- it's empty and it Serves merely to create an alias for your root /Application.cfc --->
     <cfcomponent name="ApplicationProxy" extends="AdvancementServices.Application"> 
    </cfcomponent>
    Then in the Sub-Directory, I can create a sub-folder level Application.cfc extending the root Application.cfc:
     <CFCOMPONENT displayname="Application" extends="ApplicationProxy">
        <!--- Set up the sub-folder application --->
        <cfset THIS.Name = "StudentServices_stdLoad"/> 
        <cfset THIS.ApplicationTimeout = CreateTimeSpan(0,0,30,0) /> 
        <cfset THIS.SessionManagement = true/> 
        <cfset THIS.SetClientCookies = false/> 
        <cffunction name="OnApplicationStart" access="public" returntype="boolean" output="false">
           <!--- ****** Testing whether the ADVUPGRD is accessible by selecting some data.****** --->
           <cftry>
           <cfquery name="TestMain_DSN" datasource="#application.MainDSN#" maxrows="2">
             SELECT Count(*)          FROM MyTable
           </cfquery>
             <!--- If we get a database error, report an error to the user, log the error information, and do not start the application. --->
            <cfcatch type="database">
              <cflog file="#this.name#" type="error" text="Main DSN is not available. message: #cfcatch.message# Detail: #cfcatch.detail# Native Error: #cfcatch.NativeErrorCode#" >
             <cfthrow message="This application encountered an error when connecting to the Main Database. Please contact support." />
             <cfreturn false>
           </cfcatch>
         </cftry>
         <cflog file="#this.name#" type="Information" text="Application #this.name# Started">
         <cfreturn true/>
       </cffunction>
    </CFCOMPONENT>
        <cfargument name = "SessionScope" required=true/>     <cfargument name = "AppScope" required=true/>
    </cffunction>
    <cffunction name="OnSessionStart" access="public" returntype="void" output="false"> 
      <CFSET session.UserGroup = ""/> 
      <CFSET session.UserName = ""/> 
      <CFSET session.currentPage = ""/> 
      <CFSET session.loggedin = "No"/> 
      <CFSET session.userrights = ""/>
      <cfreturn/>
    </cffunction>

    OK.  It sounds to me like you really shouldn't be using a single root Application.cfc at all, if all you want to do is share some settings between your "sub-applications".  I would look at storing the common settings in an external file that all of the applications can read in.  The simplest way is to put the settings in a .CFM file somwhere outside of the web root (so it is not directly web accessible) and load it with <cfinclude> tag into the OnApplicationStart() method of each sub-application's App.cfc.  That .CFM file can be as simple as:
    <cfset application.myCustomSetting = "blahblah">
    <cfset application.myOtherSetting = "foo">
    Alternatively, you can look at using a config file like this Ray Camden blog post suggests, and use the GetProfileSection(), GetProfileString(), and SetProfileString() functions as needed within OnApplicationStart().  You could even put ALL of your settings in
    A third option is to store your settings in an XML file or in JSON format in a text file.  You could then write code to read in the XML file, and use something like xml2struct.cfc to convert the XML into a struct, then append the struct to your application scope.  If you go the JSON route, then just read in the JSON file and use DeserializeJSON() to convert it into a struct, and append it to the application scope.
    What I think is probably the best approach is to use a community-supported MVC framework like FW/1 or ColdBox (maybe you already are, I don't think you've said so though).  One of the many advantages to doing so is that they have built-in "environment" support that can be used to configure common settings, depending on your environment (dev/qa/production).  You would handle reading in your external settings through the "environment" mechanism.
    One other thing to think about: your login mechanism.  I think you want to use one set of login tools that is shared by all of the "sub-applications".  You can do this also by putting the login/authentication-related code somewhere outside the webroot of your applications, and then either set up a mapping to that location in CF Admin, or set an application-specific mapping in your various App.cfc files.  That way all the "sub-applications" share a common set of code for the login process.  I don't know how your login process works (do all users go to the same login page then get redirected into their relevant "sub-application", or does each "sub-application" have a discrete login page that utilizes common back-end processes to authenticate and redirect), so you'll have to judge how that is best accomplished.
    Hopefully this gives you some useful ideas.
    -Carl V.

  • Need help with application.cfc

    Here is what I am trying to do. I have a login page, and when
    a user logs in it verifies their credentials. If everything is good
    it sets a session variable called #session.username#. What I want
    to happen is at that point update a database field to set the user
    logged on status to 1. Everything to that point is fine. I am
    getting stuck at updating the databse when the users session ends.
    Before the session ends I would like to update the db field for the
    user and set the logged on status to 0.
    I haven't used application.cfc before. I have been messing
    around but nothing is working. Here is a copy of my application.cfc
    file. If anyone has any idea on how to run a query onsessionend and
    update a db I would appreciate it.
    <cfcomponent output="false">
    <cfset this.name = "test">
    <cfset this.applicationTimeout =
    createTimeSpan(0,2,0,0)>
    <cfset this.clientManagement = true>
    <cfset this.clientStorage = "registry">
    <cfset this.loginStorage = "session">
    <cfset this.sessionManagement = true>
    <cfset this.sessionTimeout = createTimeSpan(0,0,0,30)>
    <cfset this.setClientCookies = true>
    <cfset this.setDomainCookies = false>
    <cfset this.scriptProtect = false>
    <cffunction name="onApplicationStart" returnType="boolean"
    output="false">
    <cfset application.dsn = "dsn">
    </cffunction>
    <cffunction name="onSessionStart" returnType="void"
    output="false">
    <cfargument name="sessionScope" type="struct"
    required="true">
    <cfargument name="appScope" type="struct"
    required="false">
    </cffunction>
    <cffunction name="onSessionEnd" returnType="void"
    output="false">
    <cfargument name="sessionScope" type="struct"
    required="true">
    <cfargument name="appScope" type="struct"
    required="false">
    <!--- Update Logged On Status --->
    <cfquery datasource="dsn">
    UPDATE LoginNew
    SET loggedin = '0'
    WHERE username = '#session.loginname#'
    </cfquery>
    </cffunction>
    </cfcomponent>

    siriiven wrote:
    >
    > Any ideas?
    >
    Take a peak at the documentation. It describes all the ins
    and outs...
    you have to do the same thing with application variables as
    session
    variables. The hint being that you are also defining an
    appScope
    argument as well as the sessionScope argument, there is a
    reason for this.
    <quote
    src="
    http://livedocs.adobe.com/coldfusion/7/htmldocs/wwhelp/wwhimpl/common/html/wwhelp.htm?cont ext=ColdFusion_Documentation&file=00000701.htm">
    Usage
    Use this method for any clean-up activities when the session
    ends. A
    session ends when the session is inactive for the session
    time-out
    period or, if using J2EE sessions, the user closes the
    browser. You can,
    for example, save session-related data, such as shopping cart
    contents
    or whether the user has not completed an order, in a
    database, or do any
    other required processing based on the user’s status.
    You might also
    want to log the end of the session, or other session related
    information, to a file for diagnostic use.
    If you call this method explicitly, ColdFusion does not end
    the session;
    it does execute the method code, but does not lock the
    Session.
    You cannot use this method to display data on a user page,
    because it is
    not associated with a request.
    You can access shared scope variables as follows:
    You must use the SessionScope parameter to access the Session
    scope. You
    cannot reference the Session scope directly; for example, use
    Arguments.SessionScope.myVariable, not Session.myVariable.
    You must use the ApplicationScope parameter to access the
    Application
    scope. You cannot reference the Application scope directly;
    for example,
    use Arguments.ApplicationScope.myVariable, not
    Application.myVariable.
    Use a named lock when you reference variables in the
    Application scope,
    as shown in the example.
    You can access the Server scope directly; for example,
    Server.myVariable.
    You cannot access the Request scope.
    Sessions do not end, and the onSessionEnd method is not
    called when an
    application ends. The onSessionEnd does not execute if there
    is no
    active application, however.
    </quote>

  • I need help with application updates

    My problem  is with applications updateing i changed my e-mail address but my old one still is listed  and i can't update  new applications how can i change that ID

    no iam refering to the application icon shows six updates and  i  touch it and it shows my old e-mail address which is [email protected]

  • Problem with application modules and switching from 2 tier to 3 tier mode

    Hello,
    I've got an application in 2 tier mode. Now I wanted to switch to 3 tier mode but get a class cast exception. It has turned out, that panelBinding.getApplication().getApplicationModule().findApplicationModule returns in 2 tier mode <ModuleName>Impl and in 3 tier mode oracle.jbo.client.remote.ApplicationModuleImpl. But searching for modul name with panelBinding.getApplication().getApplicationModule().getApplicationModuleNames() returns the right in names in 2 tier and in 3 tier mode. Does anybody know a way to access <ModulName>Impl in 3 tier mode?

    This is the reason that the BC4J project will create an <appmodulename>AM interface and a <appmodulename>AMClient Implementation that you include on the client side if you expose any methods in your app module. You should access them by casting it to the interface, NOT the appModuleImpl class. If you stick to using the interface, then you should be fine.
    So to keep your implementation flexible, you should do this on the client to access your custom methods on your app module:
    The BC4J project should generate the following classes:
    AppModule Name = MyCustomAM.xml
    AppModule Implementation = MyCustomAMImpl.java
    Custom AppModule Interface = /common/MyCustomAM.java
    Custom clientside AppModule Implementation = /client/MyCustomAMClient.java
    On the client, do the following:
    import my.bc4j.model.package.common.MyCustomAM;
    // Call custom method on App module
      MyCustomAM am = (MyCustomAM) panelBinding.getDataControl().getApplicationModule();
      am.myCustomMethod(someParams);Hope this helps.
    Erik

  • Help with amplitude modulation

    Dear Labview users, 
    Im having some trouble with this Amplitude Modulation. What I want is to change the Amplitude of a sine wave using a rectangular pulse as following (see figure): 
    The A.M. sinewave will be the input for my Daq device. I figured this is a strange modulation since i haven't found any info about this type of modulation (most only refer to sine-by-sine modulation). 
    Any help on this problem would be greatly appreciated  
    Regards, Dennis
    Solved!
    Go to Solution.

    Dear Mike,
    Thank you for your reply! My problem is indeed that i dont know how to do the modulation =/
    My drawing might be misleading. The carrier (which is the sinewave) is in fact between the rectangular pulse (AM-modulated by it) i haven't drawn that one because there is no sine function in paint
    Some additional information regarding the frequencys: 
    - The sinewave is a typical mains signal with 50 Hz.
    - The squarewave's amplitude will be increasing, starting from 0.008 Hz till 40 Hz.
    So yes you are indeed right about the carrier frequency being higher..
    Still, any help will be greatly appreciated

  • Need help with Flex Modules

    Hello..I am very new to flex. I have recently studied little
    bit about modular pgming in flex..I am doing a simple project as
    explained below..but for some reason I am not able to make it to
    work..I am gettig below error..I really apreciate some help on
    this.
    ReferenceError: Error #1069: Property subViewStack not found
    on IntranetHome and there is no default value.
    I have a 'IntranetHome' which has code similar to below:
    <mx:Application>
    <mx:ViewStack id="superViewStack" borderStyle="solid"
    width="100%" height="100%" >
    <mx:ModuleLoader url="Module1" width="100%" height="100%"
    />
    <mx:ModuleLoader url="Module2" width="100%" height="100%"
    />
    </mx:ViewStack>
    </mx:Application>
    In Module1..I have code similar to below:
    <mx:Module>
    <mx:ViewStack id="subViewStack" borderStyle="solid"
    width="100%" height="100%" >
    <mx:ModuleLoader url="SubModule1.swf" id="sm"
    width="100%" height="100%" />
    <mx:ModuleLoader url="SubModule2.swf" id="sm1"
    width="100%" height="100%" />
    </mx:ViewStack>
    </mx:Module>
    In SubModule1 there are couple of buttons..when I click on
    these buttons..I would like to load SubModule2.swf which is under
    subViewStack of Module1.. I am getting errors when I am trying to
    say :
    on button
    click="Applixation.application.subViewStack.selectedIndex=1"
    Am I doing something wrong...Please help me out here..If
    there is a better way please let me know. Thanks

    "Smart_flex" <[email protected]> wrote in
    message
    news:g7b8ol$d57$[email protected]..
    > Hello..I am very new to flex. I have recently studied
    little bit about
    > modular
    > pgming in flex..I am doing a simple project as explained
    below..but for
    > some
    > reason I am not able to make it to work..I am gettig
    below error..I really
    > apreciate some help on this.
    >
    > ReferenceError: Error #1069: Property subViewStack not
    found on
    > IntranetHome
    > and there is no default value.
    >
    > I have a 'IntranetHome' which has code similar to below:
    > <mx:Application>
    > <mx:ViewStack id="superViewStack" borderStyle="solid"
    width="100%"
    > height="100%" >
    > <mx:ModuleLoader url="Module1" width="100%"
    height="100%" />
    > <mx:ModuleLoader url="Module2" width="100%"
    height="100%" />
    > ...
    > </mx:ViewStack>
    > </mx:Application>
    >
    > In Module1..I have code similar to below:
    >
    > <mx:Module>
    > <mx:ViewStack id="subViewStack" borderStyle="solid"
    width="100%"
    > height="100%" >
    > <mx:ModuleLoader url="SubModule1.swf" id="sm"
    width="100%"
    > height="100%" />
    > <mx:ModuleLoader url="SubModule2.swf" id="sm1"
    width="100%"
    > height="100%" />
    > .....
    > </mx:ViewStack>
    > </mx:Module>
    >
    > In SubModule1 there are couple of buttons..when I click
    on these
    > buttons..I
    > would like to load SubModule2.swf which is under
    subViewStack of
    > Module1.. I
    > am getting errors when I am trying to say :
    >
    > on button
    click="Applixation.application.subViewStack.selectedIndex=1"
    >
    > Am I doing something wrong...Please help me out here..If
    there is a better
    > way
    > please let me know. Thanks
    http://blogs.adobe.com/aharui/presentations/
    Look at the last one

  • Need urgent help with application please

    Hi i have a project for school. The application is a ball that bounces around in the frame and everytime it hits a wall it changes color and a popup menu is needed to change background color and to change the speed of the ball. I have so far got the ball to bounce and change color everytime it hits a wall and i also have a popup menu to change background color but im having trouble putting slow and fast modes on the popup menu. Below is my source code. Thread.sleep(10) is what determines the speed but i cant get it to be on the popup menu. Can somebody please help me. Thanks
    code:
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    public class WormX extends Panel implements ActionListener, Runnable{
    private String[] colorNames =
    { "White", "Gray", "Red",
    "Blue", "Black"};
    private String[] speeds =
    {"Slow", "Fast"};
    private Color[] colors =
    { Color.white, Color.gray, Color.red,
    Color.blue, Color.black };
    private PopupMenu menu;
    private PopupMenu menu1;
    final int WIDTH = 280, HEIGHT = 230;
    public static void main(String[] args) {
    Frame f = new Frame();
    f.addWindowListener(new java.awt.event.WindowAdapter() {
    public void windowClosing(java.awt.event.WindowEvent e) {
    System.exit(0);
    WormX wx = new WormX();
    wx.setSize(320,250); // same size as defined in the HTML APPLET
    f.add(wx);
    f.pack();
    wx.init();
    f.setSize(320,250 + 20); // add 20, seems enough for the Frame title,
    f.show();
    wx.start();
    public void start(){
    Thread t = new Thread(this);
    t.start();
         PopupMenu popup;
    int headx, heady, xinc, yinc;
    Color color;
    public void paint(Graphics g){
    g.setColor(color);
    g.drawString("OOO", headx, heady); //This is what the worm looks like.
    public void run(){
    while (true){
    putWorm();
    repaint();
    try{
    Thread.sleep(10); //This adjusts the speed of the worm
    catch (InterruptedException e){
    e.printStackTrace();
    void checkWorm(){                      //checkworm is the coding for changing the colour of the worm
    if ((headx >= WIDTH) || (headx <= 0)){
    xinc *= -1;
    changeColor();
    else if ((heady >= HEIGHT) || (heady <= 0)){
    yinc *= -1;
    changeColor();
    void changeColor(){    color = new Color((int)(Math.random() * 1677721));
    void putWorm(){
    headx += xinc;
    heady += yinc;
    checkWorm();
         public void init() {
    xinc = 2;
    yinc = 2;
    color = Color.black; //This is the base colour of the worm
    headx = (int)((Math.random() * WIDTH / 2) + WIDTH / 4);
    heady = (int)((Math.random() * HEIGHT / 2) + HEIGHT / 4);
    resize(WIDTH, HEIGHT);
         setBackground(Color.gray);
    menu = new PopupMenu("Background Color");
    enableEvents(AWTEvent.MOUSE_EVENT_MASK);
    MenuItem colorName;
    for(int i=0; i<colorNames.length; i++) {
    colorName = new MenuItem(colorNames);
    menu.add(colorName);
    colorName.addActionListener(this);
    menu.addSeparator();
    add(menu);
    menu1 = new PopupMenu("Speed");
    enableEvents(AWTEvent.MOUSE_EVENT_MASK);
    MenuItem speed;
    for(int i=0; i<speeds.length; i++) {
    speed = new MenuItem(speeds[i]);
    menu.add(speed);
    speed.addActionListener(this);
    menu.addSeparator();
    add(menu);
    public void actionPerformed(ActionEvent event) {
    setBackground(colorNamed(event.getActionCommand()));
    repaint();
    public void processMouseEvent(MouseEvent event) {
    if (event.isPopupTrigger())
    menu.show(event.getComponent(),
    event.getX(), event.getY());
    super.processMouseEvent(event);
    private Color colorNamed(String colorName) {
    for(int i=0; i<colorNames.length; i++)
    if(colorNames[i].equals(colorName))
    return(colors[i]);
    return(Color.white);

    I honestly don't know. I never had this Exception.
    But look at the API:
    http://java.sun.com/j2se/1.5.0/docs/api/java/lang/InterruptedException.html
    Obviously, Java doesn't like what you do with your thread. Altogether, I'm not sure if your design isn't flawed. Basically, you pause your whole application regularly, so that it seems that you have a regular time flow. This is like doing slow motion on your DVD player by constantly pressing "play" and "pause".
    Think about using the swing timer instead:
    http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/Timer.html
    So, instead of binding your moving object to your main class, you can trigger it by the timer. Think about it.
    Edit: As I see now, you DID catch the InterruptedException around the Thread.sleep(10) in your original code. Why did you do it in the first place, and why don't you now?
    You can just catch the Exception, and leave it like that. However, when an Exception occurs regularly, it would be better to know why.
    Editedit: Also, you declare the same class which is a panel als as a thread. AWT/Swing don't like it when create new Threads for the GUI, since AWT/Swing bring their own Thread for Event Handling. So, whatever you do with any kind of Threads, do it in some class which doesn't inherit from some visual component!

  • Error message "VI is not executable"! Need help with Application Builder

    Hello,
    I have a problem with an application, built with the Application Builder. I have read some threads about the problem I have, but I still don't know a solution.
    When I run my front panel from LabVIEW, everything is good. So, now I created an application (and an installer) to be able to run it on other PCs as well. This application does not work. Everytime I start it on my PC, I get the error "VI is not executable. ...". I read in several forums solutions for this error, but I cannot fix it! I've changed my properties for the builder, but with no success. Perhaps, anybody has more ideas, what's the problem.
    To get a better idea from my project, here a little description of it:
    In the block diagram there is a while loop which is continuously runned. In this loop I only set some properties for the layout of the front panel, such as decorations which will be hidden/shown and changes of colours of indicators... For the rest, it waits for a click on the button "Start" in the front panel. After that, a DLL is called to communicate with a USB device. Some measurements are carried out and the DLL is closed. I hope, you can get a global idea from my block diagram...
    I use LabVIEW 8.5, the DLL is a third-party DLL, which we wrote on our own. But I think the DLL works properly, if it is called from a C# application it works and it works, too, by calling it from LabVIEW when I am in development mode.
    It's a project for university and I'm just a beginner in LabVIEW, so I don't have so much experiences in it, but I think i improved my knowlegde about LabVIEW very well in the last weeks!
    So, i hope to get an answer soon (the deadline for the project is not soooo far away )
    If you need more information, please let it know...
    I would be very grateful if there is someone with a working solution...
    Kind regards from the Netherlands,
    Sebastian

    Sebastian,
    Your architecture makes it very difficult to debug this and other problems.  Does the error message mention which VI is causing the problem?  It is very important to wire your error clusters everywhere.  In LabVIEW, when a node throws an error (Error.Status = T), future nodes do not execute.  At the end, place an error cluster indicator that you can see on your front panel.  When an error posts, you can right click the indicator (even in a compiled application) and select "Explain Error".
    This is a start, but you really need to push this into a queued-state machine before this gets any more complicated.  As it were, if anything in your loop hangs, your whole application hangs.  See attached for a queued-message handler (not advisable for actual applications, but you get the point.  You would want to have a type defined enum in lieu of strings, and shared data between states differently, etc.)
    -Jason
    Message Edited by LabBEAN on 01-20-2009 08:36 AM
    Certified LabVIEW Architect
    Wait for Flag / Set Flag
    Separate Views from Implementation for Strict Type Defs
    Attachments:
    State Machine.vi ‏18 KB

  • Re-installing OS, need help with applications

    I just got my iMac G5 desktop back from the shop today after having the hard drive repaired. Fortunately, I am good about doing my backups, but I have never had a total hard drive failure before on a Mac.
    I don't want to go through the bother of re-installing every little app if I don't have to. I know I can transfer from another Mac, but is there anyway for me to do the same thing directly with my FireWire external (which is where my backup currently is)?
    Any ideas?

    If your back up is a clone then just go to Application/Utilities and open Migration Assistant and follow the instructions.
    Kevin
    http://bearbyte.blogspot.com/

  • Need help with RF Modulation

    I have an F Jack (coaxial) jack coming from a wall plate I want the video signal to go to a Sharp DLP projector and the audio to go to an amp connected to 4 speakers.   I need to find some way to convert the RF signal from an F-Jack to RCA or S-Video.
    I have purchased an RCA CRF940 RF Modulator but I do not seem to be having any signal coming from the Audio-Video Output jacks after connecting the F-Jack connector from the wall plate. 
    I know the best way to make the conversion is with a simple DVD/VCR combo unit however, I cannot find a unit that has an F-Jack IN/OUT.
    If anyone has a suggestion or suggestions I would appreciate it.   By-the-way the RCE CRF940 also has S-Video ports as well.  I had the same luck with those.
    Thanks in Advance 

    Ok...I'm getting a better picture now.
    You've got a reversed idea what that RF modualtor does. It takes an RCA feed and sends to out of the RF...not vice versa.
    You will need to modify the in-wall wiring and the wall plate to accommodate RCA connections for this scenario to work.
    Disclosure: Former BBY employee.

  • I need help with applications in Mac OS x not opening

    Recently, Applications in OS X haven't been opening correctly, and some browsers arent opening and even crashing.
    I think it started when I installed DivX, but I uninstalled it and it's still not working.
    When I try and open an application, I get a notification like this:
    Please help!

    Disconnect all peripherals from your computer. Boot from your install disc & run Repair Disk from the utility menu. To use the Install Mac OS X disc, insert the disc, and restart your computer while holding down the C key as it starts up.
    Select your language.
    Once on the desktop, select Utility in the menu bar.
    Select Disk Utility.
    Select the disk or volume in the list of disks and volumes, and then click First Aid.
    Click Repair Disk.
    Restart your computer when done.
    Repair permissions after you reach the desktop-http://docs.info.apple.com/article.html?artnum=25751 and restart your computer.

  • Need help with applications

    i am new to mac and i am having some issues. first, where do i find my programs? i just got my mac laptop yesterday with iwork supposildy preinstalled, but i cant find it. well i find an icon with it in applicatins after i had to search the computer for it, but it wont open. it doesnt do anything when i click on it. then i am try to do things in ical and someone told me about a blue button i am suppose to have when i highlight the event, but nothing comes up and i cant delete a calendar i accidentally made. i highlght it on the left and hit "delete' but nothing happends. i read over the turorials for ical and it seems i am missing some buttons. also i am trying to go from day view to weekly and the buttons arent working at the top, either is the today button and the current view is for friday. is something already messed up on my new laptop?
    Message was edited by: Kelly Siech

    Kelly,
    I am thinking that if this is a problem with the program, I am thinking that you have a chance to call Apple, and they can either fix the program for free, or give you a brand new macbook.
    Since you are new, I can help you. Macs somehow are a little more advanced than Windows, because you cannot encounter a virus made for windows. If a virus was to come, it has a high chance to NEVER and I mean NEVER coming into your computer system and destroy your computer. It has to be able to adapt to the programs that Apple has made, and since windows viruses are not compatible with macs they unfortunately will never destroy your motherboard.
    Thats just to tell you, that you don't have to worry about viruses.
    You have to worry about that, you have to be careful on what you do on the internet, there are things that can crash your computer. Thats why, it is better to be using Firefox, you can use the version 2.0.1 or 3.0.
    The new version of firefox is nearly the same as the other version 2.0.1.
    Firefox is a lot better, because.
    1. it is safer and 3rd party cookies and other people are not able to see it.
    2. You can modify what you want. The history can be deleted automatically, when you quit firefox (apple Q)
    3. Nearly everyone who uses Macs, and Windows, can use it, and if you use firefox on a windows, it is the same, there are very high possibilities, that viruses will not be able to break through.
    4. FIREFOX RULES! ^_^
    I feel that I should PROBABLY tell you more, if you don't mind.
    Like if you want to have msn on your mac. DON'T EVER and I mean DON'T EVER download a version of msn that is under the file of EXE. Mac is not compatible with the .exe files. The best thing you can actually go to, is to the apple download site that one that you are on now, but just click on downloads.
    MSN WILL BE AVAILABLE TO DOWNLOAD
    Don't worry, viruses will not be able to come in either. Although the only down poor is that, the mac messenger does NOT have WEBCAM, NO offline messaging, and you CAN'T make microphone chat, or the webcam with microphone chat.. you have to find another program that lets you do that. I use a different type of messenger. Yahoo, you cannot use the webcam for people who are using windows messenger on your yahoo messenger.
    You have to also know that, you can use msn2go.com for messenger when your at a cafe, libraries, municipal airports, mall if possible, nearly EVERYWHERE you can use wireless. It also comes with gigabyte ethernet.
    You might think that wireless is more secure, well it's not. You have to secure the router and put a password on it if you don't want people to get onto the internet, or as people say Hijack or backpack.
    Also you can go to system preferences and go to security, and then there are three tabs. General, fire vault, and firewall. You should just click on the General tab, and click the first one that says DISABLE AUTOMATIC LOGIN. That means that when you setup your password when you did a first boot up, you now do not have to worry about people trying to get into your laptop. So that means when you turn on your laptop, and now you will have your own account, and a guest account if possible, so then now you have to enter your password, and then you will be able to login.
    If you close your lid, your computer will go to sleep, and then when you open up the laptop lid, then you will have to enter your password to. So then you will be able to login... I would not recommend your password being Kelly and your last name in it... put something that you can really remember, and something that is easy like an easy word
    If you need anything else just email me... ****@*.com.
    Have a good day.
    Shang
    <Edited by Moderator>

Maybe you are looking for