Regarding DataNodeInfo(DisplayList.DynamicNode):unknown child node ACTION

hi everyone
I am facing such problem while working with dynamic elements the exception I am getting is as follows:com.sap.tc.webdynpro.progmodel.context.ContextException: DataNodeInfo(DisplayList.DynamicNode): unknown child node ACTION

Hi Sumit
I have pasted my code below:
public static void wdDoModifyView(IPrivateDisplayList wdThis, IPrivateDisplayList.IContextNode wdContext, com.sap.tc.webdynpro.progmodel.api.IWDView view, boolean firstTime)
    //@@begin wdDoModifyView
     try
     IWDMessageManager msgMgr = wdThis.wdGetAPI().getComponent().getMessageManager();
          int intCat = wdContext.nodeField_Catalog_Disp1_Out().size();
          int intList = wdContext.nodeWeb_Table_Disp1_Out().size();     
          int intSelection =  wdContext.nodeSelectionNode().size();
String selc_field=wdContext.currentReportTypeElement().getName();
wdContext.currentContextElement().setField_selection("Selection Fields: "+selc_field);
          IWDTable theGrp = (IWDTable)view.getElement("Table2");
          theGrp.setSelectionMode(WDTableSelectionMode.NONE);
          theGrp.setFooterVisible(false);
          theGrp.setDesign(WDTableDesign.ALTERNATING);
                    theGrp.setReadOnly(true);
                         if(firstTime)
                         IWDNodeInfo node = wdContext.nodeDynamicNode().getNodeInfo();
                         for(int i=0;i<intCat;i++)
                              wdThis.wdGetAPI().getComponent().getMessageManager().reportSuccess("intcat"+intCat);
                              //wdThis.wdGetAPI().getComponent().getMessageManager().reportSuccess("i"+i);
                              node.addAttribute(wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(i).getFieldname(),"com.sap.dictionary.string");
                              IWDTableColumn tabCln = (IWDTableColumn)view.createElement(IWDTableColumn.class,"Cln_"+wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(i).getFieldname());
                              IWDCaption clnCpt = (IWDCaption)view.createElement(IWDCaption.class,"hd_"+wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(i).getFieldname());
                              clnCpt.setText("");
                              clnCpt.setText(wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(i).getHeading());
                              IWDTableStandardCell tblStdcell = (IWDTableStandardCell)view.createElement(IWDTableStandardCell.class,"stdCell_"+wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(i).getFieldname());
                              IWDTextView txtHeader = (IWDTextView)view.createElement(IWDTextView.class,"Header_"+wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(i).getFieldname());
                              txtHeader.setText(wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(i).getHeading());
                              txtHeader.setDesign(WDTextViewDesign.HEADER3);
                              tblStdcell.setEditor(txtHeader);
                              tblStdcell.setCellDesign(WDTableCellDesign.GROUP_LEVEL2);                              
                              tabCln.addFixedTopCell(tblStdcell);
                              IWDTextView clnTce = (IWDTextView)view.createElement(IWDTextView.class,"tce_"+wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(i).getFieldname());
                              clnTce.bindText("DynamicNode."+wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(i).getFieldname());
                              clnTce.setWrapping(true);
                              tabCln.setTableCellEditor(clnTce);
                              theGrp.addColumn(tabCln);IWDTable table = (IWDTable) view.getElement("Table2");
                              wdContext.currentContextElement().setTableSorter(new TableSorter(table, wdThis.wdGetSortAction(), null));
                         IWDTransparentContainer theTarnsDisp = (IWDTransparentContainer)view.getElement("TransparentContainer_3");
                         //wdThis.wdGetAPI().getComponent().getMessageManager().reportSuccess("intsel"+intSelection);
                         for(int k =0;k<intSelection;k++)
                              //node.addAttribute("Disp_"+wdContext.nodeSelectionNode().getSelectionNodeElementAt(k).getName(),"com.sap.dictionary.string");
                              IWDTextView clnTxt1 = (IWDTextView)view.createElement(IWDTextView.class,"Disp1_"+wdContext.nodeSelectionNode().getSelectionNodeElementAt(k).getName());
                              clnTxt1.setText(wdContext.nodeSelectionNode().getSelectionNodeElementAt(k).getName()+ " : ");
                              clnTxt1.setDesign(WDTextViewDesign.HEADER3);                              
                              clnTxt1.setWrapping(true);
                              IWDTextView clnTxt2 = (IWDTextView)view.createElement(IWDTextView.class,"Disp2_"+wdContext.nodeSelectionNode().getSelectionNodeElementAt(k).getName());
                              clnTxt2.setText(wdContext.nodeSelectionNode().getSelectionNodeElementAt(k).getValue1());
                              if(("".equals(wdContext.nodeSelectionNode().getSelectionNodeElementAt(k).getValue2())))
                                   clnTxt2.setText(wdContext.nodeSelectionNode().getSelectionNodeElementAt(k).getValue1());                         
                              if(!"".equals(wdContext.nodeSelectionNode().getSelectionNodeElementAt(k).getValue2()))
                                   clnTxt2.setText(wdContext.nodeSelectionNode().getSelectionNodeElementAt(k).getValue1()" - "wdContext.nodeSelectionNode().getSelectionNodeElementAt(k).getValue2());                         
                              clnTxt2.setWrapping(true);
                              IWDGridData gridLayout1 = (IWDGridData)clnTxt1.createLayoutData(IWDGridData.class);
                              gridLayout1.setWidth("5%");                              
                              gridLayout1.setPaddingBottom("3");
                              IWDGridData gridLayout2 = (IWDGridData)clnTxt2.createLayoutData(IWDGridData.class);                              
                              gridLayout2.setPaddingBottom("3");     
                              theTarnsDisp.addChild(clnTxt1);
                              theTarnsDisp.addChild(clnTxt2);
                    //          wdThis.wdGetAPI().getComponent().getMessageManager().reportSuccess("first ck in end of for");
                         }//end of intselection for loop                              
                         wdContext.currentContextElement().setModifyFlag(false);     
                    //     wdThis.wdGetAPI().getComponent().getMessageManager().reportSuccess("first check aftr for1");
                    //}//end of intcat for loop
                    //wdThis.wdGetAPI().getComponent().getMessageManager().reportSuccess("first check aftr for2");
          //}// if first time ends
//          second chk
                    //                 wdThis.wdGetAPI().getComponent().getMessageManager().reportSuccess("second check");
               if(wdContext.currentContextElement().getModifiedFlag())
                         String strLine = "";
                         int intLine =0;
                         Collection col = new Vector();
                         IWDTextAccessor textAccessor = wdThis.wdGetAPI().getComponent().getTextAccessor();
                         String strLan = textAccessor.getText("TXT_LAN");
                         if("EN".equalsIgnoreCase(strLan))
                    for(int j=0;j<intList;j++)
                         IDynamicNodeElement dynObj = wdContext.createDynamicNodeElement();
                         strLine = wdContext.nodeWeb_Table_Disp1_Out().getWeb_Table_Disp1_OutElementAt(j).getTline();
                         intLine = strLine.length();
                         strLine = strLine.substring(1,intLine-1);
                         for(int k=0;k<intCat;k++)
                              Integer startIntger = Integer.valueOf(wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(k).getStartpos());
                              Integer lengthIntger = Integer.valueOf(wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(k).getLength());
                              int start = startIntger.intValue();
                              int length = lengthIntger.intValue();
                              String strVal = strLine.substring(start,start+length);
                              if(wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(k).getDatatype().equalsIgnoreCase("DATE"))
                                   try
                                        String strdate ="";
                                        String strFmt = "";
                                        if("YYYY/MM/DD".equalsIgnoreCase(wdContext.currentUser_ProfileElement().getDatefmt()))
                                             strFmt = "yyyy/MM/dd";
                                        else
                                             strFmt = "MM/dd/yyyy";
                                        SimpleDateFormat ch1 = new SimpleDateFormat("yyyyMMdd");
                                        //SimpleDateFormat ch2 = new SimpleDateFormat("yyyy-MM-dd");
                                        SimpleDateFormat ch2 = new SimpleDateFormat(strFmt);
                                        strVal = strVal.trim();
                                        if(!"".equals(strVal))
                                             strdate = ch2.format(ch1.parse(strVal));     
                                        dynObj.setAttributeValue(wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(k).getFieldname(),strdate);
                                   catch(Exception e)
                                        //     msgMgr.reportException(e.getLocalizedMessage(), false);
                                        //     msgMgr.reportException(e.getMessage(), false);
                                        //     msgMgr.reportException(e.toString(), false);
                              else if(wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(k).getDatatype().equalsIgnoreCase("QUAN"))
                                   Double dblVal = null;
                                   DecimalFormat sdf = new DecimalFormat("#,###.000####");
                                   dblVal = new Double(strVal);
                                   dynObj.setAttributeValue(wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(k).getFieldname(),sdf.format(dblVal.doubleValue()));
                              else
                                   dynObj.setAttributeValue(wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(k).getFieldname(),strVal);
                         col.add(dynObj);
                    }// for ends
                         else
                              for(int j=0;j<intList;j++)
                                   IDynamicNodeElement dynObj = wdContext.createDynamicNodeElement();
                                   strLine = wdContext.nodeWeb_Table_Disp1_Out().getWeb_Table_Disp1_OutElementAt(j).getTline();
                                   intLine = strLine.length();
                                   strLine = strLine.substring(1,intLine-1);
                                   String[] strArr = strLine.split("#");
                                   for(int k=0;k<intCat;k++)
//                                        Integer startIntger = Integer.valueOf(wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(k).getStartpos());
//                                        Integer lengthIntger = Integer.valueOf(wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(k).getLength());
//                                        int start = startIntger.intValue();
//                                        int length = lengthIntger.intValue();
//                                        String strVal = strLine.substring(start,start+length);
                                        String strVal = strArr[k];
                                        if(wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(k).getDatatype().equalsIgnoreCase("DATE"))
                                             try
                                                  String strdate ="";
                                                  String strFmt = "";
                                                  if("YYYY/MM/DD".equalsIgnoreCase(wdContext.currentUser_ProfileElement().getDatefmt()))
                                                       strFmt = "yyyy/MM/dd";
                                                  else
                                                       strFmt = "MM/dd/yyyy";
                                                  SimpleDateFormat ch1 = new SimpleDateFormat("yyyyMMdd");
                                                  //SimpleDateFormat ch2 = new SimpleDateFormat("yyyy-MM-dd");
                                                  SimpleDateFormat ch2 = new SimpleDateFormat(strFmt);
                                                  strVal = strVal.trim();
                                                  if(!"".equals(strVal))
                                                       strdate = ch2.format(ch1.parse(strVal));     
                                                  dynObj.setAttributeValue(wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(k).getFieldname(),strdate);
                                             catch(Exception e)
                                                  //     msgMgr.reportException(e.getLocalizedMessage(), false);
                                                  //     msgMgr.reportException(e.getMessage(), false);
                                                  //     msgMgr.reportException(e.toString(), false);
                                        else if(wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(k).getDatatype().equalsIgnoreCase("QUAN"))
                                             Double dblVal = null;
                                             DecimalFormat sdf = new DecimalFormat("#,###.000####");
                                             dblVal = new Double(strVal);
                                             dynObj.setAttributeValue(wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(k).getFieldname(),sdf.format(dblVal.doubleValue()));
                                        else
                                             dynObj.setAttributeValue(wdContext.nodeField_Catalog_Disp1_Out().getField_Catalog_Disp1_OutElementAt(k).getFieldname(),strVal);
                                   col.add(dynObj);
                              }// for ends
                    wdContext.nodeDynamicNode().bind(col);
                    if(wdContext.nodeDynamicNode().size()==0)
                         wdContext.currentContextElement().setDownLoadHide(WDVisibility.NONE);
                    else
                         wdContext.currentContextElement().setDownLoadHide(WDVisibility.VISIBLE);                    
                    wdContext.currentContextElement().setModifiedFlag(false);
             }// if ends
     catch(Exception e)
          wdThis.wdGetAPI().getComponent().getMessageManager().reportException("Error Occurred in WdDoModifyView Method of DisplayList View. Please contact System Administrator"+e,false);
     finally
    //@@end
Thanks & Regards
Jaspreet Kaur

Similar Messages

  • ContextException: DataNodeInfo(AdminView): unknown child node IO

    Hi all,
    I am getting this exception while creating a Web Dynpro application which provides a drop-down menu (containing a list of tables from SQL server) for the user. The user can select a table from the drop-down, and when he clicks Submit, the contents of the table selected has to be displayed.
    For this, I am creating a node in the context of the view dynamically and also adding attributes to the node corresponding to the columns of the table selected. I am doing this dynamic creation in the wdModifyView(). I am creating the view layout which displays the table-contents dynamically too.
    But when I run the application, I am getting this exception. Following is the complete stack trace,
    com.sap.tc.webdynpro.progmodel.context.ContextException: DataNodeInfo(AdminView): unknown child node IO
         at com.sap.tc.webdynpro.progmodel.context.Paths.followMetaPath(Paths.java:794)
         at com.sap.tc.webdynpro.progmodel.context.Paths.getAttributeInfoFor(Paths.java:234)
         at com.sap.tc.webdynpro.clientserver.uielib.standard.uradapter.TableAdapter._getAlignment(TableAdapter.java:11239)
         at com.sap.tc.webdynpro.clientserver.uielib.standard.uradapter.TableAdapter._calculateColumnHAlign(TableAdapter.java:12455)
         at com.sap.tc.webdynpro.clientserver.uielib.standard.uradapter.TableAdapter.setViewAndNodeElement(TableAdapter.java:398)
         at com.sap.tc.webdynpro.clientserver.uielements.adaptmgr.URAdapterManager.getAdapterFor(URAdapterManager.java:285)
         at com.sap.tc.webdynpro.clientserver.uielements.adaptmgr.URAdapterManager.getAdapterFor(URAdapterManager.java:93)
         at com.sap.tc.webdynpro.clientserver.uielements.adaptbase.AbstractAdapter.getAdapterFor(AbstractAdapter.java:495)
         at com.sap.tc.webdynpro.clientserver.uielib.standard.uradapter.FlowLayoutAdapter$Items.getControl(FlowLayoutAdapter.java:368)
         at com.sap.tc.ur.renderer.ie6.FlowLayoutRenderer.renderFlowLayoutItemFragment(FlowLayoutRenderer.java:288)
         at com.sap.tc.ur.renderer.ie6.FlowLayoutRenderer.renderFlowLayoutFragment(FlowLayoutRenderer.java:244)
         at com.sap.tc.ur.renderer.ie6.FlowLayoutRenderer.render(FlowLayoutRenderer.java:49)
         at com.sap.tc.webdynpro.clientimpl.html.renderer.uielements.base.RenderManager.render(RenderManager.java:434)
         at com.sap.tc.webdynpro.clientimpl.html.renderer.uielements.base.RenderManager.render(RenderManager.java:133)
         at com.sap.tc.ur.renderer.ie6.ScrollContainerRenderer.renderScrollContainerFragment(ScrollContainerRenderer.java:619)
         at com.sap.tc.ur.renderer.ie6.ScrollContainerRenderer.render(ScrollContainerRenderer.java:74)
         at com.sap.tc.webdynpro.clientimpl.html.renderer.uielements.base.RenderManager.render(RenderManager.java:434)
         at com.sap.tc.webdynpro.clientimpl.html.renderer.uielements.base.RenderManager.render(RenderManager.java:133)
         at com.sap.tc.webdynpro.clientimpl.html.renderer.uielements.base.UiWindowRenderer.render(UiWindowRenderer.java:52)
         at com.sap.tc.webdynpro.clientimpl.html.renderer.uielements.base.RenderManager.render(RenderManager.java:434)
         at com.sap.tc.webdynpro.clientimpl.html.renderer.uielements.base.RenderManager.render(RenderManager.java:133)
         at com.sap.tc.webdynpro.clientimpl.html.client.HtmlClient.sendHtml(HtmlClient.java:1057)
         at com.sap.tc.webdynpro.clientimpl.html.client.HtmlClient.fillDynamicTemplateContext(HtmlClient.java:457)
         at com.sap.tc.webdynpro.clientimpl.html.client.HtmlClient.sendResponse(HtmlClient.java:1245)
         at com.sap.tc.webdynpro.clientimpl.html.client.HtmlClient.retrieveData(HtmlClient.java:253)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doRetrieveData(WindowPhaseModel.java:595)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:156)
         at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335)
         at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:143)
         at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:321)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingStandalone(ClientSession.java:713)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:666)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:250)
         at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:150)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:62)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doPost(DispatcherServlet.java:53)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:387)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:365)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:944)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:266)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
    Please help...

    Here it is,
    public static void wdDoModifyView(IPrivateAdminView wdThis, IPrivateAdminView.IContextNode wdContext, com.sap.tc.webdynpro.progmodel.api.IWDView view, boolean firstTime)
        //@@begin wdDoModifyView
              if (firstTime) {
              } else {
                   String[] retString = null;
                   java.util.ArrayList arList = new java.util.ArrayList();
                   Context ctx = null;
                   DataSource ds = null;
                   String dataSource = "jdbc/WebCASDS";
                   try {
                        ctx = new InitialContext();
                        if (ctx == null) {
                             wdContext
                                  .wdGetAPI()
                                  .getController()
                                  .getComponent()
                                  .getMessageManager()
                                  .reportSuccess("Error - No Context");
                        ds = (DataSource) ctx.lookup(dataSource);
                        if (ds == null) {
                             wdContext
                                  .wdGetAPI()
                                  .getController()
                                  .getComponent()
                                  .getMessageManager()
                                  .reportSuccess("Error - No dataSource: " + ds);
                   } catch (ContextException ce) {
                        wdContext
                             .wdGetAPI()
                             .getController()
                             .getComponent()
                             .getMessageManager()
                             .reportSuccess("Inside catch1: Context Exception" + ce);
                   } catch (Exception e) {
                        wdContext
                             .wdGetAPI()
                             .getController()
                             .getComponent()
                             .getMessageManager()
                             .reportSuccess("DataSource Look up Exception ");
                   try {
                        IWDDropDownByKey key =
                             (IWDDropDownByKey) view.getElement("DropDownByKey");
                        String TableName1 = key.getSelectedKey();
                        wdContext
                             .wdGetAPI()
                             .getController()
                             .getComponent()
                             .getMessageManager()
                             .reportSuccess("Selected Table : " + TableName1);
                        Statement stmt = null;
                        ResultSet rs = null;
                        ResultSetMetaData rsmtadta = null;
                        int colCount;
                        int x = 0;
                        int i;
                        String[] colName = null;
                        String[] colType = null;
                        String sqlQuery = null;
                        stmt = conn1.createStatement();
                        sqlQuery = "select * from " + TableName1 + "";
                        wdContext
                             .wdGetAPI()
                             .getController()
                             .getComponent()
                             .getMessageManager()
                             .reportSuccess("SQL Query:" + sqlQuery);
                        stmt.execute(sqlQuery);
                        rs = stmt.executeQuery(sqlQuery);
                        rsmtadta = rs.getMetaData();
                        colCount = rsmtadta.getColumnCount();
                        wdContext
                             .wdGetAPI()
                             .getController()
                             .getComponent()
                             .getMessageManager()
                             .reportSuccess("Column Count " + colCount);
                        colName = new String[colCount + 1];
                        colType = new String[colCount + 1];
                        for (i = 1; i <= colCount; i++) {
                             colName[i - 1] = rsmtadta.getColumnName(i);
                             colType[i - 1] = rsmtadta.getColumnTypeName(i);
                             if (colType[i - 1].equalsIgnoreCase("varchar")) {
                                  colType[i - 1] = "ddic:com.sap.dictionary.string";
                             } else if (colType[i - 1].equalsIgnoreCase("datetime")) {
                                  colType[i - 1] = "ddic:com.sap.tut.wd.languages.myDate";
                             wdContext
                                  .wdGetAPI()
                                  .getController()
                                  .getComponent()
                                  .getMessageManager()
                                  .reportSuccess("Column Name " + colName[i - 1]);
                             wdContext
                                  .wdGetAPI()
                                  .getController()
                                  .getComponent()
                                  .getMessageManager()
                                  .reportSuccess("Column Type " + colType[i - 1]);
                        //Creating a node corresponding to the selected table
                        IWDNodeInfo rootNodeInfo = wdContext.getNodeInfo();
                        IWDNodeInfo tableNodeInfo =
                             rootNodeInfo.addChild(
                                  "TableSelected",
                                  null,
                                  true,
                                  false,
                                  true,
                                  false,
                                  false,
                                  true,
                                  null,
                                  null,
                                  null);
                        wdContext
                             .wdGetAPI()
                             .getController()
                             .getComponent()
                             .getMessageManager()
                             .reportSuccess("After node creation");
                        //Creating the attributes for the node created.. corresponding to the columns present in the selected table
                        for (i = 1; i <= colCount; i++) {
                             tableNodeInfo.addAttribute(colName[i - 1], colType[i - 1]);
                        wdContext
                             .wdGetAPI()
                             .getController()
                             .getComponent()
                             .getMessageManager()
                             .reportSuccess("After attribute creation");
                        IWDNode tableNode = wdContext.getChildNode("TableSelected", 0);
                        int rowCount = 0;
                        while (rs.next()) {
                             try {
                                  IWDNodeElement tableElement = tableNode.createElement();
                                  wdContext
                                       .wdGetAPI()
                                       .getController()
                                       .getComponent()
                                       .getMessageManager()
                                       .reportSuccess("Inside while before for, element initialized");
                                  for (i = 1; i <= colCount; i++) {
                                       wdContext
                                            .wdGetAPI()
                                            .getController()
                                            .getComponent()
                                            .getMessageManager()
                                            .reportSuccess(
                                                 "values1..."
                                                      + rs.getObject(
                                                           colName[i - 1].toString()));
                                  for (i = 1; i <= colCount; i++) {
                                       tableElement.setAttributeValue(
                                            colName[i - 1],
                                            rs.getObject(colName[i - 1].toString()));
                                       wdContext
                                            .wdGetAPI()
                                            .getController()
                                            .getComponent()
                                            .getMessageManager()
                                            .reportSuccess("Inside for, element row created");
                                  tableNode.addElement(tableElement);
                                  wdContext
                                       .wdGetAPI()
                                       .getController()
                                       .getComponent()
                                       .getMessageManager()
                                       .reportSuccess("Element created :" + tableElement);
                                  rowCount++;
                             } catch (ContextException ce) {
                                  wdContext
                                       .wdGetAPI()
                                       .getController()
                                       .getComponent()
                                       .getMessageManager()
                                       .reportSuccess(
                                            "Inside catch2: Context Exception" + ce);
                             } catch (ClassCastException e) {
                                  wdContext
                                       .wdGetAPI()
                                       .getController()
                                       .getComponent()
                                       .getMessageManager()
                                       .reportSuccess("Class cast exception" + e);
                        IWDTable table =
                             (IWDTable) view.createElement(IWDTable.class, null);
                        IWDNodeInfo tableNodeCreatedInfo = tableNode.getNodeInfo();
                        table.bindDataSource(tableNodeCreatedInfo);
                        IWDCaption tableCaption =
                             (IWDCaption) view.createElement(IWDCaption.class, null);
                        tableCaption.setText("Table Contents");
                        table.setHeader(tableCaption);
                        for (i = 1; i <= colCount; i++) {
                             IWDTableColumn column =
                                  (IWDTableColumn) view.createElement(
                                       IWDTableColumn.class,
                                       "ColCaption" + i);
                             IWDCaption caption =
                                  (IWDCaption) view.createElement(
                                       IWDCaption.class,
                                       "TableCaption" + i);
                             String header = colName[i - 1];
                             caption.setText(header);
                             column.setHeader((IWDCaption) caption);
                             table.addColumn(column);
                             wdContext
                                  .wdGetAPI()
                                  .getController()
                                  .getComponent()
                                  .getMessageManager()
                                  .reportSuccess("Inside for after creating column header");
                        //                                        IWDUIElementContainer root =
                        //                                                                 (IWDUIElementContainer) view.getRootElement();
                        //                                                            root.addChild(table);
                        int k = 1;
                        while (k <= rowCount) {
                             wdContext
                                  .wdGetAPI()
                                  .getController()
                                  .getComponent()
                                  .getMessageManager()
                                  .reportSuccess("Inside while layout creation after headers are in");
                             for (i = 1; i <= colCount; i++) {
                                  IWDTableColumn innerColumn =
                                       (IWDTableColumn) view.createElement(
                                            IWDTableColumn.class,
                                            null);
                                  IWDNodeElement nodeElement =
                                       tableNode.getElementAt(k - 1);
                                  String attribValue =
                                       nodeElement.getAttributeAsText(colName[i - 1]);
                                  wdContext
                                       .wdGetAPI()
                                       .getController()
                                       .getComponent()
                                       .getMessageManager()
                                       .reportSuccess(
                                            "Inside inner for, attrib value "
                                                 + attribValue);
                                  IWDTextView nameTextview1 =
                                       (IWDTextView) view.createElement(
                                            IWDTextView.class,
                                            "nameTextview" + k + i);
                                  wdContext
                                       .wdGetAPI()
                                       .getController()
                                       .getComponent()
                                       .getMessageManager()
                                       .reportSuccess("After text-view creation");
                                  nameTextview1.bindText(attribValue);
                                  innerColumn.setTableCellEditor(
                                       (IWDTableCellEditor) nameTextview1);
                                  table.addColumn(innerColumn);
                             k++;
                        IWDUIElementContainer root =
                             (IWDUIElementContainer) view.getRootElement();
                        root.addChild(table);
                   } catch (ContextException ce) {
                        wdContext
                             .wdGetAPI()
                             .getController()
                             .getComponent()
                             .getMessageManager()
                             .reportSuccess("Inside catch3: Context Exception" + ce);
                   } catch (RuntimeException e) {
                        wdContext
                             .wdGetAPI()
                             .getController()
                             .getComponent()
                             .getMessageManager()
                             .reportSuccess("Inside catch : runtime exception" + e);
                   } catch (SQLException e) {
                        wdContext
                             .wdGetAPI()
                             .getController()
                             .getComponent()
                             .getMessageManager()
                             .reportSuccess("Inside catch : SQL exception" + e);
                   } catch (Exception e) {
                        wdContext
                             .wdGetAPI()
                             .getController()
                             .getComponent()
                             .getMessageManager()
                             .reportSuccess("..normal exc.." + e);
        //@@end

  • Unknown child node Zzemai error

    Hi Experts,
    We have added a new email id filed  to the existing Addresses ivew (Ctrl+right click changes) in ESS and transported to production as it's giving the "500 internal server error" and Unknown child node Zzemai . As we have done the testing in Test region and it works fine. The backend transport & portal iview transports both are successful but all ESS users are getting the error while clicking on Addresses link under Personal Information on Portal.
    Need a help in resolving the issue. Full points will be awarded for all answers.
    Regards,
    Sreedhar G

    Hi all,
    Thanks a lot for your reply.
    We have restarted both Java & ABAP but no luck. As per the error "Unknown Child Node Zzemai" , here I'm suspecting is my transport is correct or not? I have created a Portal Transport request and added only "Addresses" iview from Content Provided by SAP and Exported and Imported to Production after that the problem is happening. Is there any other object need to be transported along with the "Addresses" iview or not?
    And also when I do the Ctrl+Right click on the iview on the production I can't see the fileds ->  Edit Custom Extension Fields .  These fields are showing in Dev & QA Portal but the transported iview / page is not showing this option. Any idea on this?
    Note: The J2ee engine has been restarted but no luck. And also as per the above mentioned doc we checked the Ctrl+right click changes to the iview and the properties are visible.
    Kindly revert.
    Regadrs,
    Sreedhar
    Edited by: sreedhar Gunda on Sep 26, 2010 10:40 AM
    Edited by: sreedhar Gunda on Sep 26, 2010 2:00 PM

  • Regarding : Creation of child nodes in a outlinefield

    Hi,
    I am facing a few problems in creating a child node. I read elements from an array to populate the outline field. The array has exact definitions as to what should be a parent and child respectively. While I am able to create nodes at the parent level, I am unable to create child nodes for any parent. I discovered that the value for the parent node is getting lost. I have tried to use some of the methods to arrive at the parent node, but to no anvil. Could some one suggest how exactly to get the value of the parent node so that the child node can be assigned to the parent.
    Thanks In advance.
    Balasubramaniam Sures
    [email protected]
    P.S : I have seen the examples Simple Outline field and File Browser. No clues from here.

    I take it that you are traversing through the array and loading each
    element into the OutlineField. At the risk of stating the obvious, for
    each element you must also identify it's parent. This is necessary to
    set the relationship from the child to the parent or vise versa.
    If you are already doing this and are still having difficulty, the
    problem may be as simple as setting the IsFolder property of the parent
    node. Unless this is done, it's child nodes will not be visible.
    Van Vuong
    Lead Technical Analyst
    Office: 972.985.5289
    VoiceNow: 972.330.0822
    Internet: [email protected]
    PAGE NET
    From: bala[SMTP:[email protected]]
    Sent: Friday, October 03, 1997 12:32 PM
    To: '[email protected]'
    Subject: Regarding : Creation of child nodes in a outline field
    Hi,
    I am facing a few problems in creating a child node. I read elements from an
    array to populate the outline field. The array has exact definitions as to
    what should be a parent and child respectively. While I am able to create
    nodes at the parent level, I am unable to create child nodes for any parent.
    I discovered that the value for the parent node is getting lost. I have
    tried to use some of the methods to arrive at the parent node, but to no
    anvil. Could some one suggest how exactly to get the value of the parent node
    so that the child node can be assigned to the parent.
    Thanks In advance.
    Balasubramaniam Sures
    [email protected]
    P.S : I have seen the examples Simple Outline field and File Browser. No
    clues from here.

  • RE: Regarding : Creation of child nodes in a outlinefield

    Hi, Balasubramaniam:
    Try to set the isFolder attribute of your parent display node to TRUE.
    This may solve your problem. Also, check isFilled attribute of display
    node, you might find the answer.
    Hope this helps.
    Tien Wang
    Indus Consultancy Services
    http://www.indcon.com
    Phone 201.261.3100 x233
    Fax 201.261.1399
    E-mail : [email protected]
    -----Original Message-----
    From: owner-forte-users [SMTP:[email protected]]
    Sent: Friday, October 03, 1997 5:32 PM
    To: '[email protected]'
    Subject: Regarding : Creation of child nodes in a outline field
    Hi,
    I am facing a few problems in creating a child node. I read elements =
    from an array to populate the outline field. The array has exact =
    definitions as to what should be a parent and child respectively. While =
    I am able to create nodes at the parent level, I am unable to create =
    child nodes for any parent. I discovered that the value for the parent =
    node is getting lost. I have tried to use some of the methods to arrive
    =
    at the parent node, but to no anvil. Could some one suggest how exactly =
    to get the value of the parent node so that the child node can be =
    assigned to the parent.
    Thanks In advance.
    Balasubramaniam Sures
    [email protected]
    P.S : I have seen the examples Simple Outline field and File Browser. No
    =
    clues from here.

    I take it that you are traversing through the array and loading each
    element into the OutlineField. At the risk of stating the obvious, for
    each element you must also identify it's parent. This is necessary to
    set the relationship from the child to the parent or vise versa.
    If you are already doing this and are still having difficulty, the
    problem may be as simple as setting the IsFolder property of the parent
    node. Unless this is done, it's child nodes will not be visible.
    Van Vuong
    Lead Technical Analyst
    Office: 972.985.5289
    VoiceNow: 972.330.0822
    Internet: [email protected]
    PAGE NET
    From: bala[SMTP:[email protected]]
    Sent: Friday, October 03, 1997 12:32 PM
    To: '[email protected]'
    Subject: Regarding : Creation of child nodes in a outline field
    Hi,
    I am facing a few problems in creating a child node. I read elements from an
    array to populate the outline field. The array has exact definitions as to
    what should be a parent and child respectively. While I am able to create
    nodes at the parent level, I am unable to create child nodes for any parent.
    I discovered that the value for the parent node is getting lost. I have
    tried to use some of the methods to arrive at the parent node, but to no
    anvil. Could some one suggest how exactly to get the value of the parent node
    so that the child node can be assigned to the parent.
    Thanks In advance.
    Balasubramaniam Sures
    [email protected]
    P.S : I have seen the examples Simple Outline field and File Browser. No
    clues from here.

  • How to add a button in the child node of the Tree Table?

    Hi All,
    I am having a requirement to create a tree table and it should have a delete button to each child node (screenshot attached).
    Can anyone provide me a sample for how to implement this.
    Thanks in Advance
    Aravindh

    Hi Aravindhan,
    Try something like this:
    var ttDesvios = new sap.ui.table.TreeTable();
      var cbDesviacion = new sap.ui.commons.CheckBox();
      ttDesvios.addColumn(new sap.ui.table.Column({
      label: new sap.ui.commons.Label({text: "Col1"}),
      template: new sap.ui.commons.Label({text: "Info"}),
      width: "50px",
      ttDesvios.addColumn(new sap.ui.table.Column({
      label: new sap.ui.commons.Label({text: "Action"}),
      template: new sap.ui.commons.Button({text: "Delete"}).bindProperty("visible", "pathPropertyChild", function(value){
              if(value .............){ return true;} //For child
              else{ return false;} //For parent
      width: "160px",
    Regards
    EDIT: Wrong paste code, that's better!

  • Child node attributes do not appear in ABAP WD

    Hi,
      I have the following context hierarchy (in ABAP WD):
    -Context
    ---Child_Node_A
    Sub_Child_NodeB
    AttributeE_of_Sub_Child_NodeB
    AttributeF_of_Sub_Child_NodeB
    AttributeG_of_Sub_Child_NodeB
    Sub_Child_NodeC
    AttributeH_of_Sub_Child_NodeC
    AttributeI_of_Sub_Child_NodeC
    AttributeJ_of_Sub_Child_NodeC
    AttributeA_of_Child_Node_A
    AttributeB_of_Child_Node_A
    AttributeC_of_Child_Node_A
    The attributes A, B, C of Child_Node_A are displayed in an ALV grid and the idea is that when the user selects a row in the ALV grid and clicks on a button, a popup is to be shown with additional details of the selected row in the ALV.  In this popup, I have some fields which are mapped to the attributes E, F, G of Sub_Child_NodeB and attributes H, I, J of Sub_Child_NodeC.  But when I show the popup the fields are empty.
    I use a supply function in the Component Controller to fill Child_Node_A and its children, so typically when the popup appears I should see the attributes of the Sub_Child_Node B and C which are linked to the lead selection of the ALV grid (i.e.: Child_Node_A), right?
    By the way, I have linked Child_Node_A from the Component Controller Context to the Context of my Main View and Popup View.  Also, I checked in the INIT method of my Main view to see if after the supply function has been called the Sub_Child_Nodes attributes were still there for a given lead selection in the ALV grid and they were.  But in my action handler to show the popup window from my Main view, I checked again to see if the Sub_Child_Nodes attributes were still there and they were not.
    I hope I was clear enough in my explanation.
    Thanks in advance for your help,
    Christian

    Hi Christian,
    We discussed this problem offline, but I would like to give some feedback on what we found out.
    (a) Since Child_Node_A had a supply function that also supplied Sub_Child_NodeB and since Sub_Child_NodeB was a singleton, it was not resupplied. The initial element originated from having Sub_Child_NodeB as 1..1 cardinality. In this case the runtime recreates an initial node element upon invalidation of the node.
    (b) The second problem might be related to the ALV. As the ALV does not support child nodes being present for the data displayed, the assumption is that Sub_Child_NodeB might have been invalidated once the data was copied back from the ALV to Child_Node_A.
    The solution is to have a supply function for Sub_Child_NodeB as well, which will counter any invalidation at any point in time and will restore the original data.
    I am curious if (b) is really the cause of the problem described.
    Best regards,
    Thomas

  • Binding Dropdownbykey to child node's attribute dynamically

    Hi..
    i am creating a child node "CHILD" and attribute attached to it "ATTR" dynamically. Also i create a dynamic dropdownbykey element and trying to attach the ATTR. then i get the following error. zdyn_date is data element with some fixed values. Please let me know as quick as possible.
    <b>"Adapter error in DROPDOWN_BY_KEY "KEY1" of view "ZDYN_DDKEY.MAIN": Context binding for property SELECTED_KEY cannot be resolved: The MAIN.1.CHILD node does not contain any elements"</b>
    METHOD WDDOMODIFYVIEW .
      DATA: LR_ROOT_INFO TYPE REF TO IF_WD_CONTEXT_NODE_INFO,
            LR_CHILD_INFO TYPE REF TO IF_WD_CONTEXT_NODE_INFO,
            cl_des type REF TO CL_ABAP_ELEMDESCR,
    ATTR_INFO TYPE WDR_CONTEXT_ATTRIBUTE_INFO.
      LR_ROOT_INFO = WD_CONTEXT->GET_NODE_INFO( ).
    CALL METHOD lr_root_info->ADD_NEW_CHILD_NODE
          EXPORTING
            NAME                         = 'CHILD'
          RECEIVING
            CHILD_NODE_INFO              = lr_child_info.
      ATTR_INFO-NAME = 'ATTR'.
      ATTR_INFO-TYPE_NAME = 'ZDYN_DATE'.
      CALL METHOD lr_child_info->ADD_ATTRIBUTE
        EXPORTING
          ATTRIBUTE_INFO = ATTR_INFO.
      DATA: LR_ROOT_CONTAINER TYPE REF TO CL_WD_TRANSPARENT_CONTAINER,
            LE_DD_KEY1 TYPE REF TO CL_WD_DROPDOWN_BY_KEY.
      LR_ROOT_CONTAINER ?= VIEW->GET_ELEMENT( 'ROOTUIELEMENTCONTAINER' ).
      CALL METHOD CL_WD_DROPDOWN_BY_KEY=>NEW_DROPDOWN_BY_KEY
        EXPORTING
          BIND_SELECTED_KEY      = 'CHILD.ATTR'
          ID                     = 'KEY1'
        RECEIVING
          CONTROL                = LE_DD_KEY1. .
      CALL METHOD CL_WD_MATRIX_LAYOUT=>NEW_MATRIX_LAYOUT
        EXPORTING
          CONTAINER = LR_ROOT_CONTAINER.
      CALL METHOD CL_WD_MATRIX_HEAD_DATA=>NEW_MATRIX_HEAD_DATA
        EXPORTING
          ELEMENT = LE_DD_KEY1.
      CALL METHOD LR_ROOT_CONTAINER->ADD_CHILD
        EXPORTING
        INDEX     =
          THE_CHILD = LE_DD_KEY1.
    ENDMETHOD.

    Hi ,
    can u try to create the node and its attribute in some other method..like in some action or in WDDOINIT instead of wddomodifyview .bcoz its recommended not to modify the data of node in wddomodifyview ..
    hope it will solve ur problem .
    Regards
    Yash

  • Acess child node elements

    Hi Experts,
    I have a child node B in node A . This node B has singleton property false .
    I have to acess current element of child node B  while looping on node A .
    Please Help.
    Thanks in advance ,

    Hello Hara,
    try this:
    final IPrivateXXX.INodeANode nodeA = wdContext.nodeNodeA();
    final int sizeA = nodeA.size();
    for (int i = 0; i< sizeA; i++)
         final IPrivateXXX.INodeAElement element = (IPrivateXXX.INodeAElement)nodeA.getElementAt( i );
         final IPrivateXXX.INodeBNode nodeB = element.nodeNodeB();
         //current element in nodeB
         final IPrivateXXX.INodeBElement currentChildElement = nodeB.currentNodeBElement();
         //and just in case - the rest...
         final int sizeB = nodeB.size();
         for (int j = 0; j< sizeB; j++) {
              final IPrivateXXX.INodeBElement childElement = (IPrivateXXX.INodeBElement)nodeB.getElementAt( j );
              //do action with child element
    Best regards, Maksim Rashchynski.

  • Problem with childs nodes and automatic key mapping in a Data Object

    Hi experts!
    I'm doing the service order tutorial from the mobile help at [this link|http://help.sap.com/saphelp_nwmobile71/helpdata/en/21/9b5b924c3b434fba4767731794b029/frameset.htm] and I have a problem...
    In the topic "Modeling the Equipment Data Object", says you have to mark the "Automatic Key Mapping" checkbox. So when I had to create a third child node ( the location node ) the system raised an exception with the message "Deselect automatic key mapping flag for more than two-level nodes". I'm trying deselecting the flag and creating the location node, but when I want mark again the automatic key mapping flag, this is disabled.
    What can I do to solve this and create the three child nodes with the flag marked? It's a configuration thing?
    Any help it's very welcome. Thanks in advance.
    Best regards,
    Simon.

    The thing is: Its not allowed to use automatic keymapping if you have more than two levels. This is why the message showed up, and this is why its been disabled.
    What automatic keymapping does: Figures out automatically which child node belongs to which parent (by guessing from the field name and type, which fields in the child correspond to which key fields of the parent).
    On three levels, this becomes more complicated => Its disabled.
    How to do keymapping yourself instead of having the DOE do it automatically: Do 'Explicit keymapping' from each child to its parent. Explicit keymapping is done by clicking on the corresponding menu button in the child node. Here you need to associate child node fields (they need not be key fields of the child, but they are allowed to be that as well) to each of its parent nodes key fields (so that each child can be associated to its parent).
    Cheers

  • How do I create multiple types of child nodes in ADF  Faces Tree Component

    Hi,
    I am trying to construct a tree using ADF Faces. The tree I am trying to develop should look something like:
    - Departments
    + Dept 10
    + Dept 20
    + Dept 30
    + Dept 40
    - Employees
    + SCOTT
    +ALLEN
    + BLAKE
    The nodes shown at the top level should serve as labels, indicating the various types of nodes available.
    I have created the top level RootLabelsViewObj, with a SQL clause:
    select rn, node_label
    from (
    select 1 rn
    , 'Employees' node_label
    from dual
    union all
    select 2 rn
    , 'Departments' node_label
    from dual
    union all
    select 3 rn
    , 'Bonusplans' node_label
    from dual
    I have created ViewLinks between the RootLabelsViewObj and the DeptView and EmpView respectively (created on top of DEPT and EMP table in SCOTT schema), based on the LABEL attribute in the RootLabelsViewObj and with ViewLink SQL specified like:
    :Bind_NodeLabel = 'Departments' for the link with DeptView and :Bind_NodeLabel = 'Employees' for the link with EmpView.
    In the ADF BC Application Module Tester, I get exactly what I want.
    However, when I create a JSF JSPX page and drag the RootLabelsViewObj from the Data Control Panel to the page as ADF Tree, I run into a little issue: it seems like I cannot create a second Branch Accessor rule for the RootLabelsViewObj1: I have created a first Branch Accessor Rule referring to DeptView and now try to create a second one for EmpView, to allow Employees to be displayed under the root label "Employees" - but I cannot.
    The PageDefinition looks like:
    <tree id="RootLabelsViewObj1" IterBinding="RootLabelsViewObj1Iterator">
    <AttrNames>
    <Item Value="Rn"/>
    <Item Value="NodeLabel"/>
    </AttrNames>
    <nodeDefinition DefName="model.RootLabelsViewObj"
    id="RootLabelsViewObjNode">
    <AttrNames>
    <Item Value="NodeLabel"/>
    </AttrNames>
    <Accessors>
    <Item Value="DeptView"/>
    </Accessors>
    </nodeDefinition>
    <nodeDefinition DefName="model.EmpView" id="EmpViewNode">
    <AttrNames>
    <Item Value="Ename"/>
    </AttrNames>
    </nodeDefinition>
    <nodeDefinition DefName="model.DeptView" id="DeptViewNode">
    <AttrNames>
    <Item Value="Deptno"/>
    </AttrNames>
    </nodeDefinition>
    </tree>
    Does anyone know:
    - whether it is possible (intended) to have more than one branch accessor per node (i.e. more than one type of child under a node in the tree)
    - if so, how this can be achieved?
    Right now it looks like I am limited to each node in the tree having only one type of child node.
    Please tell me I am wrong.
    best regards,
    Lucas

    Give this a shot mate
    event.getNativeEventTarget();That will allow you to access the DOM object directly
    Id can be retrieved via
    event.getNativeEventTarget().id;

  • Problem in delting child node from tree

    Hello friends I have a problem in tree component
    I am using Xml File with creator .
    I am showing company name as a root node
    then department name as a child of company name
    then employee name as a child of department
    Initialy its working fine ,user can add edit and delete any node
    In add and edit option I have no problem but in delete I hava a problem
    when I am deleting any child node and after deleting the node I am clicking on the root node of the deleted node the it gives me null pointer Ecxeption .
    but user added any child node and then delete it then Application work properly .
    What is the problem I can't Understand please help me
    thanks
    Raviraj Gangrade

    thanks deepsix for helping me
    it gives me java.lang.NullPointerException and class name is
    net.sf.saxon.dom.NodeWrapper$ChildEnumeration
    here is my Stack Trace
    javax.faces.FacesException: #{Graphs.childNode_action}: javax.faces.el.EvaluationException: java.lang.NullPointerException
    at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:78)
    at com.sun.rave.web.ui.appbase.faces.ActionListenerImpl.processAction(ActionListenerImpl.java:57)
    at javax.faces.component.UICommand.broadcast(UICommand.java:312)
    at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:267)
    at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:307)
    at com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:79)
    at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:221)
    at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:90)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
    at sun.reflect.GeneratedMethodAccessor270.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:249)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
    at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:282)
    at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:165)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:257)
    at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
    at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:161)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
    at com.sun.rave.web.ui.util.UploadFilter.doFilter(UploadFilter.java:194)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
    at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:161)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:263)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
    at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:225)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:132)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:933)
    at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:189)
    at com.sun.enterprise.web.connector.grizzly.ProcessorTask.doProcess(ProcessorTask.java:604)
    at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:475)
    at com.sun.enterprise.web.connector.grizzly.ReadTask.executeProcessorTask(ReadTask.java:371)
    at com.sun.enterprise.web.connector.grizzly.ReadTask.doTask(ReadTask.java:264)
    at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:281)
    at com.sun.enterprise.web.connector.grizzly.WorkerThread.run(WorkerThread.java:83)
    Caused by: javax.faces.el.EvaluationException: java.lang.NullPointerException
    at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:130)
    at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:72)
    ... 44 more
    Caused by: java.lang.NullPointerException
    at pegasusweb.Graphs.childNode_action(Graphs.java:1075)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:126)
    ... 45 more
    |#]
    [#|2006-11-30T14:51:30.000+0530|SEVERE|sun-appserver-pe8.2|javax.enterprise.system.container.web|_ThreadID=16;|StandardWrapperValve[Faces Servlet]: Servlet.service() for servlet Faces Servlet threw exception
    com.sun.rave.web.ui.appbase.ApplicationException: #{Graphs.childNode_action}: javax.faces.el.EvaluationException: java.lang.NullPointerException
    at com.sun.rave.web.ui.appbase.faces.ViewHandlerImpl.destroy(ViewHandlerImpl.java:601)
    at com.sun.rave.web.ui.appbase.faces.ViewHandlerImpl.renderView(ViewHandlerImpl.java:302)
    at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
    at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:221)
    at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
    at sun.reflect.GeneratedMethodAccessor270.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:249)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
    at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:282)
    at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:165)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:257)
    at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
    at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:161)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
    at com.sun.rave.web.ui.util.UploadFilter.doFilter(UploadFilter.java:194)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
    at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:161)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:263)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
    at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:225)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:132)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:933)
    at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:189)
    at com.sun.enterprise.web.connector.grizzly.ProcessorTask.doProcess(ProcessorTask.java:604)
    at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:475)
    at com.sun.enterprise.web.connector.grizzly.ReadTask.executeProcessorTask(ReadTask.java:371)
    at com.sun.enterprise.web.connector.grizzly.ReadTask.doTask(ReadTask.java:264)
    at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:281)
    at com.sun.enterprise.web.connector.grizzly.WorkerThread.run(WorkerThread.java:83)
    Caused by: javax.faces.FacesException: #{Graphs.childNode_action}: javax.faces.el.EvaluationException: java.lang.NullPointerException
    at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:78)
    at com.sun.rave.web.ui.appbase.faces.ActionListenerImpl.processAction(ActionListenerImpl.java:57)
    at javax.faces.component.UICommand.broadcast(UICommand.java:312)
    at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:267)
    at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:307)
    at com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:79)
    at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:221)
    at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:90)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
    ... 36 more
    Caused by: javax.faces.el.EvaluationException: java.lang.NullPointerException
    at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:130)
    at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:72)
    ... 44 more
    Caused by: java.lang.NullPointerException
    at pegasusweb.Graphs.childNode_action(Graphs.java:1075)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:126)
    ... 45 more
    |#]

  • Check the value of attribute of a child node in datatype xmltype.

    Hello,
    I have a xml stored in column having datatype as "XMLTYPE"
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <Settings>
      <Setting Name="A1" Value="N"/>
      <Setting Name="A2" Value="N"/>
      <Setting Name="A3" Value="SOMEVALUE"/>
      <Setting Name="A4" Value="N"/>
      <Setting Name="A5" Value="Y"/>
      <Setting Name="A6" Value="N"/>
    </Settings>I do not want to loop into each child node. But want to find out if the value of setting A5 is Y or N? Is there a way I can find that without doing the extract of "Setting" child node and then looping each node to find the value?
    Regards,

    You didn't specify your version of Oracle so here are two options. If 10.2 or greater, use XMLTable, else use the ExtractValue option.
    -- The WITH simply simulates your existing table that I do not have.
    WITH fake_tab AS
    (SELECT XMLTYPE('<?xml version="1.0" encoding="ISO-8859-1"?>
    <Settings>
      <Setting Name="A1" Value="N"/>
      <Setting Name="A2" Value="N"/>
      <Setting Name="A3" Value="SOMEVALUE"/>
      <Setting Name="A4" Value="N"/>
      <Setting Name="A5" Value="Y"/>
      <Setting Name="A6" Value="N"/>
    </Settings>
    ') tab_col
      FROM dual)
    -- For 10.2 and higher use this SELECT
    SELECT a5
      FROM fake_tab,
           XMLTABLE('/Settings'
                    PASSING fake_tab.tab_col
                    COLUMNS
                    a5   VARCHAR2(10)  PATH 'Setting[@Name="A5"]/@Value');
    -- For 10.1 and before
    SELECT ExtractValue(tab_col, '/Settings/Setting[@Name="A5"]/@Value')
      FROM fake_tab;

  • Context Mapping: child-nodes of non-mapped parent nodes

    I am somewhat curious about Context Mapping in WebDynpro.
    Which parents nodes need to be mapped in order to map child nodes ? Does a child node has more than one parent node (e.g. grandparent - two steps above) ?
    A.1  -
    MAPPED----
    >    B.1
      - A1.1   NOT MAPPED
      - A1.2   NOT MAPPED
            - A.1.2.1     MAPPED TO>    B.1.2.4
            - A.1.2.2   NOT MAPPED
      - A1.3   NOT MAPPED
    Is it sufficient that only one of these parent nodes (e.g. direct parent node not mapped, but parent node of this parent node is mapped) need to be mapped so that the child node can be mapped ?
    Is this assumption true or not ?
    The SAP library states:
    "Conversely, child nodes of non-mapped parent nodes cannot be mapped, otherwise this would result in irresolvable conflicts at runtime with respect to the parent-child relation in the context and the mapping relation." (http://help.sap.com/saphelp_nw04/helpdata/de/51/a3384162316532e10000000a1550b0/content.htm)
    This statement is not absolutely clear on this issue.

    Let me put it this way
    You have a node vehicle and you have a child node for that the car. The car node have parameters car1, car2.
    Let the vehicle node have parameters veh1 and veh2
    Then if you map vehicle node one to any other node (say in the comp. controller) you have the option of mapping its children i.e veh1,veh2 and carnode.
    You can have that veh1 is mapped and veh2 is not mapped.
    vehicle node(mapped)
    veh1(may or may not be mapped)
    veh2(may or may not be mapped)
    car node(may or may not be mapped)
    If instead you try to map only the car node the vehicle node will also get mapped automatically but not it's child parameters like veh1 and veh2.
    vehicle node(mapped)
    veh1(may or may not be mapped)
    veh2(may or may not be mapped)
    car nodemapped)
    car1(may or may not be mapped)
    car2(may or may not be mapped)
    Hope this would help.
    Do revert for further clarification
    Regards
    Noufal

  • How to assign ALV for parent node and child node that uses supply method.?

    HI Dear friends,
        I need to display header details ( VBAK ) and Item details ( VBAP ). I have created two node like HEADER_NODE inside this i have created ITEM_NODE for this item node i use supply function 'GET_ITEMS'  any way it is working only when crete two separate table and binding but when i come to work with ALV i am totally confused .. i have created two 'View Controller UI Elements'   when i try to map HEADER_NODE  it mapped properly but for ITEM_NODE it shows mapping already defined. return status message as 'Action Cancelled' . In result both ViewContainer shows only HEADER_NODE data only.
    How to achive ALV for  Parent, child node that uses supply function ? ?
    Thank you

    Delete Mapping is not enabled, that means there is no mapping done yet.
    I just tried what you are saying and the application works and i am able to map the header table and item table and also again i could map the tables any number of times.. i didn't get any such message, sorry i couldn't recreate the scenario. might be there is something wrong in the context.
    i just did it like this.
    Please also move this to Web DynPro Discussion, Hope that would be helpful.
    Message was edited by: Syed Ghulam Ali

Maybe you are looking for

  • Unable to connect to mail server on iphone

    I have been getting an" unable to connect to yahoo mail server" on my iphone since yesterday. I have re-started the phone, deleted my mail account and re-added and nothing seems to work. Any ideas?

  • How can I disable the Application Bar in Flash 11?

    How can I turn off viewing the Application Bar and associated window it is attached to without quitting Flash in Flash 11?

  • Unable to change bookmarks

    Hi; I am trying to rename or delete some of my bookmarks but Safari is telling me that I can't change bookmarks now because they are being synchronized. But I am not connecting any device nor I am synching with any web service. What is the problem? T

  • Error in document for BAPI_ACC_GL_POSTING_POST - help me with Pointers

    Hi Gurus, I have a question on BAPI_ACC_GL_POSTING_POST. I tried to search in the forum, but didn't find any pointers on this. I am getting error message like: T ID                   NUM MESSAGE E RW                   609 Error in document: BKPFF 500

  • Input type file go outside portal

    Hi i'm writing a portlet that allow the user to save files to a server, to do that i got a classic button: <input id="Attachment1" type="file" runat="server" NAME="Attachment1"> everything works fine, but in the portlet i got a link button to navigat