New property from code.

Hi,
I create a resource with two custom properties using the code below:
"code snippet removed."
When I go to <b>details</b> for the resource, the properties do show up.
When I go to Content Management > Global Services > Propert Metadata > Properties, the property and namespace do not show up.
Could anyone pl. advice.
Rgds,
Sunil
Message was edited by: Sunil Rai

Hi Sunil, Welcome to SDN!
   I think the <i>PropertyConfigurationService</i> does not allow the creation of properties which are stored in the configuration.
Regards,
SK.

Similar Messages

  • Setting the name of a new object from a string

    Is there anyway I can set the object name of a newly created
    object from a string?
    eg.
    (the code below generates a compile time error on the
    variable declaration)
    public function addText(newTxt:String, txt:String,
    format:TextFormat):void {
    var
    this[newTxt]:TextField = new TextField();
    this[newTxt].autoSize = TextFieldAutoSize.LEFT;
    this[newTxt].background = true;
    this[newTxt].border = true;
    this[newTxt].defaultTextFormat = format;
    this[newTxt].text = txt;
    addChild(this[newTxt]);
    called using>
    addText("mytxt", "test text", format);
    I could then reference the object later on without using
    array notation using mytxt.border = false; for example
    There are many a time when I want to set the name of a new
    object from a string.
    In this example I have a function that adds a new text object
    to a sprite.
    The problem is, if I call the function more than once then
    two textfield objects will exist, both with the same name. (either
    that or the old one will be overwritten).
    I need a way of setting the name of the textfield object from
    a string.
    using
    var this[newTxt]:TextField = new TextField()
    does not work, If I take the "var" keyword away it thinks it
    a property of the class not an object.
    resulting in >
    ReferenceError: Error #1056: Cannot create property newTxt on
    Box.
    There must be a way somehow to declare a variable that has
    the name that it will take represented in a string.
    Any help would be most welcome
    Thanks

    Using:
    var this[newTxt]:TextField = new TextField()
    is the right approach.
    You can either incrment an instance variable so that the name
    is unique:
    newTxt = "MyName" + _globalCounter;
    var this[newTxt]:TextField = new TextField();
    globalCounter ++;
    Or store the references in an array:
    _globalArray.push(new TextField());
    Tracy

  • Updating a Label content from code behind using dispatcher

    hi,
    I am trying to update a label's content from code behind.
    This part of the code is running in background worker. I wrote the following code to update a label's content:
    volumecontrol.Dispatcher.BeginInvoke(new Action(() =>
    volumecontrol.Content = volumeupdate;
     i tried using both BeginInvoke and Invoke but the application exits with the error:
    System.InvalidOperationException' occurred in WindowsBase.dll
    Using Invoke works when updating the UI from another thread but it not working in this case:
    Pls help.
    Thanks,
    Shaleen
    TheHexLord

    When you do that new action stuff you're capturing variables.
    If that means you grab a control's value across from outside the {} then you're trying to capture the variable on the background thread.  If that's some sort of control you're messing with then that will cause a problem as they have thread affinity.
    Because you don't want to be blocking the UI thread at all you should use BeginInvoke rather than Invoke.
    To explain this clearly - and provide a way you could use to explore what's going on and learn  - we need a separate thread which can be done using Task.Factory.StartNew.
    This bit of code allows you to put code onto a background thread:
    Task.Factory.StartNew(() =>
    // On a separate thread to the UI here
    Create a new solution, add a textBlock and Button:
    <StackPanel>
    <TextBlock Name="tb"/>
    <Button Name="btn" Click="btn_Click">Change the text</Button>
    </StackPanel>
    Then in the button click you can play around with what's going on.
    Just to be clear.
    That textblock is a control and it is created on the UI thread.
    To get from that task thread back to the UI thread you should use Dispatcher.BeginInvoke.  With no control name.
    Let's start with a broken piece of code:
    private void btn_Click(object sender, RoutedEventArgs e)
    Task.Factory.StartNew(() =>
    string thingummy = tb.Text + "Banana";
    Dispatcher.BeginInvoke(new Action(() => { tb.Text = thingummy; }));
    When you click the button it'll error because when you access tb.Text there you do so on a background thread and tb has thread affinity.
    This, however, will work OK.
    Task.Factory.StartNew(() =>
    Dispatcher.BeginInvoke(new Action(() => { tb.Text = tb.Text + "Banana"; }));
    That's OK because the Action runs on the UI thread where tb was created and all is good.
    Anonymous methods and actions capture variables ( you can google that for more info ).
    If you wanted to use a variable which was created on the background thread you can set it here:
    Task.Factory.StartNew(() =>
    string thingummy = "banana";
    Dispatcher.BeginInvoke(new Action(() => { tb.Text = thingummy; }));
    or here
    string thingummy = "banana";
    Task.Factory.StartNew(() =>
    Dispatcher.BeginInvoke(new Action(() => { tb.Text = thingummy; }));
    They both work.
    They are not accessing properties of a UI control because you're just setting the variable to a string.
    All of which means you could have a variable in your code which is set to volume or whatever that is from your control  ON THE UI THREAD and then modify that variable on the background thread.  Variables do not have thread affinity.  A
    double, string or whatever isn't a control.
    And this approach might well be more convenient.
    Hope that helps.
    Recent Technet articles:
    Property List Editing ;  
    Dynamic XAML

  • Remove property from a OOTB component

    Hello,
    I want to remove an OOTB property from a component - Can I do it using dyn admin or by creating a new properties file ?

    Hi ORA-100,
    For example if you want to remove a ootb property-firstName.
    1. Search & open the repository you want to extend in dyn/admin (in our case it is ProfileAdapterRepository)
    2. Click on "Examine Repository Definition" and there you can see-  CONFIGPATH Filename : /atg/userprofiling/userProfile.xml
    In the userProfile.xml search the item-descriptor "user" and see a table-  <table name="dps_user">.
    In this table ootb properties related to profiles are defined.You can search the 'firstName' property which we are going to remove.
    3. Now, you have to layer the userProfile.xml in your custom ATG module at the same location in config path as OOTB xml.
    4. NextcCreate a new table which extends the original table keeping important point in mind that a column which stores the repository id of this item-descriptor - we name it as USER_ID. This is basically the primary key of our new (auxiliary) table and is the foreign key for dps_user. This means that the value of column "id" of dps_user is same as "user_id" in custom_user. This is to ensure that our new table is linked to previous table and remove your property there as below-
    Here you can copy required tags like gsa-template for an xml from step 2's userProfile.xml; remaing code required for remove operation is as below-
    <item-descriptor name="user" cache-mode="simple" item-cache-timeout="550000" query-expire-timeout="550000" xml-combine="append">
    <table name="my_user" type="auxiliary" id-column-name="user_id">
    <property name="firstName" xml-combine="remove"/>
    </table>
    </item-descriptor>
    Let me know if you face any issue.
    Regards,
    Prateek Gupta

  • Can't Edit from Code View?

    For some reason one of my components seems to have an empty "array" as it's called describing a *filter* that doesn't exist.  In other words:
    <s:filters>
                    </s:filters>
    This is causing me to get on error when I try to compile.  I can take it into flex, make the change, and then compile... but after I do that FC won't accept my exported fxp.  Sooo...... I would love to just delete those two pointless lines of code... but for some reasons it's locked or... won't let me delete it.
    Not sure why.  :-/

    To be honest it could be a number of things.  I've probably been making this too hard on myself, but I started with a swf, in Flash.  Its primary purpose was to play an introduction upon entering the site.  You can see this at garrettremes.com
    I've since made changes in Catalyst but can no longer compile/export.  I had started a project in catalyst before, but had to retrace my steps again and again which was very tedious, because I was playing with different options and bg swfs among other things.  I decided to put that part on hold and work in Flash for a while.
    What happened probably started with me importing the library from my other Catalyst project and that had god knows what in it, I lost track after a while since it renames things all the time it got to be confusing.  After importing that library to my new Catalyst project I located the custom components I needed and tried to recreate some of the work I had done before.
    The next step involves adding coverflow, and I remember seeing this done in Flex quite some time ago, so I figured it would be best to import into Flash Builder 4, and make the changes, and then go back to Catalyst to designate the navigation a bit better.  Catalyst makes this part very easy, and I love it, but the whole process is not very streamline at all.  Of course this is partially my fault, because I don't know any better way to do this.  I don't know enough AS3 to do all Flash -- Catalyst seems to limit my options, and I only know enough with Flex Builder to follow tutorials and primarily work in the "Design" workspace.
    Anyway -- as for the error, the first compile error I got was something to the effect of "duplicate symbol name."  I don't know how to edit this property.  I see there's a user designated id, and the id in the library, and apparently another id used by the program.  Apparently there was a conflict.  I was able to solve this by figuring out where 'rect0' was and deleting it and recreating it.
    I suppose in my deleting it I caused the empty array.  I compiled in Flex and it's as simple as deleting that line of code, but I don't know where the debug code is stored on my hard drive and I can't delete it in Catalyst so I'm at sort of an impasse.  Not sure what to do.
    I'm attaching whatever I can find that might be useful.
    Flash Catalyst cannot run this project because of an error in the code.
    To find the error, switch to the Code workspace and look in the Problems panel.
    I did that and found that there was an empty tag in one of my components.  Perhaps I should just delete that component and remake it?  That would probably work....
    **EDIT**
    I know it's not ideal, but I solved this problem by just applying some filter so there wouldn't be an empty array, and then compiled... then I "un-applied" it and it seems that it properly removed it from code.  I'm really not sure how this might have happened...

  • "Save vi seperate from code" at import

    Hi. I have a lot of code in LabVIEW 2009. I would like to import it all to LabVIEW 2010, but I would like the "Save vi seperate from code" checkbox checked on all imported vi's (I would like it checked on all subsiquently created vi's too). Does anyone know how to do this?
    Many thanks, Alec
    Solved!
    Go to Solution.

    LV 2010 does not allow doing this, but there are some VIs floating around which will do this at a specific point in time (you can also write one yourself fairly simply, as the property is exposed through VI server).
    Another option is to open a new project and use auto-populating folders to add all the VIs in a hierarcy to that project. You should then be able to use the marking window to mark all of them.
    Try to take over the world!

  • Indexed Property Example Code

    Is there an example out there for a Java Newby - I am trying to save data in an array - that is using the indexed property in a SessionBean.
    I have then added the indexed property and bound the value to it:
    * Indexed getter for property rule.
    * @param index Index of the property.
    * @return Value of the property at <CODE>index</CODE>.
    public Long getRule(int index) {
    return this.rule[index];
    * Indexed setter for property rule.
    * @param index Index of the property.
    * @param rule New value of the property at <CODE>index</CODE>.
    public void setRule(int index, Long rule) {
    this.rule[index] = rule;
    public String button1_action() {
    setValue("#{AdminBean.rule[1]}", selector.getValue());
    I am getting the followong error:
    Exception Details: org.apache.jasper.JasperException
    Error getting property 'rule' from bean of type magicwheel.AdminBean
    Possible Source of Error:
    Class Name: org.apache.jasper.servlet.JspServletWrapper
    File Name: JspServletWrapper.java
    Method Name: service
    Line Number: 384
    Source not available. Information regarding the location of the exception can be identified using the exception stack trace below.
    Can anyone help, possibly with some example code?
    Thanks,
    Nils

    public String button1_action() {
    setValue("#{AdminBean.rule[1]}",
    selector.getValue());
    How about
    getAdminBean().setRule(1, selector.getValue());Assuming that selector.getValue() returns a Long and that AdminBean is either an Application, Session, or Request Bean.
    Best regards
    Antonio.

  • Setting JSLink for XSLTListViewWebPart from code behind

    I am adding an XSLTListViewWebPart from within a user contol code behind.  It adds fine, but I am not able to get it to resolve the JSLink file.  The js file works, as I've attached it to a list view web part in the web part properties and it works.
    How do I set the JSLink property from the code?  I have set it on the view object and on the XsltListViewWebPart, but neither has any effect.  This has to be deployable from a wsp, so setting the value from the UI is not an option. 
    XsltListViewWebPart FooterMenuListView = new XsltListViewWebPart();
      FooterMenuListView.ListId = linkList.ID;
      FooterMenuListView.ViewGuid = linkView.ID.ToString("B");
      FooterMenuListView.JSLink = "/_Layouts/15/FooterMenu.js";                                
      FooterMenuListView.BorderStyle = System.Web.UI.WebControls.BorderStyle.None;
      FooterMenuListView.ChromeType = System.Web.UI.WebControls.WebParts.PartChromeType.None;
      phFooterMenuList.Controls.Add(FooterMenuListView);
    Any advice would be appreciated.

    Hi,
    Please try to use the code line below:
    FooterMenuListView.JSLink = "/_layouts/15/FooterMenu.js";
    Or you can upload the js file into a document library(JSLib) and use like this:
    FooterMenuListView.JSLink = "~site/JSLib/FooterMenu.js";
    JSLink also supports the following tokens, you can try it.
    •~site
    •~sitecollection
    •~layouts
    •~siteLayouts
    •~siteCollectionLayouts
    More information:
    http://spdevlab.com/2013/07/07/5-facts-about-jslink-in-sharepoint-2013-you-might-not-know/
    http://networkedblogs.com/GmSvo
    Thanks,
    Dennis Guo
    TechNet Community Support
    Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
    [email protected]
    Dennis Guo
    TechNet Community Support

  • How to access component's control property from main .mxml file

    I have a main .mxml while in which i imported custom
    "popUpWindow" component using "import component.popUpWindow"
    statement. In main .mxml file I display later on that component as
    popUp window using popUp manager class. Once component is
    displayed, how can i access using actionscript component's
    TextInput control (specifically its .text property) from my main
    .mxml file?
    thanks

    I posted this answer elsewhere, maybe it will help:
    First, save the new component wherever you keep your
    components, let's say you call it "MyPopWindow.mxml"
    Assign public variables for the string in both the main app
    and the popup.
    In your case, in the main app:
    Code:
    public var myText:String = "whatever the text field should
    say.";
    and then in the pop up mxml:
    Code:
    [Bindable]
    public var myText;
    Then, in the main mxml file:
    Code:
    // define the window type
    private var popWin:MyPopWindow;
    private function popMeUp(event:MouseEvent):void{
    popWin =MyPopWindow(PopUpManager.createPopUp(this,
    MyPopWindow, true));
    popWin.myText = myText;
    The important things here to notice is the name of the
    component (i.e. the file) is used. A variable is created for the
    window, and TYPED to your file name. Then you use the constructor
    you already had, but again use your type. The "true" is optional
    and gives you a modal popup window.
    Lastly, assign the variable in the window (I called mine
    popWin) to the variable in the main file you want to pass.

  • Sharepoint designer 2013 workflow kickoff issue from code

    Problem Statement: Start a  SharePoint 2013 designer Reusable Workflow with STS Authenticated User. We are trying to start to SharePoint 2013 designer Reusable Workflow with
    STS authenticated user using code but when we do that, we get following error. RequestorId: a3ce6dc6-31ec-23f3-0000-000000000000. Details: RequestorId: a3ce6dc6-31ec-23f3-0000-000000000000. Details: An unhandled exception occurred during the
    execution of the workflow instance. Exception details: System.ApplicationException: HTTP 401 {"error_description":"The server was unable to process the request due to an internal error. For more information about the error, either turn on IncludeExceptionDetailInFaults
    (either from ServiceBehaviorAttribute or from the <serviceDebug> configuration behavior) on the server in order to send the exception information back to the client, or turn on tracing as per the Microsoft .NET Framework SDK documentation and inspect
    the server trace logs."} {"x-ms-diagnostics":["3001000;reason=\"There has been an error authenticating the request.\";category=\"invalid_client\""],"SPRequestGuid":["a3ce6dc6-31ec-23f3-b3ab-aef56fc7e299"],"request-id":["a3ce6dc6-31ec-23f3-b3ab-aef56fc7e299"],"X-FRAME-OPTIONS":["SAMEORIGIN"],"SPRequestDuration":["65"],"SPIisLatency":["0"],"Server":["Microsoft-IIS\/8.0"],"WWW-Authenticate":["Bearer
    realm=\"de9da885-f7bf-4564-a3a5-
    Alternate approach we are following : We have created a windows authenticated user and gave him all the necessary permission to trigger the workflow(contribute, full control). Then we are creating the User token
    for that user and opening the site with the help of the generated user token. By this approach workflow is getting triggered.
    The problem in this approach is after ¾ days it gives error when trying to kick off workflow from code with user who has not logged in as we are using this AD user only for kickoff purpose.
    InvalidOperationException:
    Operation is not valid due to the current state of the object
    MCTS Sharepoint 2010, MCAD dotnet, MCPDEA, SharePoint Lead

    There is a userprofile for the user and the issue is not a userprofile. We are using direct AD import and we have full sync every 5 minutes. The workflow gets kicked off using a fix user who never logs in but after 4/5 days the token or something gets expired
    and then we have to manually login with that user and then only code can kickoff workflow with that particular user.
    The problem in this approach is after ¾ days it gives error when trying to kick off workflow from code with user who has not logged in as we are using this AD user only for kickoff purpose.
    InvalidOperationException:
    Operation is not valid due to the current state of the object
    We can not kickoff with current user as current user can not be given contribute rights and we can not do it with system account as its not able to kickoff using system account by design of sp2013 workflow.
    So we need to know how to kcikoff workflow with a user who never logs in or logs in only for the first time and then never in production.
    Below code works for few days and then as user does not login with which we kick off workflow the token or something gets expired after 4/5 days.
    userToken = oSPWeb.EnsureUser(“UserAccountName”).UserToken;
    using (SPSite
    oSPSite = new
    SPSite(SPContext.Current.Web.Url,
    userToken))  //Site collection URL
    using (SPWeb
    oSPWeb = oSPSite.OpenWeb())  //Subsite URL
    SPList list = oSPWeb.Lists["Proposal"];
    try
                                oSPWeb.AllowUnsafeUpdates =
    true;
    SPListItem item = list.GetItemById(proposalID);
    var workflowServiceManager =
    new
    WorkflowServicesManager(oSPWeb);
    var workflowSubscriptionService = workflowServiceManager.GetWorkflowSubscriptionService();
                                //get
    all workflows associated with the list
    var subscriptions = workflowSubscriptionService.EnumerateSubscriptionsByList(list.ID);
    foreach (var
    workflowSubscription in subscriptions)
    if (workflowSubscription.Name ==
    "Proposal Workflow")
    //initiation parameters
    var inputParameters =
    new
    Dictionary<string,
    object>();
    inputParameters.Add("Comments",
    "TEST");
    inputParameters.Add("ItemId", item.ID);
    inputParameters.Add("WorkflowStart",
    "StartWorkflow");
    workflowServiceManager.GetWorkflowInstanceService().StartWorkflowOnListItem(workflowSubscription, item.ID, inputParameters);
    break;
                                oSPWeb.AllowUnsafeUpdates =
    false;
    catch (Exception
    ex)
                                Classes.Logger.WriteErrorLog("Sumbit",
    "kickoffWorkflow1", ex,
    MCTS Sharepoint 2010, MCAD dotnet, MCPDEA, SharePoint Lead

  • How can I get the value of a custom property from a resource object?

    I am trying to get the value(s) of a custom property, called "status" within a method. The method has an object of type IResource available to it.
    I have tried the following:
    PropertyName propName = new PropertyName("","status");
    value = res.getProperty(propName).toString();
    However, I am getting a NullPointerException when I try to create the PropertyName instance.
    Is there a better way to get the value of a specific property from a resource object?
    Thanks,
      Tom

    Thanks Praveen.
    I was missing the default namespace of "http://sapportals.com/xmlns/cm" - I thought I could just pass an empty string for the namespace, but it looks like I must always specifiy, even if it is default.
    Tom

  • Open URL in a new browser from a JSF backing bean

    I want to use commandButton action in jsf to launch a new browser instead of using commandLink.
    How do you launch url in a new browser window by firing up a method in backing bean?
    So far I am able to launch a URL within the same browser window. Here is my code:
    In jsp file:
    <h:commandButton rendered="#{openDataList.valueModifiable}" value="link" action="#{openDataList.link}" />
    In backing bean:
    public void link()
         try{
         FacesContext faces = FacesContext.getCurrentInstance();
         faces.responseComplete();
         ExternalContext context = faces.getExternalContext();
         context.redirect("http://www....");      }
         catch(java.io.IOException e)
    ...

    with a commandButton i dont belive you can
    well there are ways you can use javascript window.open
    or you can use a commanLink ans set the target
    but from my understanding there is no way to open a new browser from the backing beans ( this is because this is a client function and your backing beans are on the sever )

  • Dreamweaver CC crashes when switching from code view to design view

    I am experiencing a recent problem with a file I am currently working. When I switch from code view to design view Dreamweaver crashes and requests a shut down. Other files seem to work without a problem. This particular files has 3 cascading EdgeAnimation CC files that are selected by media queries. I can test the page online without a problem but not in design or live view.

    Since your new page didn't crash, this leads me to believe that you have some critical errors and/or conflicts in your other page(s).
    Try running your code through the W3C validation tools. 
    CSS - http://jigsaw.w3.org/css-validator/
    HTML - http://validator.w3.org/
    Also debug JavaScript. 
    JavaScript - http://www.jslint.com/
    Nancy O.

  • How to open a new window from the login window?

    hi,
    can someone tell me how to open a new window from an existing window, here by window i mean frame. The case is i hv two java files - oracle.java and FDoptions.java. The first frame is in the Login.java. The oracle.java file has a button "Login", when it is clicked, i want to open the next frame which is in the file FDoptions.java. Can some one help me with this? I m giving the code below -
    oracle.java
    import java.awt.BorderLayout;
    import java.awt.FlowLayout;
    import java.awt.GridLayout;
    import java.awt.event.ActionEvent;
    import javax.swing.AbstractAction;
    import javax.swing.BorderFactory;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JPanel;
    import javax.swing.JPasswordField;
    import javax.swing.JTextField;
    * The application's main frame.
    public class oracle {
        private JFrame frame;
        private JPanel logInPanel;
        private JButton clearButton;
        private JButton logInButton;
        private JButton newuserButton;
        private JButton forgotpasswordButton;
        private JTextField userNameTextField;
        private JPasswordField passwordTextField;
        public oracle() {
            initComponents();
        private final void initComponents() {
            JLabel userNameLabel = new JLabel("User name: ");
            JLabel passwordLabel = new JLabel("Password: ");
            userNameTextField = new JTextField();
            passwordTextField = new JPasswordField();
            JPanel userInputPanel = new JPanel(new GridLayout(2, 2, 5, 5));
            userInputPanel.setBorder(BorderFactory.createEmptyBorder(10, 20, 10, 20));
            userInputPanel.add(userNameLabel);
            userInputPanel.add(userNameTextField);
            userInputPanel.add(passwordLabel);
            userInputPanel.add(passwordTextField);
            logInButton = new JButton(new LogInAction());
            clearButton = new JButton(new ClearAction());
            newuserButton = new JButton(new NewUserAction());
            forgotpasswordButton = new JButton(new ForgotPassword());
            JPanel buttonPanel = new JPanel(new FlowLayout(FlowLayout.CENTER));
            JPanel buttonPanel1 = new JPanel(new FlowLayout(FlowLayout.RIGHT));
            buttonPanel.add(logInButton);
            buttonPanel.add(clearButton);
            buttonPanel1.add(newuserButton);
            buttonPanel1.add(forgotpasswordButton);
            logInPanel = new JPanel(new BorderLayout());
            logInPanel.add(userInputPanel, BorderLayout.NORTH);
            logInPanel.add(buttonPanel, BorderLayout.CENTER);
            logInPanel.add(buttonPanel1,BorderLayout.SOUTH);
            frame = new JFrame("FD Tracker");
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frame.setSize(500, 500);
            frame.setContentPane(logInPanel);
            frame.pack();
            frame.setVisible(true);
        private void performLogIn() {
            // Log in the user
            System.out.println("Username: " + userNameTextField.getText());
            char[] password = passwordTextField.getPassword();
            System.out.print("Password: ");
            for(char c : password) {
                System.out.print(c);
            System.out.println();
        private void performClear() {
            // Clear the panel
            System.out.println("Clearing the panel");
            userNameTextField.setText("");
            passwordTextField.setText("");
        private final class LogInAction extends AbstractAction {
            public LogInAction() {
                super("Log in");
            @Override
            public void actionPerformed(ActionEvent e) {
                performLogIn();
        private final class ClearAction extends AbstractAction {
            public ClearAction() {
                super("Clear");
            @Override
            public void actionPerformed(ActionEvent e) {
                performClear();
        private final class NewUserAction extends AbstractAction{
             public NewUserAction(){
                 super("New User");
             @Override
             public void actionPerformed(ActionEvent e){
                 JFrame newuser = new JFrame("NewUser");
        private final class ForgotPassword extends AbstractAction{
            public ForgotPassword(){
                super("Forgot Password");
            @Override
            public void actionPerformed(ActionEvent e){
                JFrame forgotpassword = new JFrame("Forgot Password");
        public static void main(String args[]) {
            new oracle();
         FDoptions.java
    import java.awt.FlowLayout;
    import java.awt.BorderLayout;
    import java.awt.GridLayout;
    import java.awt.event.ActionEvent;
    import javax.swing.AbstractAction;
    import javax.swing.BorderFactory;
    import javax.swing.JPanel;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    public class Fdoptions{
        private JFrame fdoptions;
        private JPanel fdoptpanel;
        private JButton enterfdbutton;
        private JButton viewfdbutton;
        public Fdoptions() {
            initComponents();
        private final void initComponents(){
            fdoptpanel = new JPanel(new BorderLayout());
            fdoptpanel.setBorder(BorderFactory.createEmptyBorder(80,50,80,50));
            enterfdbutton = new JButton(new EnterFDAction());
            viewfdbutton = new JButton(new ViewFDAction());
           JPanel enterbuttonpanel = new JPanel(new FlowLayout(FlowLayout.CENTER));
           JPanel viewbuttonpanel = new JPanel(new FlowLayout(FlowLayout.CENTER));
            enterbuttonpanel.add(enterfdbutton);
            viewbuttonpanel.add(viewfdbutton);
            fdoptpanel.add(enterbuttonpanel,BorderLayout.NORTH);
            fdoptpanel.add(viewbuttonpanel,BorderLayout.SOUTH);
            fdoptions = new JFrame("FD Options");
            fdoptions.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            fdoptions.setSize(1000,1000);
            fdoptions.setContentPane(fdoptpanel);
            fdoptions.pack();
            fdoptions.setVisible(true);
        private void performEnter(){
        private void performView(){
        private final class EnterFDAction extends AbstractAction{
            public EnterFDAction(){
                super("Enter new FD");
            public void actionPerformed(ActionEvent e){
                performEnter();
        private final class ViewFDAction extends AbstractAction{
            public ViewFDAction(){
                super("View an existing FD");
            public void actionPerformed(ActionEvent e){
                performView();
        public static void main(String args[]){
            new Fdoptions();
    }

    nice day,
    these lines..., despite the fact that this example is about something else, shows you two ways
    1/ modal JDialog
    2/ two JFrame
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    * Parent Modal Dialog. When in modal mode, this dialog
    * will block inputs to the "parent Window" but will
    * allow events to other components
    * @see javax.swing.JDialog
    public class PMDialog extends JDialog {
        private static final long serialVersionUID = 1L;
        protected boolean modal = false;
        private WindowAdapter parentWindowListener;
        private Window owner;
        private JFrame blockedFrame = new JFrame("No blocked frame");
        private JFrame noBlockedFrame = new JFrame("Blocked Frame");
        public PMDialog() {
            noBlockedFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            noBlockedFrame.getContentPane().add(new JButton(new AbstractAction("Test button") {
                private static final long serialVersionUID = 1L;
                @Override
                public void actionPerformed(ActionEvent evt) {
                    System.out.println("Non blocked button pushed");
                    blockedFrame.setVisible(true);
                    noBlockedFrame.setVisible(false);
            noBlockedFrame.setSize(200, 200);
            noBlockedFrame.setVisible(true);
            blockedFrame.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
            blockedFrame.getContentPane().add(new JButton(new AbstractAction("Test Button") {
                private static final long serialVersionUID = 1L;
                @Override
                public void actionPerformed(ActionEvent evt) {
                    final PMDialog pmd = new PMDialog(blockedFrame, "Partial Modal Dialog", true);
                    pmd.setSize(200, 100);
                    pmd.setLocationRelativeTo(blockedFrame);
                    pmd.getContentPane().add(new JButton(new AbstractAction("Test button") {
                        private static final long serialVersionUID = 1L;
                        @Override
                        public void actionPerformed(ActionEvent evt) {
                            System.out.println("Blocked button pushed");
                            pmd.setVisible(false);
                            blockedFrame.setVisible(false);
                            noBlockedFrame.setVisible(true);
                    pmd.setVisible(true);
                    System.out.println("Returned from Dialog");
            blockedFrame.setSize(200, 200);
            blockedFrame.setLocation(300, 0);
            blockedFrame.setVisible(false);
        public PMDialog(Dialog parent, String title, boolean isModal) {
            super(parent, title, false);
            initDialog(parent, title, isModal);
        public PMDialog(Frame parent, String title, boolean isModal) {
            super(parent, title, false);
            initDialog(parent, title, isModal);
        private void initDialog(Window parent, String title, boolean isModal) {
            owner = parent;
            modal = isModal;
            parentWindowListener = new WindowAdapter() {
                @Override
                public void windowActivated(WindowEvent e) {
                    if (isVisible()) {
                        System.out.println("Dialog.getFocusBack()");
                        getFocusBack();
        private void getFocusBack() {
            Toolkit.getDefaultToolkit().beep();
            super.setVisible(false);
            super.pack();
            super.setLocationRelativeTo(owner);
            super.setVisible(true);
            //super.toFront();
        @Override
        public void dispose() {
            owner.setEnabled(true);
            owner.setFocusableWindowState(true);
            super.dispose();
        @Override
        @SuppressWarnings("deprecation")
        public void hide() {
            owner.setEnabled(true);
            owner.setFocusableWindowState(true);
            super.hide();
        @Override
        public void setVisible(boolean visible) {
            boolean blockParent = (visible && modal);
            owner.setEnabled(!blockParent);
            owner.setFocusableWindowState(!blockParent);
            super.setVisible(visible);
            if (blockParent) {
                System.out.println("Adding listener to parent ...");
                owner.addWindowListener(parentWindowListener);
                try {
                    if (SwingUtilities.isEventDispatchThread()) {
                        System.out.println("EventDispatchThread");
                        EventQueue theQueue = getToolkit().getSystemEventQueue();
                        while (isVisible()) {
                            AWTEvent event = theQueue.getNextEvent();
                            Object src = event.getSource();
                            if (event instanceof ActiveEvent) {
                                ((ActiveEvent) event).dispatch();
                            } else if (src instanceof Component) {
                                ((Component) src).dispatchEvent(event);
                    } else {
                        System.out.println("OUTSIDE EventDispatchThread");
                        synchronized (getTreeLock()) {
                            while (isVisible()) {
                                try {
                                    getTreeLock().wait();
                                } catch (InterruptedException e) {
                                    break;
                } catch (Exception ex) {
                    ex.printStackTrace();
                    System.out.println("Error from EDT ... : " + ex);
            } else {
                System.out.println("Removing listener from parent ...");
                owner.removeWindowListener(parentWindowListener);
                owner.setEnabled(true);
                owner.setFocusableWindowState(true);
        @Override
        public void setModal(boolean modal) {
            this.modal = modal;
        public static void main(String args[]) {
            new PMDialog();
    }

  • Moving to a new property

    I am purchasing a second property, completing on 3 June. My vendor has phone and broadband from BT.
    Yesterday I was informed that if I wished to take phone and broadband from BT, I could do one of two things - 1. Place the order now and wait 11 working days for it to be completed (meaning I would get phone and broadband by about 9th/10th June) or 2. After the vendor has given notice that they are terminating their service, set up a stop/move order and take over the line the day after the vendor moves out.
    Today I am told by my vendor (who has 3 lines, two business and one private) that he has arranged with BT Business to move his broadband to his new property and I have been given a reference number.
    I am told today by BT Sales that option 1 is still available to me but that residential sales have no note of business lines on their system (and can't get this information even with the reference number) and that even if the vendor gives notice to terminate their residential line, I can do nothing to implement option 2 until the day after the line has actually been terminated. If I ring BT then, I am told that it will take BT two days from then to get the phone line on and probably another two or three after that to get broadband.
    Which version is correct? It seems crazy to me that if BT have been informed by customer A that a line will be becoming free on a particular date, and by customer B that he would like to take over that line from the following day, BT's systems can't cope. Can this be right?

    I have flagged your issue to a BT moderator.
    I suggest you drop them an email at :  BT Forum Moderation Team <[email protected]>
    with a link to this thread, they will advise you of your best option.
    Good Luck

Maybe you are looking for