How move main class to script in timeline

hi , in some component they use main class to load various as files
and when i see properties of my document i see the name of this class right down the Script : Action Script 3
whe i click on the pen ( edit ) of this class i see various codes about doing importing some AS files and ...
for example :
package {
    import flash.display.MovieClip;
    import flash.display.Sprite;
    import flash.events.Event;
    import flash.net.URLRequest;
    import flash.net.URLLoader;
    import flash.events.*;
    import com.Align;
    public class DocumentClass extends MovieClip {
        private var ***;
        public var ***;
        public var ***;
        public function DocumentClass() {
        private function config():void {
sometimes i want to use 2 or more component that use this technics and i can only choose and type the name one of them !! 
how can i put them all together or it will be better if possible to put class in script in timeline ...

thanks Mr.Murphy
i try to remove package , private , public from class and move it to timeline as Script but no success at all !!
here is the Code and my menu :
http://www.jeffguthrie.com/drop-down-menu-with-as3
and here what i made at end :
import flash.display.MovieClip;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.events.TimerEvent;
import flash.utils.Timer;
import com.greensock.*;
import com.greensock.easing.*;
         var _sMouseOver:MovieClip;
         var _sMenu:MovieClip;
         var _menuTimer:Timer;
         var _menuOpen:Boolean = false;
        function MouseOverMenu():void {
            addEventListener(Event.ADDED_TO_STAGE, init, false, 0, true);
        function init(e:Event):void {
            _sMouseOver.buttonMode = true;
            _sMouseOver.addEventListener(MouseEvent.MOUSE_OVER, showMenu, false, 0, true);
            _sMouseOver.addEventListener(MouseEvent.MOUSE_OUT, startClose, false, 0, true);
            _sMouseOver.addEventListener(MouseEvent.MOUSE_OVER, cancelClose, false, 0, true);
            _menuTimer = new Timer( 50 );
            _menuTimer.addEventListener ( TimerEvent.TIMER, doCloseMenu );
            _sMenu.visible = false;
            _sMenu.alpha = 0;
            _sMenu.addEventListener(MouseEvent.MOUSE_OUT, startClose, false, 0, true);
            _sMenu.addEventListener(MouseEvent.MOUSE_OVER, cancelClose, false, 0, true);
         function showMenu(e:MouseEvent):void {
            _menuOpen = true;
            _sMenu.visible = true;
            TweenLite.to(_sMenu, .5, {y:73, alpha:1});
         function startClose ( e:Event ):void {
            //trace('startClose ' + e.target);
            _menuTimer.start();
         function cancelClose ( e:Event ):void {
            //trace('cancelClose ' + e.target);
            _menuTimer.stop();
         function doCloseMenu ( e:Event ) {
            closeMenu();
         function closeMenu ():void {
            if ( _menuOpen ) {
                TweenLite.to(_sMenu, .5, {y:50, alpha:0, onComplete: hideMenu});
            _menuTimer.stop();
            _menuOpen = false;
         function hideMenu():void {
            _sMenu.visible = false;
i really need this and i cant use Document class , thanks

Similar Messages

  • The dreaded "could not find the Main Class, Program will exit", how?

    Hello all,
    I am trying to run my .jar file and I get this error message.
    I want to mention I googled and searched for it, without success: There is so many different explanations!
    I tried this:
    Adding some lines in a manifest.fm file...
    Manifest-Version: 1.0
    Ant-Version: Apache Ant 1.7.0
    Created-By: 10.0-b19 (Sun Microsystems Inc.)
    X-COMMENT: Main-Class will be added automatically by build
    I have Netbeans 5.5.
    Also I noticed my "build.xml" file is empty" and my "manifest.fm" nearly empty. I have also added "project, main class" in the options...
    Here is my "build":
    {code}<?xml version="1.0" encoding="UTF-8"?>
    <!-- You may freely edit this file. See commented blocks below for -->
    <!-- some examples of how to customize the build. -->
    <!-- (If you delete it and reopen the project it will be recreated.) -->
    <project name="BetaCourseworkJava3d_Final" default="default" basedir=".">
    <description>Builds, tests, and runs the project BetaCourseworkJava3d_Final.</description>
    <import file="nbproject/build-impl.xml"/>
    <!--
    There exist several targets which are by default empty and which can be
    used for execution of your tasks. These targets are usually executed
    before and after some main targets. They are:
    -pre-init: called before initialization of project properties
    -post-init: called after initialization of project properties
    -pre-compile: called before javac compilation
    -post-compile: called after javac compilation
    -pre-compile-single: called before javac compilation of single file
    -post-compile-single: called after javac compilation of single file
    -pre-compile-test: called before javac compilation of JUnit tests
    -post-compile-test: called after javac compilation of JUnit tests
    -pre-compile-test-single: called before javac compilation of single JUnit test
    -post-compile-test-single: called after javac compilation of single JUunit test
    -pre-jar: called before JAR building
    -post-jar: called after JAR building
    -post-clean: called after cleaning build products
    (Targets beginning with '-' are not intended to be called on their own.)
    Example of inserting an obfuscator after compilation could look like this:
    <target name="-post-compile">
    <obfuscate>
    <fileset dir="${build.classes.dir}"/>
    </obfuscate>
    </target>
    For list of available properties check the imported
    nbproject/build-impl.xml file.
    Another way to customize the build is by overriding existing main targets.
    The targets of interest are:
    -init-macrodef-javac: defines macro for javac compilation
    -init-macrodef-junit: defines macro for junit execution
    -init-macrodef-debug: defines macro for class debugging
    -init-macrodef-java: defines macro for class execution
    -do-jar-with-manifest: JAR building (if you are using a manifest)
    -do-jar-without-manifest: JAR building (if you are not using a manifest)
    run: execution of project
    -javadoc-build: Javadoc generation
    test-report: JUnit report generation
    An example of overriding the target for project execution could look like this:
    <target name="run" depends="BetaCourseworkJava3d_TestsBACKUPSUNDAY05April-impl.jar">
    <exec dir="bin" executable="launcher.exe">
    <arg file="${dist.jar}"/>
    </exec>
    </target>
    Notice that the overridden target depends on the jar target and not only on
    the compile target as the regular run target does. Again, for a list of available
    properties which you can use, check the target you are overriding in the
    nbproject/build-impl.xml file.
    -->
    </project>
    {code}
    my Manifest:
    {code}Manifest-Version: 1.0
    Ant-Version: Apache Ant 1.7.0
    Created-By: 10.0-b19 (Sun Microsystems Inc.)
    X-COMMENT: Main-Class will be added automatically by build
    {code}
    And my whole code (although I have like 4 .JAVA files in my project):
    {code}
    package courseworkjava3d;
    import java.awt.*;
    import java.awt.event.*;
    import com.sun.j3d.utils.geometry.*;
    import com.sun.j3d.utils.universe.*;
    import javax.swing.*;
    import javax.media.j3d.*;
    import javax.vecmath.*;
    import javax.media.j3d.PositionPathInterpolator;
    import javax.media.j3d.Alpha;
    import javax.media.j3d.BoundingSphere;
    import com.sun.j3d.utils.applet.MainFrame;
    import java.applet.Applet;
    import java.awt.event.WindowAdapter;
    import javax.swing.Timer;
    import com.sun.j3d.utils.image.*;
    public class Simple3D extends JFrame implements ActionListener, KeyListener
    private TransformGroup objTransxx;
    private Button go = new Button("Press to start the Bouncing Ball. Press A and S to move the ball Left and Right once it started!");
    private Transform3D transxx = new Transform3D();
    private float height=0.0f;
    private float sign = 1.0f; // aller vers le haut ou vers le bas
    private Timer timer;
    private float xloc=-2.25f;
    public Simple3D()
    setSize(800, 800);
    GraphicsConfiguration graphicsConfig = SimpleUniverse.getPreferredConfiguration();
    Canvas3D canvas = new Canvas3D(graphicsConfig);
    getContentPane().add("Center", canvas);
    BasicUniverse universe = new BasicUniverse(canvas, 8.0f);
    // Rotate the view platform by PI/4 radians about X in the BasicUniverse
    TransformGroup viewTransform = universe.getViewPlatformTransform();
    Transform3D transform = new Transform3D();
    transform.rotX(-Math.PI / 4.0);
    Transform3D currentTransform = new Transform3D();
    viewTransform.getTransform(currentTransform);
    transform.mul(currentTransform);
    viewTransform.setTransform(transform);
    // Add something to display
    BranchGroup scene = createCubeGraph();
    universe.addBranchGraph(scene);
    /* //ultra important! comment theses lines otherwise it bugs!
    //Merde
    setLayout(new BorderLayout());
    GraphicsConfiguration config =
    SimpleUniverse.getPreferredConfiguration();
    Canvas3D c = new Canvas3D(config); */
    add("Center", canvas);
    //i messed up te code, i replaced canvas c by "canvas" as i already had one!
    canvas.addKeyListener(this);
    timer = new Timer(75,this);
    //timer.start();
    Panel p =new Panel();
    p.add(go);
    add("North",p);
    go.addActionListener(this);
    go.addKeyListener(this);
    // Cr�er une sc�ne simple et l�ajouetr � l�univers
    //BranchGroup scene2 = createCubeGraph();
    //SimpleUniverse u = new SimpleUniverse(c);
    //u.getViewingPlatform().setNominalViewingTransform();
    //u.addBranchGraph(scene2);
    //End Merde
    public BranchGroup createCubeGraph() {
    BranchGroup Humanoid = new BranchGroup();
    //Debut Ball REBOUND
    // Create the root of the branch graph
    //BranchGroup objRoot = new BranchGroup();
    objTransxx = new TransformGroup();
    objTransxx.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
    Humanoid.addChild(objTransxx);
    // Cr�er une forme simple et l�ajouter au graph de sc�ne
    Sphere spherex = new Sphere(0.85f);
    objTransxx = new TransformGroup();
    objTransxx.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
    Transform3D pos1 = new Transform3D();
    pos1.setTranslation(new Vector3f(-2.0f,0.0f,-2.0f));
    objTransxx.setTransform(pos1);
    objTransxx.addChild(spherex);
    Humanoid.addChild(objTransxx);
    BoundingSphere boundsx =
    new BoundingSphere(new Point3d(0.0,0.0,0.0), 100.0);
    // I messed up the colors: I have applied 2 times some colorslights to the same BranchGroup
    Color3f light1Colorx = new Color3f(1.0f, 1.0f, 1.0f);
    Vector3f light1Directionx = new Vector3f(4.0f, -7.0f, -12.0f);
    DirectionalLight light1x
    = new DirectionalLight(light1Colorx, light1Directionx);
    light1x.setInfluencingBounds(boundsx);
    Humanoid.addChild(light1x);
    // R�gler la lumi�re ambiante
    Color3f ambientColorx = new Color3f(1.0f, 1.0f, 1.0f);
    AmbientLight ambientLightNodex = new AmbientLight(ambientColorx);
    ambientLightNodex.setInfluencingBounds(boundsx);
    Humanoid.addChild(ambientLightNodex);
    // END BallRebound
    // Apparence BODY
    // Configurer les couleurs
    Color3f blackbody = new Color3f(0.0f, 0.0f, 0.0f);
    Color3f whitebody = new Color3f(1.0f, 1.0f, 1.0f);
    Color3f redbody = new Color3f(0.8f, .85f, .85f);
    // Configurer la texture
    //if I want it in Black and white i need to replace RGB by LUMINANCE
    TextureLoader loaderbody = new TextureLoader("C:\\java3d\\body.jpg", "RGB", new Container());
    Texture texturebody = loaderbody.getTexture();
    texturebody.setBoundaryModeS(Texture.WRAP);
    texturebody.setBoundaryModeT(Texture.WRAP);
    texturebody.setBoundaryColor( new Color4f( 1.0f, 1.0f, 0.0f, 0.0f ) );
    // Configurer les attributs de la texture
    // Param�tres possibles : REPLACE, BLEND ou DECAL (ici, MODULATE)
    TextureAttributes texAttrbody = new TextureAttributes();
    texAttrbody.setTextureMode(TextureAttributes.MODULATE);
    Appearance apbody = new Appearance();
    apbody.setTexture(texturebody);
    apbody.setTextureAttributes(texAttrbody);
    //Configurer le mat�riau
    apbody.setMaterial(new Material(redbody, blackbody, redbody, blackbody, 1.0f));
    // Cr�er une sph�re pour y appliquer les textures
    int primflagsbody = Primitive.GENERATE_NORMALS + Primitive.GENERATE_TEXTURE_COORDS;
    // End Apparence BODY
    // Apparence BODYHEAD
    // Configurer les couleurs
    Color3f blackbodyH = new Color3f(0.0f, 0.0f, 0.0f);
    Color3f whitebodyH = new Color3f(1.0f, 1.0f, 1.0f);
    Color3f redbodyH = new Color3f(0.8f, .85f, .85f);
    // Configurer la texture
    //if I want it in Black and white i need to replace RGB by LUMINANCE
    TextureLoader loaderbodyH = new TextureLoader("C:\\java3d\\head.jpg", "RGB", new Container());
    Texture texturebodyH = loaderbodyH.getTexture();
    texturebodyH.setBoundaryModeS(Texture.WRAP);
    texturebodyH.setBoundaryModeT(Texture.WRAP);
    texturebodyH.setBoundaryColor( new Color4f( 1.0f, 1.0f, 0.0f, 0.0f ) );
    // Configurer les attributs de la texture
    // Param�tres possibles : REPLACE, BLEND ou DECAL (ici, MODULATE)
    TextureAttributes texAttrbodyH = new TextureAttributes();
    texAttrbodyH.setTextureMode(TextureAttributes.MODULATE);
    Appearance apbodyH = new Appearance();
    apbodyH.setTexture(texturebodyH);
    apbodyH.setTextureAttributes(texAttrbodyH);
    //Configurer le mat�riau
    apbodyH.setMaterial(new Material(redbodyH, blackbodyH, redbodyH, blackbodyH, 1.0f));
    // Cr�er une sph�re pour y appliquer les textures
    int primflagsbodyH = Primitive.GENERATE_NORMALS + Primitive.GENERATE_TEXTURE_COORDS;
    // End Apparence BODY HEAD
    //for the trunk c le corps
    TransformGroup fortheTrunk = new TransformGroup();
    //will allow to modify object wgile executing
    fortheTrunk.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
    //alpha rotation time related
    Alpha rotationAlpha2=new Alpha(-1,9000);
    //behviour for our rotation
    RotationInterpolator rotator2= new RotationInterpolator(rotationAlpha2,fortheTrunk);
    // area where rotation will be
    BoundingSphere bounds2=new BoundingSphere();
    rotator2.setSchedulingBounds(bounds2);
    fortheTrunk.addChild(rotator2);
    //end of rtotation
    Alpha transAlphahuman=new Alpha(-1,600);
    //transform 3d trans for the interpolatipon HUMANOID
    Transform3D transhumanoid=new Transform3D();
    //matrix for 2positions
    Point3f[] cheminhuman=new Point3f[3];
    cheminhuman[0]=new Point3f(0.8f,0.0f,0.0f);
    cheminhuman[1]=new Point3f(-0.8f,0.0f,0.0f);
    cheminhuman[2]=new Point3f(0.8f,0.0f,0.0f);
    //matrix of floats to make the dots match with timeline
    float[] timePositionhuman={0.0f,0.50f,1.0f};
    PositionPathInterpolator interpolhuman=new PositionPathInterpolator(transAlphahuman,fortheTrunk,transhumanoid,timePositionhuman,cheminhuman);
    BoundingSphere bounds4=new BoundingSphere();
    interpolhuman.setSchedulingBounds(bounds4);
    fortheTrunk.addChild(interpolhuman);
    //add the trunk to the branchgroup
    Humanoid.addChild(fortheTrunk);
    TransformGroup zeTrunk = new TransformGroup();
    zeTrunk.addChild(new com.sun.j3d.utils.geometry.Box(.55f,.80f,.50f,
    primflagsbody,apbody));
    //t3D for the head= bouge up
    Transform3D T3DHead = new Transform3D();
    T3DHead.set(new Vector3f(0f,1.1f,0f));
    //create a tranform group for this t3Dhead
    TransformGroup fortheHead = new TransformGroup();
    fortheHead.setTransform(T3DHead);
    //add the box head
    //fortheHead.addChild(new com.sun.j3d.utils.geometry.Box(.20f,.20f,.10f, primflagsbody,apbody));
    fortheHead.addChild(new com.sun.j3d.utils.geometry.Sphere(0.35f,primflagsbodyH,apbodyH));
    /* I dont need that anymore it was for putting a flat texture on a face. I chose a sphere instead!
    //transform 3D for the face
    Transform3D T3DFace = new Transform3D();
    T3DFace.set(new Vector3f(0f,0f,.14f));
    //create a TransformGroup for this Face
    TransformGroup Face = new TransformGroup();
    Face.setTransform(T3DFace);
    //add the child box to the face;
    Face.addChild(new com.sun.j3d.utils.geometry.Box(.20f,.20f,.2f,
    primflagsbodyH,apbodyH));
    //add this face to the head as a child
    fortheHead.addChild(Face);
    //tranform3d left arm
    Transform3D T3DArmL = new Transform3D();
    T3DArmL.set(new Vector3f(-0.79f,0.73f,0f));
    //create Tranform Group for the leftarm
    TransformGroup fortheArmL = new TransformGroup();
    fortheArmL.setTransform(T3DArmL);
    //add the group for upperarm
    TransformGroup ArmL = new TransformGroup();
    ArmL.addChild(new com.sun.j3d.utils.geometry.Box(.25f,.14f,.10f,
    primflagsbody,apbody));
    fortheArmL.addChild(ArmL);
    //create a transform3D for the forearmleft
    Transform3D T3DForearmL = new Transform3D();
    T3DForearmL.set(new Vector3f(-.51f,0f,0f));
    //create the tranformgroup for the forearmleft
    TransformGroup ForearmL = new TransformGroup();
    ForearmL.setTransform(T3DForearmL);
    //add the child box to forearm
    ForearmL.addChild(new com.sun.j3d.utils.geometry.Box(.20f,.14f,.10f,
    primflagsbody,apbody));
    ArmL.addChild(ForearmL);
    //create transform 3d for the lefthand
    Transform3D T3DHandL = new Transform3D();
    T3DHandL.set(new Vector3f(-.42f,0f,0f));
    //create the child tranform group for the box of the hand
    TransformGroup HandL= new TransformGroup();
    HandL.setTransform(T3DHandL);
    //add the child hand to the forearm
    ForearmL.addChild(HandL);
    //create the box for the handLeft
    HandL.addChild(new com.sun.j3d.utils.geometry.Box(.10f,.140f,.10f,
    primflagsbody,apbody));
    //Right Arm
    //tranform3d right arm
    Transform3D T3DArmR = new Transform3D();
    T3DArmR.set(new Vector3f(0.79f,0.73f,0f));
    //create Tranform Group for the right arm
    TransformGroup fortheArmR = new TransformGroup();
    fortheArmR.setTransform(T3DArmR);
    //add the group for upperarm right
    TransformGroup ArmR = new TransformGroup();
    ArmR.addChild(new com.sun.j3d.utils.geometry.Box(.25f,.14f,.10f, primflagsbody,apbody));
    //com.sun.j3d.utils.geometry.Box.GENERATE_NORMALS,new Appearance()));
    fortheArmR.addChild(ArmR);
    //create a transform3D for the forearmright
    Transform3D T3DForearmR = new Transform3D();
    T3DForearmR.set(new Vector3f(.51f,0f,0f));
    //create the tranformgroup for the forearmright
    TransformGroup ForearmR = new TransformGroup();
    ForearmR.setTransform(T3DForearmR);
    //add the child box to forearmright
    ForearmR.addChild(new com.sun.j3d.utils.geometry.Box(.20f,.14f,.10f, primflagsbody,apbody));
    ArmR.addChild(ForearmR);
    //create transform 3d for the righthand
    Transform3D T3DHandR = new Transform3D();
    T3DHandR.set(new Vector3f(.42f,0f,0f));
    //create the child tranform group for the box of the hand
    TransformGroup HandR= new TransformGroup();
    HandR.setTransform(T3DHandR);
    //add the child hand to the forearmright
    ForearmR.addChild(HandR);
    //create the box for the handright
    HandR.addChild(new com.sun.j3d.utils.geometry.Box(.10f,.14f,.10f, primflagsbody,apbody));
    //Left Leg
    //tranform3d left leg
    Transform3D T3DLegL = new Transform3D();
    T3DLegL.set(new Vector3f(0.43f,-1.23f,0f));
    //create Tranform Group for the leftleg
    TransformGroup fortheLegL = new TransformGroup();
    fortheLegL.setTransform(T3DLegL);
    //add the group for uppeleg
    TransformGroup LegL = new TransformGroup();
    LegL.addChild(new com.sun.j3d.utils.geometry.Box(.16f,.35f,.10f, primflagsbody,apbody));
    fortheLegL.addChild(LegL);
    //create a transform3D for the downlegleft
    Transform3D T3DDownLegL = new Transform3D();
    T3DDownLegL.set(new Vector3f(0f,-.70f,0f));
    //create the tranformgroup for the downegleft
    TransformGroup DownLegL = new TransformGroup();
    DownLegL.setTransform(T3DDownLegL);
    //add the child box to downlegm
    DownLegL.addChild(new com.sun.j3d.utils.geometry.Box(.16f,.25f,.10f, primflagsbody,apbody));
    LegL.addChild(DownLegL);
    //create transform 3d for the leftfeet
    Transform3D T3DFeetL = new Transform3D();
    T3DFeetL.set(new Vector3f(.0f,-.45f,0f));
    //create the child tranform group for the box of thefeet
    TransformGroup FeetL= new TransformGroup();
    FeetL.setTransform(T3DFeetL);
    //add the child hand to the downleg
    DownLegL.addChild(FeetL);
    //create the box for the feetLeft
    FeetL.addChild(new com.sun.j3d.utils.geometry.Box(.16f,.10f,.15f, primflagsbody,apbody));
    //Right Leg
    //tranform3dright leg
    Transform3D T3DLegR = new Transform3D();
    T3DLegR.set(new Vector3f(-0.43f,-1.23f,0f));
    //create Tranform Group for the righttleg
    TransformGroup fortheLegR = new TransformGroup();
    fortheLegR.setTransform(T3DLegR);
    //add the group for uppelegR
    TransformGroup LegR = new TransformGroup();
    LegR.addChild(new com.sun.j3d.utils.geometry.Box(.16f,.35f,.10f, primflagsbody,apbody));
    fortheLegR.addChild(LegR);
    //create a transform3D for the downlegright
    Transform3D T3DDownLegR = new Transform3D();
    T3DDownLegR.set(new Vector3f(0f,-.70f,0f));
    //create the tranformgroup for the downegright
    TransformGroup DownLegR = new TransformGroup();
    DownLegR.setTransform(T3DDownLegR);
    //add the child box to downlegRight
    DownLegR.addChild(new com.sun.j3d.utils.geometry.Box(.16f,.25f,.10f, primflagsbody,apbody));
    LegR.addChild(DownLegR);
    //create transform 3d for the rightfeet
    Transform3D T3DFeetR = new Transform3D();
    T3DFeetR.set(new Vector3f(.0f,-.45f,0f));
    //create the child tranform group for the box of thefeetright
    TransformGroup FeetR= new TransformGroup();
    FeetR.setTransform(T3DFeetR);
    //add the child feet right to the downleg
    DownLegR.addChild(FeetR);
    //create the box for the feetright
    FeetR.addChild(new com.sun.j3d.utils.geometry.Box(.16f,.10f,.15f, primflagsbody,apbody));
    //rajoute la box zetrunk et des fils
    fortheTrunk.addChild(zeTrunk);
    fortheTrunk.addChild(fortheHead);
    fortheTrunk.addChild(fortheArmL);
    fortheTrunk.addChild(fortheArmR);
    fortheTrunk.addChild(fortheLegL);
    fortheTrunk.addChild(fortheLegR);
    //DEBUT CUBE
    //beginning of rotation
    TransformGroup objSpin=new TransformGroup();
    //create transform 3d for box which spin
    Transform3D T3DobjSpin = new Transform3D();
    T3DobjSpin.set(new Vector3f(-2.50f,.45f,0f));
    //create the child tranform group for the box which spin
    objSpin.setTransform(T3DobjSpin);
    //will allow to modify object while executing
    objSpin.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
    //alpha rotation time related
    Alpha rotationAlpha=new Alpha(-1,900);
    Alpha transAlpha=new Alpha(-1,900);
    //transform 3d trans for the interpolatipon
    Transform3D trans=new Transform3D();
    //matrix for 2positions
    Point3f[] chemin=new Point3f[3];
    chemin[0]=new Point3f(-2.8f,0.40f,1.0f);
    chemin[1]=new Point3f(-0.8f,0.40f,1.0f);
    chemin[2]=new Point3f(-2.8f,0.40f,1.0f);
    //matrix of floats to make the dots match with timeline
    float[] timePosition={0.0f,0.50f,1.0f};
    PositionPathInterpolator interpol=new PositionPathInterpolator(transAlpha,objSpin,trans,timePosition,chemin);
    BoundingSphere bounds3=new BoundingSphere();
    interpol.setSchedulingBounds(bounds3);
    objSpin.addChild(interpol);
    //behviour for our rotation
    RotationInterpolator rotator= new RotationInterpolator(rotationAlpha,objSpin);
    // area where rotation will be
    BoundingSphere bounds=new BoundingSphere();
    rotator.setSchedulingBounds(bounds);
    objSpin.addChild(rotator);
    //end of rtotation
    //add transform group objspin to branchgroup humanoid
    Humanoid.addChild(objSpin);
    //test a cube which heritate of this rotation?
    objSpin.addChild(new ColorCube(0.25));
    //test
    //module cube + transparency
    // create an ALPHA transparency apparence (invisible)
    Appearance app0x=new Appearance();
    app0x.setColoringAttributes(new ColoringAttributes(new Color3f(0.3f,0.2f,1.0f),ColoringAttributes.SHADE_GOURAUD));
    app0x.setTransparencyAttributes(new TransparencyAttributes(TransparencyAttributes.NICEST,0.5f));//0.5f represente 50% de transparence
    // create the blue sphere which rotate
    Transform3D transsphere=new Transform3D();
    transsphere.set(new Vector3f(0.0f, -0.1f, 0.3f));
    TransformGroup TGsphere=new TransformGroup(transsphere);
    TGsphere.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
    objSpin.addChild(TGsphere);
    //objRotatecube.addChild(TGsphere);
    TGsphere.addChild( new Sphere(0.3f,app0x) );
    //End Module Cube + Transparency
    //END CUBE
    //DEBUT WHOLE BIRD
    //beginning of Rotation for Bird
    TransformGroup Bird=new TransformGroup();
    //will allow to modify object while executing
    Bird.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
    //alpha rotation time related
    Alpha rotationAlphaBird=new Alpha(-1,400);
    Alpha transAlphaBird=new Alpha(-1,5990);
    //transform 3d trans for the interpolatipon
    Transform3D transBird=new Transform3D();
    //create transform 3d for the Bird
    transBird.set(new Vector3f(1.90f,-.45f,0.9f));
    //create the child tranform group for the Bird Box
    Bird.setTransform(transBird);
    //matrix for 2positions
    Point3f[] cheminBird=new Point3f[3];
    cheminBird[0]=new Point3f(1.95f,0.0f,-6.8f);
    cheminBird[1]=new Point3f(1.95f,0.90f,-0.8f);
    cheminBird[2]=new Point3f(1.95f,0.0f,5.8f);
    //matrix of floats to make the dots match with timeline
    float[] timePositionBird={0.00f,0.50f,1.0f};
    PositionPathInterpolator interpolBird=new PositionPathInterpolator(transAlphaBird,Bird,transBird,timePosition,cheminBird);
    BoundingSphere bounds3Bird=new BoundingSphere();
    //BoundingSphere bounds3Bird= new BoundingSphere(new Point3d(0.0, 0.0, -50.0), 0.5);
    interpolBird.setSchedulingBounds(bounds3Bird);
    Bird.addChild(interpolBird);
    //behviour for our rotation
    RotationInterpolator rotatorBird= new RotationInterpolator(rotationAlphaBird,Bird);
    // area where rotation will be
    BoundingSphere boundsBird=new BoundingSphere();
    rotatorBird.setSchedulingBounds(boundsBird);
    Bird.addChild(rotatorBird);
    //end of rotation For Bird
    //add transform group objspin to branchgroup humanoid
    Humanoid.addChild(Bird);
    //debut test APPARENCE Wing Left
    //test textures
    // Configurer les couleurs
    Color3f blackx = new Color3f(0.0f, 0.0f, 0.0f);
    Color3f whitex = new Color3f(1.0f, 1.0f, 1.0f);
    Color3f redx = new Color3f(0.7f, .75f, .75f);
    // Configurer la texture
    TextureLoader loaderx = new TextureLoader("C:\\java3d\\pois.jpg", "RGB", new Container());
    Texture texturex = loaderx.getTexture();
    texturex.setBoundaryModeS(Texture.WRAP);
    texturex.setBoundaryModeT(Texture.WRAP);
    texturex.setBoundaryColor( new Color4f( 0.0f, 1.0f, 0.0f, 0.0f ) );
    // Configurer les attributs de la texture
    // Param�tres possibles : REPLACE, BLEND ou DECAL (ici, MODULATE)
    TextureAttributes texAttrx = new TextureAttributes();
    texAttrx.setTextureMode(TextureAttributes.REPLACE);
    Appearance apx = new Appearance();
    apx.setTexture(texturex);
    apx.setTextureAttributes(texAttrx);
    //Configurer le mat�riau
    apx.setMaterial(new Material(redx, blackx, redx, blackx, 1.0f));
    int primflagsx = Primitive.GENERATE_NORMALS + Primitive.GENERATE_TEXTURE_COORDS;
    //End test APPARENCE Wing Left
    //test a cube which heritate of this rotation?
    // Bird.addChild(new ColorCube(0.8));
    //test bird body
    // Bird.addChild(new com.sun.j3d.utils.geometry.Box(.25f,.22f,.45f,
    // com.sun.j3d.utils.geometry.Box.GENERATE_NORMALS,new Appearance()));
    Bird.addChild(new com.sun.j3d.utils.geometry.Box(.25f,.22f,.45f, primflagsx,apx));
    //test WingRightBird
    //create a transform3D for the BirdWIngR
    Transform3D T3DBirdWingR = new Transform3D();
    T3DBirdWingR.set(new Vector3f(0.45f,.0f,-0.35f));
    //create the tranformgroup for the BirdWIngR
    TransformGroup BirdWingR = new TransformGroup();
    BirdWingR.setTransform(T3DBirdWingR);
    //add the child box to BirdWIngR
    // BirdWingR.addChild(new com.sun.j3d.utils.geometry.Box(.43f,.07f,.22f,
    // com.sun.j3d.utils.geometry.Box.GENERATE_NORMALS,new Appearance()));
    //End test WingRightBird
    ////////comments/////////
    //beginning of Rotating WINR
    //----------------------d�but de la cr�ation de la rotation--------------------------------
    TransformGroup WinRSpin=new TransformGroup();
    // permet de modifier l'objet pendant l'execution
    WinRSpin.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
    // on cr�e un fonction de rotation au cours du temps
    Alpha rotationAlphaWinRSpin=new Alpha(-1,1000);
    Transform3D rot = new Transform3D();
    rot.rotX((float)Math.PI/- 2.0f);
    //rot.rotX(-45);
    //rot.rotX((-Math.PI / 4.0)+30);
    //rot.rotZ((-Math.PI / 4.0));
    //rot.rotX(-Math.PI / 4.0);
    //rot.rotY(-Math.PI / 4.0);
    // rot.rotZ(-Math.PI / 4.0);
    // rot.rotY(00);
    //rot.rotZ(45);
    // on cr�e un comportement qui va appliquer la rotation � l'objet voulu
    // on d�finit la zone sur laquelle va s'appliquer la rotation
    //RotationInterpolator rotatorWinRSpin=new RotationInterpolator(rotationAlphaWinRSpin,WinRSpin, rot, 0.50f,(float)(2.0*Math.PI));
    RotationInterpolator rotatorWinRSpin=new RotationInterpolator(rotationAlphaWinRSpin,WinRSpin, rot, 25,26);
    BoundingSphere boundsWinRSpin=new BoundingSphere(new Point3d((Math.PI / 4.0), 0.0, 0.0), 0.5);
    // boundsWinRSpin.setCenter(new Point3d((Math.PI / 4.0),0,0));
    boundsWinRSpin.setCenter(new Point3d(-10,0,0));
    //boundsWinRSpin.setCenter();
    //test put a t3d to a boundingsphere??
    //Transform3D T3Dbounding = new Transform3D();
    // T3Dbounding.set(new Vector3f(5.00f,0.0f,0.00f));
    //WinRSpin.setTransform(T3Dbounding);
    //end test put a t3d to a boundingsphere, not working
    rotatorWinRSpin.setSchedulingBounds(boundsWinRSpin);
    // test BoundingSphere of BODY BIRD rotatorWinRSpin.setSchedulingBounds(boundsBird);
    WinRSpin.addChild(rotatorWinRSpin);
    //----------------------End de la cr�ation de la rotation--------------------------------
    BirdWingR.addChild(WinRSpin);
    // on cree un cube qui h�rite de la rotation
    //WinRSpin.addChild(new ColorCube(0.5));// de rayon 50 cm
    WinRSpin.addChild(new com.sun.j3d.utils.geometry.Box(.43f,.07f,.22f, primflagsx,apx));
    //End of Rotating WINR
    //////// END comments/////////
    //I commented the following, that was the TEST sinusoidal, rotation which help me understood how to rotate wingR
    // -----------d�but de cr�ation de la rotation--------------------------------------------------
    TransformGroup objSpinxx=new TransformGroup();
    // permet de modifier l'objet pendant l'execution
    objSpinxx.setCapability(TransformGroup.ALL

    Thank you very much!
    I cant believe this little comment has been so helpful!
    But yes it is:
    I explain, despite my efforts to find, googled it, forums, faqs, etc...
    no where it mentionned the manifest.fm file is... INSIDE the .jar!
    Your comment "a zip" made me attempt to open it with winrar, and I found a manifest.fm file inside!
    So far I was editing the one at the "source" of my project and rebuilding it with netbeans.
    I am going to try that now.
    Actually.... :( no its mentionning my main class!
    Manifest-Version: 1.0
    Ant-Version: Apache Ant 1.7.0
    Created-By: 10.0-b19 (Sun Microsystems Inc.)
    Main-class: courseworkjava3d.Simple3D
    Class-Path:
    X-COMMENT: Main-Class will be added automatically by buildWell I have no problems uploading you the .jar, it is for a coursework it is not a private project or whatever:
    http://www.uploading.com/files/CM2LKWYU/BetaCourseworkJava3d_Final.jar.html
    Oh and I felt on your comment "dont ask us" as if I was suppose to know... i'm a beginner, I did not know that! And I tried to give you so many infos so you dont lose your time if you want to help, especially as after my own research I found many, many results for this "main class" and I tried a few solutions!
    Edited by: CupofTea on Apr 13, 2008 3:28 AM

  • Attempt to move main timeline from inside a movie clip breaks menu buttons.

    I am attempting to have the main timeline move from a stopped position over a movie clip to frame 1, where my start menu is.
    The code I'm using does move the timeline but in doing so it somehow breaks the 4 buttons I have in frame 1.
    My code in the movie clip:
    stop()
    function replayMovie(event:MouseEvent):void
    MovieClip(parent).gotoAndStop(1);
    Menu.addEventListener(MouseEvent.CLICK, replayMovie);
    My code in frame 1 of the main timeline:
    stop();
    function bo(event:MouseEvent):void
    gotoAndPlay(21)
    SoundMixer.stopAll()
    espesp.addEventListener(MouseEvent.CLICK, bo);
    function ho(event:MouseEvent):void
    gotoAndPlay(31)
    SoundMixer.stopAll()
    espeng.addEventListener(MouseEvent.CLICK, ho);
    function yo(event:MouseEvent):void
    gotoAndPlay(41)
    SoundMixer.stopAll()
    engesp.addEventListener(MouseEvent.CLICK, yo);
    function go(event:MouseEvent):void
    gotoAndPlay(51)
    SoundMixer.stopAll()
    engeng.addEventListener(MouseEvent.CLICK, go);
    The error output when I use my Menu button at the end of the movie clip.
    TypeError: Error #1009: Cannot access a property or method of a null object reference.
    at SSubjunctiveProjNewgrounds_fla::MainTimeline/frame1()
    at flash.display::MovieClip/gotoAndStop()
    at SSubjunctiveProjNewgrounds_fla::Esp_5/replayMovie()
    Any help would be greatly appreciated.

    For the sake of space, I'll leave out all the package declarations and class declarations and just talk about the functions.
    First, the Game class, it has two functions.  The first one is the constructor function and it launches at the beginning of the game:  First the Game function:
    public function Game():void
    //Game code goes here
    }//Game
    We want to listen for someone to click the mouse on the MenuPage, so lets create a new MenuPage and add a listener to the button contiained within it.
    public function Game():void
    menuPage = new MenuPage;
    menuPage.startButton.addEventListener(MouseEvent.CLICK, startGame);
    addChild(menuPage);
    }//Game
    You will notice that before I declared a variable var menuPage:MenuPage, but that's all I did was declare it.  I didn't really make a new instance of it, I just set aside space for it.  In the first line within the Game function, I'm actually turning that variable into a new instance of a MenuPage.
    We don't have a picture of this imaginary menuPage instance, but lets' assume that in our MenuPage MovieClip in the library, we created a SimpleButton called startButton.  Here, I'm adding an EventListener that patiently waits for someone to click that button.  Once we receive that event, Flash is told to call the startGame function.
    As you get better at this, you'll get into custom events, and the eventListener for the button will exist in the MenuPage class file, or even in another class file that you create just for the button.  Something like StartButton.as  But for now, we can do it as above.
    Now the startGame function:
              public function startGame(evt:MouseEvent):void
    //Remove the start Page
    //Add the zombie
    //Add the gun
    }//startGame
    And we'll replace those comments with real code.  It follows along with what we just did above.
    public function startGame(evt:MouseEvent):void
    zombie = new Zombie;
    addChild(zombie);
    gun = new Gun;
    addChild(gun);
    And we also want to clean up some by removing the menuPage, and throwing out the eventListener.
    public function startGame(evt:MouseEvent):void
    zombie = new Zombie;
    addChild(zombie);
    gun = new Gun;
    addChild(gun);
    menuPage.startButton.removeEventListener(MouseEvent.Click,startGame);
    removeChild(menuPage);
    }//startGame
    Now our Game class is complete.
    The Zombie Class
    public function zombieWalk(evt:Event):void
    this.addEventListener(Event.ENTER_FRAME,zombieWalk);
    this.x = this.x + 10;
    }//zombieWalk
    Notice we've added a function to the Zombie Class.
    The first function adds an EventListener to the zombie.  We can use the word this and actionScript knows we're talking about the zombie that the class is written for.  This listener fires off every frame.  If our FLA file is set to 12fps, then 12 times every second it will call on the zombieWalk function.
    The zombie walk function moves the zombie 10 pixels to the right every time the function is called.
    On a more advanced level, you'll want to add animation in the MovieClip to move the zombie legs.  You'll also want to use Timer events to space out how often the funtion fires and not ENTER_FRAME events.  And you'll want to use a static constant to establish how far the zombie moves.  We have it now set to 10 pixels, but that can get irritating if we want to change that value later.  But again, baby steps.
    And finally, the Gun class
    public function Gun():void
    this.addEventListener(MouseEvent.CLICK, fireGun);
    }//function
    public function fireGun(evt:MouseEvent):void
    this.gotoAndPlay(2);
    }//fireGun
    First we add an EventListener for when someone clicks on the gun.  Once this happens, the listener calls on the fireGun function.
    The fireGun function takes advantage of the frames within the Gun MovieClip.  Say we have three frames in the Gun MovieClip.  The first is just a picture of the gun.  The second is the gun with a flash coming out of the nozzle.  And the third is the gun at rest again.  The line this.gotoAndPlay(2) sends the gun to the second frame with the flash graphic.
    For this to work, each frame in the Gun MovieClip has to have some stop and play commands.
    But.. you said no code on our timeline!! Liar!
    I know.  This is the exception.  You will need basic stop() commands and gotoAndPlay commands to loop animations.  Any MovieClip that has more than one frame will need something to control it.
    So our Gun MovieCLip has the following:
    Frame 1: stop();
    Frame 2: no actionScript... and I mean nothing, not even the words, "no actionScript"
    Frame 3: gotoAndStop(1);
    This will loop the gun to the beginning and wait for the next time the user clicks the gun.
    Advanced features of the Gun class might include a Bullet.as sub-class that creates a bullet MovieClip to fly across the screen.  Sound to play when the shooting takes place.  Object collision detection to see if the bullet hits the target.  And a means by which a custom event will tell the Game.as class that a zombie has been hit and it should be removed from the stage.
    As you go down the rabbit hole of ActionScript 3, you will find yourself at a point where it's just a matter of getting the syntax right for all the built in functions and classes.  Arrays, Loaders, casting variable types.. all that stuff will come.
    I hope this has been helfpul.  It's been on my to-do list for a long time.  When I first started out, no one could provide me with basic answers for how all these classes and whatnot worked.  After teaching myself AS3 for 2 years and reading a gabillion books, I think I've gotten to a point where I'm pretty comfortable with it all.

  • Noobie question: How do I add something to the display list from a non-main class?

    I know how to use addChild() within the main class to add
    something to the stage display list and have it appear on the
    screen, but how do I add something to the stage display list from
    code within another class?
    So for example say I want to add some text (myTextField) to
    the stage's display list from within NotTheMainClass' code, could
    you give an example of the necessary code?

    you must pass a reference to a display list object or create
    one that's available to your class.
    there are so many ways to do this i'm not sure how you want
    to proceed. but you can create a globally available reference to
    the stage and root timeline:

  • How can I assign image file name from Main() class

    I am trying to create library class which will be accessed and used by different applications (with different image files to be assigned). So, what image file to call should be determined by and in the Main class.
    Here is the Main class
    import org.me.lib.MyJNIWindowClass;
    public class Main {
    public Main() {
    public static void main(String[] args) {
    MyJNIWindowClass mw = new MyJNIWindowClass();
    mw.s = "clock.gif";
    And here is the library class
    package org.me.lib;
    public class MyJNIWindowClass {
    public String s;
    ImageIcon image = new ImageIcon("C:/Documents and Settings/Administrator/Desktop/" + s);
    public MyJNIWindowClass() {
    JLabel jl = new JLabel(image);
    JFrame jf = new JFrame();
    jf.add(jl);
    jf.setVisible(true);
    jf.pack();
    I do understand that when I am making reference from main() method to MyJNIWindowClass() s first initialized to null and that is why clock could not be seen but how can I assign image file name from Main() class for library class without creating reference to Main() from MyJNIWindowClass()? As I said, I want this library class being accessed from different applications (means different Main() classes).
    Thank you.

    Your problem is one of timing. Consider this simple example.
    public class Example {
        public String s;
        private String message = "Hello, " + s;
        public String toString() {
            return message;
        public static void main(String[] args) {
            Example ex = new Example();
            ex.s = "world";
            System.out.println(ex.toString());
    }When this code is executed, the following happens in order:
    1. new Example() is executed, causing an object to constructed. In particular:
    2. field s is given value null (since no value is explicitly assigned.
    3. field message is given value "Hello, null"
    4. Back in method main, field s is now given value "world", but that
    doesn't change message.
    5. Finally, "Hello, null" is output.
    The following fixes the above example:
    public class Example {
        private String message;
        public Example(String name) {
            message = "Hello, " + name;
        public String toString() {
            return message;
        public static void main(String[] args) {
            Example ex = new Example("world");
            System.out.println(ex.toString());
    }

  • How move code from one class to other?

    I have a .fla file.
    There i have some keyframes with labels.
    On .fla file in property in Class field i adde MyMatching class.
    Also i have main code:
    package
         import flash.display.MovieClip;
         import flash.events.MouseEvent;
         import flash.text.TextField;
         public class MyMatching extends MovieClip
              var play_btn:MyButton = new MyButton();
              var kyky:MyTimer;
              public function MyMatching():void
                   welcomeScreen();
              public function welcomeScreen():void
                   stop();
                   trace("working");
                   play_btn.x = 210;
                   play_btn.y = 300;
                   addChild(play_btn);
                   play_btn.addEventListener(MouseEvent.CLICK, goToLevel_1);
              public function goToLevel_1(event:MouseEvent)
                   trace("level 1");
                   play_btn.visible = false;
                   gotoAndStop('Level1Screen');               
                   if (kyky==undefined) {
                        kyky = new MyTimer();
    And i have other class:
    package
         import flash.display.MovieClip;
         import flash.display.Stage;
         import flash.utils.getTimer;
         import flash.text.TextField;
         public class MyTimer extends Stage
              import flash.utils.getTimer;
              var gameStartTime:uint;
              var gameTime:uint;
              var gameTimeField:TextField;
              function mainFunction():void
                   gameTimeField = new TextField();
                   addChild(gameTimeField);
                   gameStartTime=getTimer();
                   gameTime=0;
                   addEventListener(Event.ENTER_FRAME,showTime);
              function showTime(event:Event)
                   gameTime=getTimer()-gameStartTime;
                   gameTimeField.text="You plaing: "+clockTime(gameTime);
              function clockTime(ms:int)
                   var seconds:int=Math.floor(ms/1000);
                   var minutes:int=Math.floor(seconds/60);
                   seconds-=minutes*60;
                   var timeString:String=minutes+":"+String(seconds+100).substr(1,2);
                   return timeString;
    Ho i can play code from class MyTimer in goToLevel_1 function(this function stand in my main class MyMatching) ?
    Thank you.

    First of all your MyTimer class is written wrong and sloppy.
    Why does it extend Stage? The most compact class to extend under the circumstances is Sprite.
    Also, it is very important to get into habit of datatype declarations. Not only it is good practice, in your case good compiler will throw error because although you return String, function doesn't return anything.
    In addition, it is important to declare namespaces like private public and protected inside classes. Not function clickTime():String but private function clockTime():String or public function clickTime():String.
    As for how to show your time elsewhere - you just need to create instnace of it and add it to disaply list:
    var myTimer:MyTimer = new MyTimer();
    addChild(myTimer);
    With that said, your class should look like this:
    package 
         import flash.display.Sprite;
         import flash.events.Event;
         import flash.display.MovieClip;
         import flash.utils.getTimer;
         import flash.text.TextField;
         public class MyTimer extends Sprite
              private var gameStartTime:uint;
              private var gameTime:uint;
              private var gameTimeField:TextField;
              public function MyTimer()
                   gameTimeField = new TextField();
                   addChild(gameTimeField);
                   gameStartTime = getTimer();
                   gameTime = 0;
                   addEventListener(Event.ENTER_FRAME,showTime);
              private function showTime(event:Event):void
                   gameTime = getTimer() - gameStartTime;
                   gameTimeField.text = "You playing: " + clockTime(gameTime);
              private function clockTime(ms:int):String
                   var seconds:int = Math.floor(ms / 1000);
                   var minutes:int = Math.floor(seconds / 60);
                   var timeString:String = minutes + ":" + String(seconds + 100).substr(1, 2);
                   return timeString;

  • How to run 1 or more main classes in a jar?

    Hi there,
    I have 2 or more main classes in a java project. How do I create more than one application entry point in my MANIFEST.INF? I create my jar file from my java project using Eclipse, and it asked me to "Select the class of the application entry point". I was only able to select one main class.
    I noticed the MANIFEST.INF file that eclipse generated looks like:
    Manifest-Version: 1.0
    Main-Class: Automobile
    When I tried to run my other classes not specify in the MANIFEST.INF it failed and only look for the Automobile class:
    java -jar /tmp/Auto.jar TestMe

    Your app. can have as many entry points as you like, as atmguy demonstrated. But you can only specify one in the manifest,which - if you think about it - makes perfect sense. How is the machine to determine - from you clicking on the jar - which entry point you meant to invoke?

  • How can i execute Spaces API in java main class?

    Hi
    I am able to execute Spaces API through portal application. However if i try to execute it in java main class, its throwing an exception
    "SEVERE: java.io.FileNotFoundException: .\config\jps-config.xml (The system cannot find the path specified)"
    oracle.wsm.common.sdk.WSMException: WSM-00145 : Keystore location or path can not be null or empty; it must be configured through JPS configuration or policy configuration override.
    How can i set this path, so that i can execute Spaces API from java main class.
    Need this main class to configure in cron job, to schedule a task.
    Regards
    Raj

    Hi Daniel
    Currently i have implemented create functionality in my portal application using Spaces API, which is working fine. Now the requirement is, i need to implement a "Cron Job" to schedule a task, which will execute to create space(for example once in a week). Cron job will execute only the main method. So I have created java main class, in which I have used Spaces API to perform create space operation. Then it was giving exception.
    Later I understood the reason, as I am executing the Space API with a simple JSE client, its failing since a simple java program has no idea of default-keystore.jks, jps-config.xml, Security Policy. Hence i have included those details in main class. Now I am getting new error,
    SEVERE: WSM-06303 The method "registerListener" was not called with required permission "oracle.wsm.policyaccess"
    For your reference i have attached the code below, please help. How can i use Spaces API in java main method(i mean public static void main(String[] args) by giving all required information.
        public static void main(String[] args) throws InstantiationException,
                                                      GroupSpaceWSException,
                                                      SpacesException {
            Class2 class2 = new Class2();
            GroupSpaceWSContext context = new GroupSpaceWSContext();
            FactoryFinder.init(null);
            context.setEndPoint("http://10.161.226.30/webcenter/SpacesWebService");
            context.setSamlIssuerName("www.oracle.com");
            context.setRecipientKeyAlias("orakey");
            Properties systemProps = System.getProperties();
            systemProps.put("java.security.policy","oracle/wss11_saml_or_username_token_with_message_protection_client_policy");
            systemProps.put("javax.net.ssl.trustStore","C:\\Oracle\\Middleware11.1.7\\wlserver_10.3\\server\\lib\\cacerts.jks");
    systemProps.put("oracle.security.jps.config","C:\\Oracle\\Middleware11.1.7\\user_projects\\domains\\workspace\\system11.1.1.7.40.64.93\\DefaultDomain\\config\\fmwconfig\\jps-config.xml");
            systemProps.put("javax.net.ssl.keyStore",C:\\Oracle\\Middleware11.1.7\\user_projects\\domains\\workspace\\system11.1.1.7.40.64.93\\DefaultDomain\\config\\fmwconfig\\consumer.jks");
            systemProps.put("javax.net.ssl.keyStorePassword", "Test12");
            System.setProperties(systemProps);
            GroupSpaceWSClient groupSpaceWSClient;
            try {
                groupSpaceWSClient = new GroupSpaceWSClient(context);
                System.out.println("URL: " +
                                   groupSpaceWSClient.getWebCenterSpacesURL());
                //delete the Space
                List<String> groupSpaces = groupSpaceWSClient.getGroupSpaces(null);
                System.out.println("GroupSpaces:: " + groupSpaces.size());
            } catch (Exception e) {
    Regards
    Raj

  • HOW TO SHOW JLABEL IN JDIALOG  WHILE MAIN CLASS IS SLEEPING? (CODE EDITED)

    I have done a code below and it is working but the only problem is when the main program start to sleep by use Thread.sleep(10000) for 10 secs and it will prompt out a JDialog contain JLabel inside it with message "Please wait.... program is sleeping.". And when the thread ends the JDialog will auto disappear and it back to the main program.
    I am using TimerTask to run the JDialog while the main class is sleeping.
    The problem is:
    When the JDialog appear, it doesn't show the component so I only be able to view the JDialog window without contain any component. I already use container to add the component into JDialog but it still doesn't show. I only be able to see the JDialog window contain empty component when the main window is sleeping.
    How to make the components also appear in the JDialog when the main program is sleeping?
    Below is the code pls have a try:
    public class testThread extends JFrame
    public static void main(String args[])
    new testThread();
    public testThread()
    * other code not related is here
    // WHEN USER PRESS startThreadBtn it will make the application sleep for 15 secs and pop out JDialog window contain JLabel msg wrote "Please wait... program is sleeping"
    JButton startThreadBtn = new JButton("Start Thread");
    startThreadBtn.addActionListener
    ( new ActionListener()
    public void actionPerformed(ActionEvent e)
    try{
    doTask a = new doTask();
    java.util.Timer thisTimer = new java.util.Timer();
    thisTimer.schedule(a, 0); // when this code executed, will pop out a JDialog containing JLabel message --> refer to class doTask
    Thread.sleep(10000);
    a.terminate()
    thisTimer.cancel();
    catch(InterruptedException ie)
    ie.printStackTrace();
    public class doTask extends TimerTask
    JDialog infoDialog;
    public void run()
    infoDialog = new JDialog(true);
    infoDialog.setTitle("Please Wait!!!");
    Container c = infoDialog.getContentPane();
    c.setLayout(new BorderLayout());
    JLabel infoLbl = new JLabel("Please Wait... Program is sleeping!!!", JLabel.CENTER);
    c.add(infoLbl, BorderLayout.CENTER);
    infoDialog.setVisible(true);
    public void terminate()
    infoDialog.setVisible(false);
    infoDialog.dispose();
    Why I can not show the JLabel inside the JDialog? The JDialog window is opened but it contain empty component.
    PLEASE HELP ME .... THIS IS VERY URGENT

    I have the complete code and it is working. I can posted it here but it will be longer thats the reason why i shortened the code in here and displaying the important information.
    The problem is the JDialog only will display the JLabel after the thread woke up. Thats mean it is too late for me to display the information. I need the JLabel containing the information to be displayed when the thread is sleeping....
    Below is the complete code:
    you can have a try to recompile it and u will understand what i mean. It is working and the only problem is JLabel component did not displayed in the JDialog.
    Just copy the whole code into the txt file and save as testThread.java and recompile it. Inside the code has one inner class extends TimerTask call "doTask"
    THE CODE START BELOW:
    import java.util.*;
    import java.lang.*;
    import javax.swing.*;
    import java.awt.event.*;
    import java.awt.*;
    public class testThread extends JFrame
    public static java.util.Timer thisTimer;
    public static doTask a;
    public static testThread tT;
    public Container cMain;
    public Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    public JButton exitBtn;
    public JButton startThreadBtn;
    /** Creates a new instance of testThread */
    public static void main(String args[])
    new testThread();
    public testThread()
    //System.out.println("Start to call JDialog");
    tT = this;
    int realW = (int)screenSize.getWidth();
    int realH = (int)screenSize.getHeight();
    int mainW = 500;
    int mainH = 300;
    exitBtn = new JButton("EXIT");
    exitBtn.setBounds((int)((500-100)/2), (int)((300-50)/5), 100, 50);
    exitBtn.addActionListener
    new ActionListener()
    public void actionPerformed(ActionEvent e)
    System.exit(0);
    startThreadBtn = new JButton("Start Thread");
    startThreadBtn.setBounds((int)((500-200)/2), (int)((300-50)/5*4), 200, 50);
    startThreadBtn.addActionListener
    new ActionListener()
    public void actionPerformed(ActionEvent e)
    try
    System.out.println("Start to call JDialog");
    a = new doTask();
    thisTimer = new java.util.Timer();
    thisTimer.schedule(a, 0);
    System.out.println("Thread start to sleep first 10 secs");
    Thread.sleep(10000);
    System.out.println("Thread start to sleep second 5 secs");
    Thread.sleep(5000);
    System.out.println("Thread Wake Up");
    a.terminate();
    thisTimer.cancel();
    catch(InterruptedException ie)
    ie.printStackTrace();
    cMain = this.getContentPane();
    cMain.setLayout(null);
    cMain.add(exitBtn);
    cMain.add(startThreadBtn);
    setBounds((int)((realW-mainW)/2), (int)((realH-mainH)/2), mainW, mainH);
    setVisible(true);
    public class doTask extends TimerTask
    JDialog infoDialog;
    public void run()
    System.out.println("TASK IS RUNNING");
    int screenWidth = (int)screenSize.getWidth();
    int screenHeight = (int)screenSize.getHeight();
    int w = 300;
    int h = 200;
    infoDialog = new JDialog(tT, true);
    infoDialog.setTitle("Please Wait!!!");
    Container c = infoDialog.getContentPane();
    c.setLayout(new BorderLayout());
    JLabel infoLbl = new JLabel("Please Wait... Program is sleeping!!!", JLabel.CENTER);
    c.add(infoLbl, BorderLayout.CENTER);
    infoDialog.setBounds((int)((screenWidth-w)/2), (int)((screenHeight-h)/2), w, h);
    infoDialog.setVisible(true);
    public void terminate()
    infoDialog.setVisible(false);
    infoDialog.dispose();
    this.cancel();
    ******************************************************************************************************************************************************************************************************************************************

  • How do I move just the Video to the timeline in Premiere cs6, not the audio?

    how do I move Just the Video to  the timeline in Premiere, not the audio?

    Hi there! I'd try posting this over in the official Premiere Pro forum: http://forums.adobe.com/community/premiere/premierepro_current?view=overview
    The Premiere experts over there are more likely to help you out with your problem

  • How do you move a sound clip in the timeline?

    I have not had this problem before. I have put many songs into the timeline, and repositioned them. Today I pulled up a project and attempted to reposition a song to fit in better with the clip, and I'm unable to do so. I can't select the song, or anything else. Obviously I have set or locked up this track, and I can't figure out how to unlock if that is what I have done. I have 6 songs on that track, Audio track 2, and I can't reposition any of them. I can't even remove them from that track. What am I doing wrong?

    Hunt, most of my music files, over 9000 songs, are mostly mp3 files and a few are wma, and because of copyright laws I wouldn't use them in a commercial project I'm working on anyway. When I am working on a project for a client I will generally use higher quality WAV files. This project was being done just to learn some new techniques, gain some more experience with PPCS4, and expand my knowledge with the program. I have this huge number of music files and styles to work with, so I can do a great deal of experimentation to see what different songs can do to the mood of the video.
    As a test, I did put the exact same songs into the timeline on a different audio track. The problem track is audio 2, and I duplicated those songs on audio 3. I did the exact same editing. I faded them in and out the same as before. Split one song into 3 sections had parts of it come in and out over a video section of 9 minutes duration. They are working perfectly. I was just working on one section of that project a half hour ago, and I was still able to select and move each of the four songs on that track any way that I wanted to. However, the track just above it in that same timeline, Track 2, is still frozen.
    Hunt, just a moment ago I solved my problem. Still not being that familiar with the program, two days ago I know that I was playing with all of the controls, and I obviously hit one of them without knowing one of its side effects. I hit the show "show track keyframes". I'm sure that you know it, but I didn't realize that when that function is selected, you can't do much else with the track but play with those keyframe. Even though I didn't have the track locked, in the traditional way, it was still, for all practicall reasons, locked. I unchecked that function and now everything is back to normal again on that track.
    Something very simple, as many things turn out to be when you understand it. However, maybe someone else will make the same mistake, and my posting here will help them.
    I will use your suggestions for using .WAV files. Thank you again. 
    Terry Lee Martin
    Date: Mon, 7 Sep 2009 14:29:37 -0600
    From: [email protected]
    To: [email protected]
    Subject: How do you move a sound clip in the timeline?
    Terry,
    What is the purpose of using the .WMA files? I'm sure that you have a good reason, but they can be problematic, at best. I only use them as a trasfer medium, when I need to get a DD 5.1 SS soundtrack into Audition for editing. There, I break them out into 6 discrete .WAV files, edit in Multi-track Mode and then usually Export as the 6 discrete WAV's to be encoded to DTS, or similar.
    If you do not have a compelling reason for using the .WMA, try PCM/WAV @ 48KHz 16-bit and see if the issues go away.
    Good luck, and let us know how it goes please,
    Hunt
    >

  • How to create an Area and place main windows in scripts

    How to create an Area and place main windows in scripts ?

    hi prasad,
    jst create a page first and define page windows.
    here u can specicify whether the window is main or secondary.
    to adjust the window goto form  painter  do the adjustment.

  • How to set main class in netbeans?

    i have a class with a main method that i want to set as my main class, but i dont have the source for it. how can i set it as my main class in netbeans?
    thanks!

    ya i can run in from the comand prompt, Excellent.
    and yeah your right it should be easy. It IS easy. You just did it.
    but for the life of me i cant figure it out. What can't you figure out? How to do the same thing in NetBeans?
    i dont know where else to turn.Let me suggest the NetBeans docs. I'm sure they've got something in there to tell users how to run a .class with a main() method.
    Better yet, keep doing things on the command line until you're knowledgable about NetBeans and leave the IDE alone until you know Java. Two mysteries at once is too much.
    %

  • How to populate class based on value of seed class attribute instead of doing reg/script discovery again?

    I have a seed class. I populate that seed class using script discovery and it has attribute 1,2 and 3. Those 3 attributes are all populated via the script discovery too.
    Now I created a new application class which use the seed class as target. The criteria is if attribute 1 equal to a certain value. Here comes the question, how to create this discovery? In authoring console the options are registry discovery, script discovery
    and custom discovery. Since attribute 1 is already populated in seed class using script, I think I can use that instead of doing another script discovery for the new application class. 
    However I didn't find a way to do that. Any suggestions?

    I pasted the base seed MP as following.
    The base MP has two classes: "MyBaseMP.MyApps.Candidates" and "MyBaseMP.MyApps".
    "MyBaseMP.MyApps.Candidates" is created from "Windows.Computer" class. Then it is discovered by "MyBaseMP.MyApps.Candidates.RegDiscvoery". 
     "MyBaseMP.MyApps" is created from "Windows.Local.Application" class. It is then discovered by "MyBaseMP.MyApps.ScriptDiscovery". This script discovery is targeting on "MyBaseMP.MyApps.Candidates" class. The script
    also populated 5 attribute for  "MyBaseMP.MyApps" and they are APPLICATION, LOB, GROUP, ENVIRONMENT and STATE.
    This base MP works as expected.
    Now I want to create a new custom MP. The new MP has a new class "MyFinanceApps" created from  "MyBaseMP.MyApps". The service model is very simple just like following
      <TypeDefinitions>
        <EntityTypes>
          <ClassTypes>
            <ClassType ID="MyFinanceApps" Accessibility="Internal" Abstract="false" Base="MyBaseMP!MyBaseMP.MyApps" Hosted="true" Singleton="false" />
          </ClassTypes>
        </EntityTypes>
      </TypeDefinitions>
    I want to populate this class if LOB attribute echos to "Finance". How to make this discovery then? Sure I can create another script discovery but since those values already discovered in the seed class, is there any way I can use them?
    The MyBaseMP is as following:
    <ManagementPack ContentReadable="true" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
      <Manifest>
        <Identity>
          <ID>MyBaseMP</ID>
          <Version>1.0.0.0</Version>
        </Identity>
        <Name>MyBaseMP</Name>
        <References>
          <Reference Alias="SC">
            <ID>Microsoft.SystemCenter.Library</ID>
            <Version>6.1.7221.0</Version>
            <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
          </Reference>
          <Reference Alias="Windows">
            <ID>Microsoft.Windows.Library</ID>
            <Version>6.1.7221.0</Version>
            <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
          </Reference>
          <Reference Alias="Health">
            <ID>System.Health.Library</ID>
            <Version>6.1.7221.0</Version>
            <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
          </Reference>
          <Reference Alias="System">
            <ID>System.Library</ID>
            <Version>6.1.7221.0</Version>
            <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
          </Reference>
        </References>
      </Manifest>
      <TypeDefinitions>
        <EntityTypes>
          <ClassTypes>
            <ClassType ID="MyBaseMP.MyApps" Accessibility="Internal" Abstract="false" Base="Windows!Microsoft.Windows.LocalApplication" Hosted="true" Singleton="false">
              <Property ID="APPLICATION" Type="string" Key="true" CaseSensitive="false" Length="256" MinLength="0" />
              <Property ID="GROUP" Type="string" Key="false" CaseSensitive="false" Length="256" MinLength="0" />
              <Property ID="LOB" Type="string" Key="false" CaseSensitive="false" Length="256" MinLength="0" />
              <Property ID="STATE" Type="string" Key="false" CaseSensitive="false" Length="256" MinLength="0" />
              <Property ID="APP_TYPE" Type="string" Key="false" CaseSensitive="false" Length="256" MinLength="0" />
              <Property ID="ENVIRONMENT" Type="string" Key="false" CaseSensitive="false" Length="256" MinLength="0" />
            </ClassType>
            <ClassType ID="MyBaseMP.MyApps.Candidates" Accessibility="Internal" Abstract="false" Base="Windows!Microsoft.Windows.Computer" Hosted="false" Singleton="false" />
          </ClassTypes>
        </EntityTypes>
      </TypeDefinitions>
      <Monitoring>
        <Discoveries>
          <Discovery ID="MyBaseMP.MyApps.Candidates.RegDiscovery" Enabled="true" Target="Windows!Microsoft.Windows.Computer" ConfirmDelivery="false" Remotable="true" Priority="Normal">
            <Category>Discovery</Category>
            <DiscoveryTypes>
              <DiscoveryClass TypeID="MyBaseMP.MyApps.Candidates" />
            </DiscoveryTypes>
            <DataSource ID="DS" TypeID="Windows!Microsoft.Windows.FilteredRegistryDiscoveryProvider">
              <ComputerName>$Target/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
              <RegistryAttributeDefinitions>
                <RegistryAttributeDefinition>
                  <AttributeName>FoundAppKey</AttributeName>
                  <Path>SOFTWARE\MyCompany\SystemCenter</Path>
                  <PathType>0</PathType>
                  <AttributeType>0</AttributeType>
                </RegistryAttributeDefinition>
              </RegistryAttributeDefinitions>
              <Frequency>180</Frequency>
              <ClassId>$MPElement[Name="MyBaseMP.MyApps.Candidates"]$</ClassId>
              <InstanceSettings>
                <Settings>
                  <Setting>
                    <Name>$MPElement[Name="Windows!Microsoft.Windows.Computer"]/PrincipalName$</Name>
                    <Value>$Target/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</Value>
                  </Setting>
                </Settings>
              </InstanceSettings>
              <Expression>
                <SimpleExpression>
                  <ValueExpression>
                    <XPathQuery Type="String">Values/FoundAppKey</XPathQuery>
                  </ValueExpression>
                  <Operator>Equal</Operator>
                  <ValueExpression>
                    <Value Type="String">true</Value>
                  </ValueExpression>
                </SimpleExpression>
              </Expression>
            </DataSource>
          </Discovery>
          <Discovery ID="MyBaseMP.MyApps.ScriptDiscovery" Enabled="true" Target="MyBaseMP.MyApps.Candidates" ConfirmDelivery="false" Remotable="true" Priority="Normal">
            <Category>Discovery</Category>
            <DiscoveryTypes>
              <DiscoveryClass TypeID="MyBaseMP.MyApps" />
            </DiscoveryTypes>
            <DataSource ID="DS" TypeID="Windows!Microsoft.Windows.TimedScript.DiscoveryProvider">
              <IntervalSeconds>300</IntervalSeconds>
              <SyncTime />
              <ScriptName>MyApps.Script.Discovery.vbs</ScriptName>
              <Arguments>$MPElement$ $Target/Id$ $Target/Property[Type="Windows!Microsoft.Windows.Computer"]/DNSName$ $MPElement$</Arguments>
              <ScriptBody><![CDATA[
    Option Explicit
    ' Definitions for Registry Walking
    Const HKEY_LOCAL_MACHINE = &H80000002
    Dim oReg
    Dim arrValues, arrSubKeys
    Dim strComputer, strKeyPath, subkey, strProperty, strArrValue
    ' Define where the App Subkeys are located, strKeyPath MUST end with a slash!
    strKeyPath = "SOFTWARE\MyCompany\SystemCenter\"
    strComputer = "."
    Dim WshShell, bKey
    ' Definitions for SCOM Discovery
    Dim oAPI
    Set oAPI = CreateObject("MOM.ScriptAPI")
    Dim oArgs
    Set oArgs = WScript.Arguments
    ' Check for the required script arguments.
    if oArgs.Count < 3 Then
        ' If the script is called without the required arguments,
        ' create an information event and then quit. 
        Call oAPI.LogScriptEvent(WScript.ScriptName,101,0, _
            "script was called with fewer than three arguments (" & oArgs.Count & " arguments) and was not executed.")
        Wscript.Quit -1
    End If
    Dim SourceID, ManagedEntityId, TargetComputer
    SourceID = oArgs(0) ' The GUID of the discovery object that launched the script.
    ManagedEntityId = oArgs(1) ' The GUID of the computer class targeted by the script.
    TargetComputer = oArgs(2) ' The FQDN of the computer targeted by the script.
    Dim oDiscoveryData, oInst
    Set oDiscoveryData = oAPI.CreateDiscoveryData(0, SourceID, ManagedEntityId)
    ' Functions for Registry Walking
    ' Create Shell Object
    Set WshShell = WScript.CreateObject("WScript.Shell")
    ' Create WMI Object, and check for existence
    On Error Resume Next
    Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & _ 
        strComputer & "\root\default:StdRegProv")
    Select Case Err.Number
      Case 0:
    'Error Code 0 = 'success'
    'Wscript.Echo "DEBUG:  Opened WMI"
      Case Else
    'Any other error code is a failure code
    Notify("ERROR:  Can not open WMI")
    Wscript.Quit 1
    End Select
    On Error Goto 0 'Turn error reporting back on
    ' Check to ensure first level reg key exists
    If RegistryKeyExists("HKLM\" & strKeyPath) Then
    If oReg.EnumKey(HKEY_LOCAL_MACHINE, strKeyPath, arrSubKeys) > 0 Then
    ' We have NO subkeys
    Notify("ERROR: No Subkeys defined")
    Wscript.Quit 1
    End if
    Else
    Notify("DEBUG: Key [" & strKeyPath & "] doesn't exist")
    Wscript.Quit 1
    End If
    'Check size of arrSubKeys for sub keys
    If Not IsArray(arrSubKeys) Then
    ' We have NO subkeys
    Notify("ERROR: No Subkeys defined")
    Wscript.Quit 1
    End If
    For Each subkey In arrSubKeys
    'Wscript.Echo "DEBUG: subkey = " & subkey
    strProperty = ""
    'Check to ensure Subkey Exists
    If RegistryKeyExists("HKLM\" & strKeyPath & "\" & subkey & "\") Then
    'Get Values under each key
    'Wscript.Echo "DEBUG:  Create OBJECT"
    ' Discovered the application. Create the application instance.
    Set oInst = oDiscoveryData.CreateClassInstance("$MPElement[Name='MyBaseMP.MyApps']$")
    ' Define Property
    Call oInst.AddProperty("$MPElement[Name='Windows!Microsoft.Windows.Computer']/PrincipalName$", TargetComputer)
    If RegistryValueExists("HKLM\" & strKeyPath & "\" & subkey & "\ENVIRONMENT") Then
    'Wscript.Echo "DEBUG: Value " & strArrValue & " found"
    strProperty = WshShell.RegRead("HKLM\" & strKeyPath & "\" & subkey & "\ENVIRONMENT")
    Else
    'Wscript.Echo "DEBUG: value " & strArrValue & " NOT found"
    strProperty = "NONEXISTANT"
    End If
    Call oInst.AddProperty("$MPElement[Name='MyBaseMP.MyApps']/ENVIRONMENT$", strProperty)
    If RegistryValueExists("HKLM\" & strKeyPath & "\" & subkey & "\STATE") Then
    'Wscript.Echo "DEBUG: Value " & strArrValue & " found"
    strProperty = WshShell.RegRead("HKLM\" & strKeyPath & "\" & subkey & "\STATE")
    Else
    'Wscript.Echo "DEBUG: value " & strArrValue & " NOT found"
    strProperty = "NONEXISTANT"
    End If
    Call oInst.AddProperty("$MPElement[Name='MyBaseMP.MyApps']/STATE$", strProperty)
    If RegistryValueExists("HKLM\" & strKeyPath & "\" & subkey & "\APP_TYPE") Then
    'Wscript.Echo "DEBUG: Value " & strArrValue & " found"
    strProperty = WshShell.RegRead("HKLM\" & strKeyPath & "\" & subkey & "\APP_TYPE")
    Else
    'Wscript.Echo "DEBUG: value " & strArrValue & " NOT found"
    strProperty = "NONEXISTANT"
    End If
    Call oInst.AddProperty("$MPElement[Name='MyBaseMP.MyApps']/APP_TYPE$", strProperty)
    If RegistryValueExists("HKLM\" & strKeyPath & "\" & subkey & "\LOB") Then
    'Wscript.Echo "DEBUG: Value " & strArrValue & " found"
    strProperty = WshShell.RegRead("HKLM\" & strKeyPath & "\" & subkey & "\LOB")
    Else
    'Wscript.Echo "DEBUG: value " & strArrValue & " NOT found"
    strProperty = "NONEXISTANT"
    End If
    Call oInst.AddProperty("$MPElement[Name='MyBaseMP.MyApps']/LOB$", strProperty)
    If RegistryValueExists("HKLM\" & strKeyPath & "\" & subkey & "\GROUP") Then
    'Wscript.Echo "DEBUG: Value " & strArrValue & " found"
    strProperty = WshShell.RegRead("HKLM\" & strKeyPath & "\" & subkey & "\GROUP")
    Else
    'Wscript.Echo "DEBUG: value " & strArrValue & " NOT found"
    strProperty = "NONEXISTANT"
    End If
    Call oInst.AddProperty("$MPElement[Name='MyBaseMP.MyApps']/GROUP$", strProperty)
    'Set Application Name
    'Wscript.Echo "SET APPLICATION NAME: " & subkey
    Call oInst.AddProperty("$MPElement[Name='MyBaseMP.MyApps']/APPLICATION$", subkey)
    'Wscript.Echo "SUBMIT INSTANCE"
       Call oDiscoveryData.AddInstance(oInst)
    Else
    ' Registry Sub Key does not exist
    Notify("ERROR: A found registry subkey, [" & subkey & "] doesn't actually exist")
    End If
    Next
    ' Submit the discovery data for processing.
    Call oAPI.Return(oDiscoveryData) 
    ' A helper function to remove the extension from a file name.
    Function StripExtension (sFile)
    StripExtension = Left(sFile, Len(sFile) -4)
    End Function
    '* Registry Value Exists (Function)
    '* Returns a value (true / false)
    'This function checks to see if a passed registry value exists, and
    'returns true if it does
    'Requirements: The registry value you are looking for (RegistryValue)
    Function RegistryValueExists (RegistryValue)
      'Ensure the last character is NOT a backslash (\) - if it is, we aren't looking for a value
      If (Right(RegistryValue, 1) = "\") Then
        'It's not a registry value we are looking for
    'Wscript.Echo "No slash....returning false"
        RegistryValueExists = false
      Else
        'If there isnt the value when we read it, it will return an error, so we need to resume
        On Error Resume Next
        'Try reading the value
        WshShell.RegRead RegistryValue
        'Catch the error
        Select Case Err.Number
          Case 0:
            'Error Code 0 = 'success'
            RegistryValueExists = true
          Case Else
            'Any other error code is a failure code
            RegistryValueExists = false
        End Select
        'Turn error reporting back on
        On Error Goto 0
      End If
    End Function
    '* Registry Key Exists (Function)
    '* Returns a value (true / false)
    'This function checks to see if a passed registry key exists, and
    'returns true if it does
    'Requirements: The registry key you are looking for (RegistryKey)
    'Note: RegistryKey MUST end in a backslash (\), or FALSE will be returned
    Function RegistryKeyExists (RegistryKey)
       Dim errDescription
      'Ensure the last character is a backslash (\) - if it isn't, we aren't looking for a key
      If (Right(RegistryKey, 1) <> "\") Then
        'It's not a registry key we are looking for
        RegistryKeyExists = false
      Else
        'If there isnt the key when we read it, it will return an error, so we need to resume
        On Error Resume Next
        'Try reading the key
        WshShell.RegRead RegistryKey
        'Catch the error
    ' Wscript.Echo "Err.Number = " & Err.Number
    ' Wscript.Echo "Err.Message = " & Err.Message
        Select Case Err.Number
          'Error Code 0 = 'success'
          Case 0:
            RegistryKeyExists = True
            'Wscript.Echo "DEBUG: Case 0: Key Exists"
          'This checks for the (Default) value existing (but being blank); as well as key's not existing at all (same error code)
          Case &h80070002:
            'Read the error description, removing the registry key from that description
            ErrDescription = Replace(Err.description, RegistryKey, "")
            'Clear the error
            Err.clear
            'Read in a registry entry we know doesn't exist (to create an error description for something that doesnt exist)
            WshShell.RegRead "HKEY_ERROR\"
            'The registry key exists if the error description from the HKEY_ERROR RegRead attempt doesn't match the error
            'description from our RegistryKey RegRead attempt
            If (ErrDescription <> Replace(Err.description, "HKEY_ERROR\", "")) Then
              RegistryKeyExists = true
            Else
              RegistryKeyExists = false
            End If
          'Any other error code is a failure code
          Case Else:
            RegistryKeyExists = false
        End Select
        'Turn error reporting back on
        On Error Goto 0
      End If
    End Function
    Function Notify(strNotifyMessage)
    Call oAPI.LogScriptEvent(Wscript.Name,101,0, strNotifyMessage)
    End Function]]></ScriptBody>
              <TimeoutSeconds>60</TimeoutSeconds>
            </DataSource>
          </Discovery>
        </Discoveries>
      </Monitoring>
      <LanguagePacks>
        <LanguagePack ID="ENU" IsDefault="true">
          <DisplayStrings>
            <DisplayString ElementID="MyBaseMP">
              <Name>MyBaseClass</Name>
            </DisplayString>
            <DisplayString ElementID="MyBaseMP.MyApps">
              <Name>MyBaseMP.MyApps</Name>
            </DisplayString>
            <DisplayString ElementID="MyBaseMP.MyApps" SubElementID="APPLICATION">
              <Name>APPLICATION</Name>
            </DisplayString>
            <DisplayString ElementID="MyBaseMP.MyApps.Candidates">
              <Name>MyBaseMP.MyApps.Candidates</Name>
            </DisplayString>
            <DisplayString ElementID="MyBaseMP.MyApps.Candidates.RegDiscovery">
              <Name>MyBaseMP.MyApps.Candidates.RegDiscovery</Name>
            </DisplayString>
            <DisplayString ElementID="MyBaseMP.MyApps.ScriptDiscovery">
              <Name>MyBaseMP.MyApps.ScriptDiscovery</Name>
              <Description />
            </DisplayString>
          </DisplayStrings>
        </LanguagePack>
      </LanguagePacks>
    </ManagementPack>

  • How to manage over 200 main classes effectively?

    Where can I found some experience about a big System?
    What's a main class looks alike?
    I got a GUI--subGui--sub-subGUI----...
    and configuration--subconfiguration--subsubconfiguraiton...
    and others.
    How do I connect them together?

    The first thing to do is look at whether or not you actually need the 200+ classes ? Don't worry of the answer is yes. See if you cut down on the number of classes - there may already be standard classes available.
    That should leave you a smaller number of classes. The short answer to your questions is packages. Group the classes into several chunks of logical component or layers. There should be commonalities between the different views and configurations which lend towards a logical partitioning.
    You may want to look at the Struts architecture for guides towards a cohesive web-tier design. Although targeted towards the JSP-Servlet technologies, the Model-View-Controller paradigm applies to the your GUI app.

Maybe you are looking for