How to create a Taxonomy classification folder with KM or Index API

Hi All!
I'm developing an application that needs to create a taxonomy structure dynamically.
The structure is something like
-Taxonomies -> Index_MI ->Tax_MI -> Docs1 and Docs2
I have already created the repositories and the index with no complication at all, and I can create a taxonomy under that index structure(same level as Tax_MI), the fact is when I try to create a new sub-folder inside the Tax_MI one I've got the error: can not create taxonomy folder: Invalid character in resource name: / - com.sapportals.wcm.repository.InvalidNameException: Invalid character in resource name: / . The parameter is "Tax_MI/Docs3"
I'm using the following method to create the taxonomy:
public void createTaxCategory(String taxCat, String IndexName, IResourceContext context) // name of the related index)
     throws WcmException {
          IIndexService indexService = (IIndexService) ResourceFactory.getInstance().getServiceFactory().getService(IServiceTypesConst.INDEX_SERVICE);
          IClassificationIndex classificationIndex = (IClassificationIndex) indexService.getIndex(IndexName);
          classificationIndex.addTaxonomy(taxCat, context);
Has someone achived something like I'm trying to do?
Thanks in advanced!
Edited by: Zehcnasotrebor on Jun 2, 2009 12:02 AM

Thank you Patricio, the link is useful but it says "The following prerequisite must be fulfilled:
The taxonomies must be identical in both systems. To transport the taxonomies from the source to the target system the standard transport mechanism of the portal can be used" and the requirement is to create the taxonomy structure on the fly.
I'm studying the AbstractClassificationIndex class, it has the addResourceToClassificationIndex method, but I have no success yet.
Are there any other suggestions?

Similar Messages

  • How to create a taxonomy using MDM 5.5 SP05 JAVA API?

    Hi ALL,
    I have a requirement in which i have to create a taxonomy using MDM 5.5 SP05 JAVA API.
    Can anyone tell me how that functionality can be achieved?
    Thanks in Advance.
    Rajat.

    HI, Rajat.
    For exposing hierarchy in WD view you need to use node with recursive children in the context and Tree/TreeNodeType UI elements in view layout.
    For load hierarchy records you have to use RetrieveLimitedHierTreeCommand. You can load whole hierarchy (as I know, SP05 API have a bug - only first 1000 record can be loaded) or load hierarchy nodes on demand (using OnLoadChildren action of TreeNodeType element).
    Refer to this example of loading child records:
    // Context structure:
    // Tree (model node, model class built from com.sap.mdm.data.Record interface)
    //  |-- Children (recursive child node repeating Tree node)
    //  |-- DisplayValue (string value attribute, TreeNodeType's text property bound here)
    //  |-- HasChildren (boolean value attribute, TreeNodeType's hasChildren property bound here)
    // parentElem is element of node Tree or Children for which we must load child records, null for first level of hierarchy
    private void fillNodeWithChildren(IPrivateHierarchySelectView.ITreeElement parentElem) {
         // Determining RecordId of parent record and context node to which child records belong
         RecordId parentRecordId = null;
         if (parentElem != null) parentRecordId = parentElem.modelObject().getId();
         IPrivateHierarchySelectView.ITreeNode parentNode =
              parentElem == null
                   ? wdContext.nodeTree()
                   : parentElem.nodeChildren();
         // Loading children with RetrieveLimitedHierTreeCommand
         try {
              RetrieveLimitedHierTreeCommand retTreeCmd = new RetrieveLimitedHierTreeCommand(...); // use suitable constructor
              if (parentRecordId != null) retTreeCmd.setRootNode(parentRecordId);
              retTreeCmd.setResultDefinition(...); // don't forget set ResultDefinition
              retTreeCmd.execute();
              HierNode subRoot = retTreeCmd.getTree()
              parentNode.invalidate();
              // Processing loaded child records - add elements into parentNode
              if (subRoot == null) return;
              IPrivateHierarchySelectView.ITreeElement childElem;
              HierNode childRecord;
              HierNode[] children = subRoot.getChildren();
              int count = children == null ? 0 : children.length;
              for (int i = 0; i < count; i++) {
                   childRecord = children<i>;
                   childElem = parentNode.createTreeElement(childRecord);
                   childElem.setDisplayValue(childRecord.getDisplayValue());
                   childElem.setHasChildren(!childRecord.isLeaf());
                   parentNode.addElement(childElem);
              if (parentElem != null) parentElem.setHasChildren(count > 0);
         } catch (/* Some MDM Exceptions */) {}
    Don't forget call fillNodeWithChildren(null) in wdDoInit for load first level of hierarchy.

  • How can I share the home folder with different accounts on the same mac?

    Hi, here's a question:
    How can I share the home folder with different accounts on the same mac?
    The whole point being not to have to install all my apps, and move all my files each time between users.
    The second thing would be to be able to modify one document on one account, and have it changed on the other account without having to copy it.
    I would like to have a pro and a private account on my mac.
    Thanks for you answers,
    Doug

    Your apps should not be installed in your home folder--they should be in /Applications where every user can access them.
    If you want to share things between users on the same Mac, use the /Users/Shared folder. Keep your home folder private. Trying to defeat the protections on the home folder subfolders just gets messy. I've never bothered to figure out all of the problems associated with it so I can't explain how to do it.
    Even with using Shared, you would need to alter the ACLs on the shared folder in order to allow both users to modify the documents.
    You must create a Group in Users & Groups and put each user in that group. Then create a folder inside /Users/Shared where you want to share the various files.
    Then, add an ACL to the shared folder that gives the group special permissions. on that folder.
    sudo chmod -R +a "<sharinggroup> allow delete,chown,list,search,add_file,add_subdirectory,delete_child,file_inherit,directory_inherit" /Users/Shared/<sharing folder>
    Replace <sharinggroup> and <sharingfolder> with the name of your group and your folder. Then, run the command in the Terminal.
    With that ACL, each user in <sharinggroup> will be able to alter the files created by any user in the group in that <sharingfolder>.
    Essentially, the client OS is not designed for true file sharing among the individual users. It is designed to isolate each user account from the others.

  • How to create a custom function module with the records in SAP R/3?

    Hi All,
    How to create a custom function module with the records in SAP R/3? Using RFC Adapter I have to fetch the custom function module records.
    Regards
    Sara

    Hi
    goto se37...here u need to create a function group... then u need to create a function module. inside assign import/export parameters. assign tables/exceptions. activate the same. now write ur code within the function module
    http://help.sap.com/saphelp_nw04/helpdata/en/9f/db98fc35c111d1829f0000e829fbfe/content.htm
    Look at the below SAP HELP links, These links will show you the way to create a Function Module
    http://help.sap.com/saphelp_nw04/helpdata/en/26/64f623fa8911d386e70000e82011b8/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/9f/db98fc35c111d1829f0000e829fbfe/content.htm

  • How to create a directory or Folder  using java program?

    Hi all,
    Can any one know, how to create a directory(new folder) in java.
    can any give me some idea, on creating a directory using java program dynamically.
    thanx in advance

    hi thanks for your answer,
    sorry, actual i know this technique(its my fault i didnt mentioned it)
    i am looking for some what different technique.
    bye
    ram

  • How to create Using Formatted Text Field with multiple Sliders?

    Hi i found the Java Sun tutorial at http://java.sun.com/docs/books/tutorial/uiswing/components/slider.html very useful, and it tells how to create one Formatted Text Field with a Slider - however i need to create Formatted Text Field for multiple Sliders in one GUI, how do i do this?
    my code now is as follows, and the way it is now is scroll first slider is okay but scrolling second slider also changes value of text field of first slider! homework due tomorrow, please kindly help!
    // constructor
    label1 = new JLabel( "Individuals" );
    scroller1 = new JSlider( SwingConstants.HORIZONTAL,     0, 100, 10 );
    scroller1.setMajorTickSpacing( 10 );
    scroller1.setMinorTickSpacing( 1 );
    scroller1.setPaintTicks( true );
    scroller1.setPaintLabels( true );
    scroller1.addChangeListener(this);
    java.text.NumberFormat numberFormat = java.text.NumberFormat.getIntegerInstance();
    NumberFormatter formatter = new NumberFormatter(numberFormat);
            formatter.setMinimum(new Integer(0));
            formatter.setMaximum(new Integer(100));
    textField1 = new JFormattedTextField(formatter);
    textField1.setValue(new Integer(10)); //FPS_INIT
    textField1.setColumns(1); //get some space
    textField1.addPropertyChangeListener(this);
    //React when the user presses Enter.
    textField1.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0),  "check");
            textField1.getActionMap().put("check", new AbstractAction() {
                public void actionPerformed(ActionEvent e) {
                    if (!textField1.isEditValid()) { //The text is invalid.
                        Toolkit.getDefaultToolkit().beep();
                        textField1.selectAll();
                    } else try {                    //The text is valid,
                        textField1.commitEdit();     //so use it.
                    } catch (java.text.ParseException exc) { }
    label2 = new JLabel( "Precision" );
    scroller2 = new JSlider( SwingConstants.HORIZONTAL, 0, 100, 8 );
    scroller2.setMajorTickSpacing( 10 );
    scroller2.setMinorTickSpacing( 1 );
    scroller2.setPaintTicks( true );
    scroller2.setPaintLabels( true );
    scroller2.addChangeListener(this);
    textField2 = new JFormattedTextField(formatter);
    textField2.setValue(new Integer(10)); //FPS_INIT
    textField2.setColumns(1); //get some space
    textField2.addPropertyChangeListener(this);
    //React when the user presses Enter.
    textField2.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0),  "check");
            textField2.getActionMap().put("check", new AbstractAction() {
                public void actionPerformed(ActionEvent e) {
                    if (!textField2.isEditValid()) { //The text is invalid.
                        Toolkit.getDefaultToolkit().beep();
                        textField2.selectAll();
                    } else try {                    //The text is valid,
                        textField2.commitEdit();     //so use it.
                    } catch (java.text.ParseException exc) { }
    // State Changed
         public void stateChanged(ChangeEvent e) {
             JSlider source = (JSlider)e.getSource();
             int fps = (int)source.getValue();
             if (!source.getValueIsAdjusting()) { //done adjusting
                  if(source==scroller1)   {
                       System.out.println("source ==scoller1\n");
                       textField1.setValue(new Integer(fps)); //update ftf value
                  else if(source==scroller2)     {
                       System.out.println("source ==scoller2\n");
                       textField2.setValue(new Integer(fps)); //update ftf value
             } else { //value is adjusting; just set the text
                 if(source==scroller1)     textField1.setText(String.valueOf(fps));
                 else if(source==scroller2)     textField2.setText(String.valueOf(fps));
    // Property Change
        public void propertyChange(PropertyChangeEvent e) {
            if ("value".equals(e.getPropertyName())) {
                Number value = (Number)e.getNewValue();
                if (scroller1 != null && value != null) {
                    scroller1.setValue(value.intValue());
                 else if (scroller2 != null && value != null) {
                    scroller2.setValue(value.intValue());
        // ACTION PERFORMED
        public void actionPerformed(ActionEvent event) {
        if (!textField1.isEditValid()) { //The text is invalid.
            Toolkit.getDefaultToolkit().beep();
            textField1.selectAll();
        } else try {                    //The text is valid,
            textField1.commitEdit();     //so use it.
        } catch (java.text.ParseException exc) { }
             if (!textField2.isEditValid()) { //The text is invalid.
            Toolkit.getDefaultToolkit().beep();
            textField2.selectAll();
        } else try {                    //The text is valid,
            textField2.commitEdit();     //so use it.
        } catch (java.text.ParseException exc) { }
    ...

    if :p3_note_id is null
    then
    insert into notes (project_id, note, notes_month, notes_year) So, p3_note_id is NULL.
    Another option is that you have a trigger on table NOTES that generates a new note_id even for an update.

  • How to Create an Input Schedule Comparison with Data Using EVDRE

    Hello,
    I try implement the scenario described in "How to Create an Input Schedule Comparison with Data Using EVDRE".
    Once I am using the "Insert Function" from the panel and selecting the EVTIM function Excel crashes (see page 8 How to paper).
    Systems:
    BPC 7.0 NW SP02
    Office 2007
    BPCADminClient and BPCOfficeClient up to date
    Have anyone a solution?
    Thanks
    Oktay

    Hi Oktay -
    This function works in my BPC70NW SP02 system. Your issue might be that you are trying to access a TIME member that does not exist. Please make sure the offset value is a valid dimension member.
    I can confirm that EVTIM does allow the offset for base members (such as 2009.MAY) as well as parent nodes (such as 2009.Q1 or 2008.TOTAL)... BUT...the offset result of the EVTIM function needs to be a valid dimension member!
    Regards,
    Sheldon

  • How to create user editable Crystal Report with dynamic dataset

    What I would like to achieve:
    A program loads a report in runtime updates list of database fields (possibly includes sample data), open report in "Crystal Reports 2011" (or 2008) where user customizes report and saves it. Later on the program loads the report, fills actualized data and displays it in .net report viewer.
    What I do:
    CrReport = New CrystalDecisions.CrystalReports.Engine.ReportDocument
    CrReport.Load(TemplateFilename)
    Dim Results As DataTable
    DataTable is filled from a database
    CrReport.SetDataSource(mResults)
    CrReport.SaveAs(NewReportPath, True)
    The NewReportPath is opened in the default program.
    What are the problems
    The report is open in preview mode (not in design).
    When the field is added to the report the designer asks for XML datasource on preview.

    The short answer is that it is not possible. I broke the question to other two: How to save a report that it opens without preview? and How to create user editable Crystal Report with dynamic dataset, where it is possible to find details. Key answer is Re: How to create an editable previewable report?

  • How to creat the Varient for 1099MISC With Holding Tax

    How to create the Variant for 1099MISC With Holding Tax ?

    HI,
    please follow the below steps to create variant at report.
    tcode se38
    report RFIDYYWT
    pass all the parameters
    press save icon
    give variant name
    retrive the variant in report
    tcode se38
    report name RFIDYYWT
    press : shift + F5
    or get varinat icon.
    I hope above will resolve your issue.
    Regards
    Madhu M

  • How to create new view without interlinking with gantt chart or resource views

    ok clear
    one another question
       In msp how to create new view without interlinking with gantt chart or resource views

    Hi Shiv PMC--
    I splitted your question above in another thread in order not to have  a huge thread with many topics in it.
    That being said, I'm not sure to understand. A view is just a manner to display MS Project data with columns. A view can have a table with column (left part) associated with a Gantt chart. It can also just contain a table with no Gantt chart (like the task
    table) or a table with a timephased grid (resource and task usage).
    Please give us more information, maybe with a concrete example so we can help you.
    Hope this helps,
    Guillaume Rouyre, MBA, MVP, P-Seller |

  • How to create labeled table of Content with expand and collapse

    Hi All,
    Can somebody help me how to create labeled table of Content with expand and collapse as example given below:
    User1
    Template1
    Template2
    User2
    +
    User3
    Template1
    Template2
    Like when we see expand (+) and collapse (-) button when we click on 'about this page' link.
    Thanks
    Bhupendra

    Hi,
    Tou can use Table inside table to show the details this way but I'm not sure about Expand/Collapse.
    Expand/Collapse are part of HGRID.
    I think we can develop this functionality with little manipulation.
    Regards,
    Reetesh Sharma
    Edited by: Reetesh Sharma on Jun 28, 2010 4:56 AM

  • How to create tcode for modulepool program with selection screen?

    hi,
       How to create tcode for modulepool program with selection screen?
    thanks,
    sagar

    Hi,
    We need to goto SE80.
    In our program we right click on object name and goto create
    -> transaction. Enter the module pool program and screen number and save and activate.
    Or by SE93 also we can create a transaction code for our program.
    Hope ths helps.
    plz reward if useful.
    thanks,
    dhanashri..
    Edited by: Dhanashri Pawar on Jul 22, 2008 8:29 AM

  • I've update my music using an external disk; now I uploaded agin the music  but it doesn't appear in Itunes. How can I synchronize the music folder with Itunes?

    I've managed my music downloading and uploading it from an external disk; I put the music into the Finder MUSIC folder and copyed it into Itubìnes but it does't appear. What Do I have to do? How can I synchronize the Musice Folder with Itunes?

    Chris, thanks for the reply.
    That's what I'm confused about. I did exactly what you said. I copied the entire music folder from the old computer and put it in the music folder on the new computer. I've tried that two or three times now. And, I've checked, and all of the files are there (that's what I meant by 'clicking on Itunes Media'--when I click on the iTunes media folder in music/itunes in Finder, all of the files are there). But, when I open iTunes, nothing shows up--no movies, no music, no tv shows. It seems like it should be so simple, but it won't work for me.
    Any ideas?
    Thanks so much.

  • How to create an association in folder options panel in order to open an e mail

    when trying to open attachment, it tells me that this file does not have a program associated with it to perform this action.
    I have to create an association in folder options panel.
    how do i do that?

    See this: <br />
    http://support.mozilla.com/en-US/kb/Managing+file+types

  • How to create a new classification at element level

    Hi,
    Can you please help me out in how to create a new element classification and I want to enable DFF at element entry screen only for this classifcation elements.
    Thanks
    Anil Lakkoju

    Hi friend,
    you can create the user on Administration Tool, on Manage ->Security -> Users -> right click and then new user.
    Now, connect to presentation service as administrator. Then, on Settings -> Administration -> Manage Catalog... here you can create new folder and grant access to folder users what you want.
    regards.
    Edited by: Hammett81 on Aug 2, 2010 5:54 PM

Maybe you are looking for

  • Problems in Dialog instance installation for ECC6.0(ABAP+JAVA)

    Does anyone can help me what should be a procedure of installing Dialog instance for ECC 6.0 with both ABAP + Java Stacks. When installing app server do we also choose ABAP and Java or just ABAP. Installation manual does not cover this and when we ru

  • Stand alone AR/AP credit memo for excisable item

    Hello Excise  experts                                  A sales return has to be accounted ,the invoice which was done in previous accounting software.When i tried to do AR credit memo, error showing stand alone AP/AR credit memos cannot be done for e

  • 6509E Fan tray 1 mode change failed

    I have just installed a CEF720 8 port 10GE with DFC   WS-X6708-10GE card in an existing 6509E Chassis and it shuts down due to inadequate cooling. I have another 6509E Chassis with exactly the same setup and it works ok with that. Both are brand new.

  • MultiProvider Query results not shown

    Hello Experts, I have a Multiprovider defined over a InfoCube and a ODS, the InfoCube contains transactional data of Purchasing such as PO number, material number etc. and the ODS just contains data related to Material its material number, Unit of me

  • SAP BPC 5.1 release

    Hi All SAP BPC 5.1 release (aka outlooksoft) will be available in the service market place by 1 Sep 2007. This release will have SAP branding throughout the software and the product will be called SAP Business Planning and Consolidation. Regards Muth