Componentization

Hi all,
I am new to webdynpro java. I am trying to understand the concept of copmonent reuse.
I have a doubt in the following development which i am trying now.
Consider that i have two components in my development project.
Let the name of the development project be wd_project1.
Name of the two components be wd_component1 and wd_component2.
I have a view each in each components. In the view of first component i have a button and by the action on it i am trying to display the view of the second component wd_component2.
In order to acheive this i embeded the interface view of second component in the window of first view. I created an out plug from first view and connected to the in plug of the newly embeded interface view. I created a webdynpro application with first view as default view and then deployed it.
It worked fine. I was able to move from first view of first component to first view of second component.
Then i tried moving back from the view of second component to first component. For doing this i repeated the above steps in the opposite manner. I embeded interface view of the first component in the window of second component. I created an out plug from view of the second component and connected it to the interface view of first component. I created a button in the view of the second component and assigned the action and the plug. Then i executed the application.
I was not able to execute the application. It showed an error 'Cycle in component usage'.
Can anyone explain me wht is the mistake here? Is it not possible to communicate back and forth without using component interface definition?
Pls help..
Thanks & Regards
Ramanan

Hi Vinod,
                If i understand ur requirement properly,u need to decide on runtime which view has to be called.
I think this tutorial <a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a0409d83-5ed5-2910-ef91-e41da6d5b8b4">Component interface</a> explains the same thing.
regards
Sumit

Similar Messages

  • Componentization in WD ABAP does not work

    Hi Experts,
    I am trying to use componentization in WD ABAP.
    I have one Business logic componet WD_BLC (BLC) and it contains following context node that differnet views will use and a Method CALCULATE_SUM sum that sums the values.*
    Context A
    value1
    value2
    sum
    I have three WD components specifically that contain views.
    First WD comp has two input fileds which are mapped from interface component context.
    WD_VIEW_INPUT - WD component
    View_input          - WD View
    Value 1 - Mapped from Interface Node
    Value 2 - Mapped from Interface Node
    Second WD Comp has one output filed which is mapped from interface component context.
    WD_VIEW_OUTPUT - WD component -
    View_output            - WD View
    Output - Mapped from Interface Node
    This third WD component uses View_input from WD component WD_VIEW_INPUT and View_output from WD_VIEW_OUTPUT component using component usages for these views.This wd component also has a button that calls calculate_sum method in WD_BLC.
    WD_VIEW_MAIN - WD Component
    View_main                  - WD View
    Now it calls the method in the BLC and sums the two values that I put in View_input. but sum value does not get set
    in the View_output of component WD_VIEW_OUTPUT. While if I see the same ouput value in View_input using context mapping
    I get the sum value.
    Binding is done properly also only interface node property is checked for Context A in the WD_BLC.
    Please suggest where am I making mistake?
    Umang
    Edited by: Umang Mathur on May 24, 2011 12:35 AM
    Edited by: Umang Mathur on May 24, 2011 12:38 AM
    Edited by: Umang Mathur on May 24, 2011 12:40 AM
    Edited by: Umang Mathur on May 24, 2011 12:42 AM

    You have WD_BLC as used component in comp1 and comp2 right ? otherwise you would not have the interface node mapped.
    You use comp-3 to embed comp_1 and comp_2 to display. My solution is
    1. in comp1,comp2 create a insterface method set_blc_usage with importing parameter type if_wd_component_usage
    In this method implement the if_wd_component_usage method ENTER_REFERENCING_MODE.
    Any other coding creating blc_usage should be deleted.
    2. in comp_3 ,create the component usage of the wdc_blc in the component do_init method.
    You may have the coding for the creating the usages of comp_1 and comp_2. If you do not have that then i would advice you to do that as well in the doinit method.
    Now you can safely call the set_blc_usage of the comp-1 and comp_2 passing the component usage as exporting parameter.
    This will make sure that you have only one instance of the wdc_blc among the 3 components.
    Your current scenario suggests me that you have 2 instances of wdc_blc component at runtime.

  • Componentization in Visual Composer

    Hi guys,
    I recommend reading this article. It really helps designing your applications and models in an efficient and understandable way. Model componentization involves breaking a model down into smaller, easily-identifiable pieces that have well-defined interfaces. Much like in traditional development, you can reuse your models, once they are well designed.
    [http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/60e78224-f4ff-2b10-3a85-ee0a8bc0868c|http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/60e78224-f4ff-2b10-3a85-ee0a8bc0868c]
    Best regards,
    Natty

    Hi Paresh,
    can try to copy the BAPI with another name. Then drag the BAPI again on the storyboard. Maybe now you have the Input Port.
    The same problem sometimes occurs for RFC function moduls.
    Best Regards,
    Marcel

  • Componentization help

    Hi All!
    I have a rather tricky question regarding the componentization of a Webdynpro java application that I am working on. 
    I have two components: Component A and Component B.
    Component A is my main component which displays some information retrieved from a RFC . This information is displayed in a form and some details in a table.
    The structure of the RFC is like this:
    Output:
    -Structure
    -xxx
    -xxx
    -xxx
    Tables:
    Table1:
      -xxx
    -xxx
    -xxx
    Besides the RFC that reads out data, I also make use of an RFC module that saves some of the same data.
    Component B is a u201Cslaveu201D component providing input to some of the table fields
    That being said, this is where I have my problems.
    In Component A I open a View from component B in a popup window,
    (I have added the interface view of component B to a Window in component A).
    When I select a value in Component B, this value is set in Component Bu2019s own context, which in term is mapped over in component A).  Then Component B, closes itself (destroys) and the window is in term closed. This makes the popup window work a u201Csemiu201D OVS. 
    But my problem is : How do I get the value from component Bu2019s context into the table context of my RFC module in component A?.
    The problem is that Component A can see component B, but Component B, canu2019t see component A, and therefore is not able to set the value directly in Component A.
    Can I somehow get the info set in the Context of Component B, over in the right position of the table in Component A (The leadselction), or is this simply impossible.
    Help is much appreciated,
    Best regards,
    Ronni

    Hi Again!
    Thanks for your reply's
    I have allready created Component A and Component B
    and Component A allready Uses Component B with succes
    I do the following in Component A
    IWDWindowInfo commentWindowInfo = (IWDWindowInfo) wdComponentAPI.getComponentInfo().findInWindows("MyWindow");
    IWDWindow commentWindow = wdComponentAPI.getWindowManager().createModalWindow(commentWindowInfo);
    wdContext.currentMyContextElement().setWindow(commentWindow);
    Where i have added the interfaceView of Component B to the window called (MyWindow)
    And the context called MyContext is mapped from Component B, so component b
    is able to acces the Window info and then it can "close itself" when dont.
    Alle this works FINE!
    But when i close the window, and return i have the info i selected
    in CompB in my MappedContext
    But how do i get this Context filled in my Table?
    If i Could Just map the Context of B right into the Table of A, but this is not possible since Comp A's table is a modelnode and not a value node...
    Do you get the point, or should i try to explain it further?

  • Problem in Componentization Exercise - Any Suggestions Plz.

    Hello All,
    I am trying to do this excercise of componentization which is from the Tutorail, I am following the exercise steps but I seem to be getting at error at:
    private final IPrivateMasterComp wdThis;
    It keeps telling me that IPrivateMasterComp cannot be resolved for the field MasterComp.wdThis can anyone tell me why this error is happening and how it can be fixed, I would appreciate any help anyone can offer.
    Best Wishes,
    John.

    John,
    Do a Reload + Rebuid for the corresponding project. Also try a DC build. The error should vanish after that.
    Bala.

  • Tutorial The concept of componentization in web dynpro java...

    Hello there,
    I try to complete this tutorial but i have a problem, maybe this tutorial is a little bit incomplete.
    in page 18 have a code with this line:
    pUsage.createComponent(wdContext.currentSelectedPersonElement().getPerson());
    but in my app there aren't this code:  wdContext.currentSelectedPersonElement().
    I believe, this Element i need to declare in a Context Attribute of RootComponent.
    In the Page 19 there something like the above situation:
    The value of selectedKey of RadioButton is SelectedPerson.Person, probably this value is an attribute mapping to the SelectedPerson.Person of RootComponent.
    In the tutorial, don't have how declare this attribute and i don't now how declare it.
    Can anyone help me.
    Marcos Brandão.

    Hi Marcos
    Sorry, this was an omission on my part.
    The exercise document has been corrected and is available at the link below
    <a href="https://www.sdn.sap.comhttp://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/30d56578-f7e5-2a10-5ab5-8afc55d2e0e8">https://www.sdn.sap.comhttp://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/30d56578-f7e5-2a10-5ab5-8afc55d2e0e8</a>
    Regards
    Chris W

  • Query on Componentization: Cycle in component Usage definitions

    Hi
    I have Embedded Component2 in Component1. Now i want to embed Component1 in Component2 so  that i could send the message back & forth from comp1 to comd compop2 & vice versa. But after i embenent1 in component2, i get error of "Cycle in component Usage definitions".
    Firstly i want to find out Is this possible to embed comp1 in comp2 if already we embedded comp2 in comp1? If yes, pls. let me know its way out.
    Thanks.....

    Hello Harpal,
    I don;t think so it's possible....you can either implement one component as used component of the other...otherwise it leads to cyclic lock....
    Regards,
    Shikhil

  • Not getting the excpected result.

    Hi all,
    My object is write a java program so tht...it'll generate the .pdf file after retriving the data from MS-Excel file.
    I used POI HSSF to read the data from MS-Excel and used iText to generate .pdf file:
    My Program is:
    * Created on Apr 13, 2005
    * TODO To change the template for this generated file go to
    * Window - Preferences - Java - Code Style - Code Templates
    package forums;
    import java.io.*;
    import java.awt.Color;
    import com.lowagie.text.*;
    import com.lowagie.text.pdf.*;
    import com.lowagie.text.Font.*;
    import com.lowagie.text.pdf.MultiColumnText;
    import com.lowagie.text.Phrase.*;
    import net.sf.hibernate.mapping.Array;
    import org.apache.poi.hssf.*;
    import org.apache.poi.poifs.filesystem.*;
    import org.apache.poi.hssf.usermodel.*;
    import com.lowagie.text.Phrase.*;
    import java.util.Iterator;
    * Generates a simple 'Hello World' PDF file.
    * @author blowagie
    public class pdfgenerator {
         * Generates a PDF file with the text 'Hello World'
         * @param args no arguments needed here
         public static void main(String[] args) {
              System.out.println("Hello World");
              Rectangle pageSize = new Rectangle(916, 1592);
                        pageSize.setBackgroundColor(new java.awt.Color(0xFF, 0xFF, 0xDE));
              // step 1: creation of a document-object
              //Document document = new Document(pageSize);
              Document document = new Document(pageSize, 132, 164, 108, 108);
              try {
                   // step 2:
                   // we create a writer that listens to the document
                   // and directs a PDF-stream to a file
                   PdfWriter writer =PdfWriter.getInstance(document,new FileOutputStream("c:\\weeklystatus.pdf"));
                   writer.setEncryption(PdfWriter.STRENGTH128BITS, "Hello", "World", PdfWriter.AllowCopy | PdfWriter.AllowPrinting);
    //               step 3: we open the document
                             document.open();
                   Paragraph paragraph = new Paragraph("",new Font(Font.TIMES_ROMAN, 13, Font.BOLDITALIC, new Color(0, 0, 255)));
                   POIFSFileSystem pofilesystem=new POIFSFileSystem(new FileInputStream("D:\\ESM\\plans\\weekly report(31-01..04-02).xls"));
                   HSSFWorkbook hbook=new HSSFWorkbook(pofilesystem);
                   HSSFSheet hsheet=hbook.getSheetAt(0);//.createSheet();
                   Iterator rows = hsheet.rowIterator();
                                  while( rows.hasNext() ) {
                                       Phrase phrase=new Phrase();
                                       HSSFRow row = (HSSFRow) rows.next();
                                       //System.out.println( "Row #" + row.getRowNum());
                                       // Iterate over each cell in the row and print out the cell's content
                                       Iterator cells = row.cellIterator();
                                       while( cells.hasNext() ) {
                                            HSSFCell cell = (HSSFCell) cells.next();
                                            //System.out.println( "Cell #" + cell.getCellNum() );
                                            switch ( cell.getCellType() ) {
                                                 case HSSFCell.CELL_TYPE_STRING:
                                                 String stringcell=cell.getStringCellValue ()+" ";
                                                 writer.setSpaceCharRatio(PdfWriter.NO_SPACE_CHAR_RATIO);
                                                 phrase.add(stringcell);
                                            // document.add(new Phrase(string));
                                                      System.out.print( cell.getStringCellValue () );
                                                      break;
                                                 case HSSFCell.CELL_TYPE_FORMULA:
                                                           String stringdate=cell.getCellFormula()+" ";
                                                           writer.setSpaceCharRatio(PdfWriter.NO_SPACE_CHAR_RATIO);
                                                           phrase.add(stringdate);
                                                 System.out.print( cell.getCellFormula() );
                                                           break;
                                                 case HSSFCell.CELL_TYPE_NUMERIC:
                                                 String string=String.valueOf(cell.getNumericCellValue())+" ";
                                                      writer.setSpaceCharRatio(PdfWriter.NO_SPACE_CHAR_RATIO);
                                                      phrase.add(string);
                                                      System.out.print( cell.getNumericCellValue() );
                                                      break;
                                                 default:
                                                      //System.out.println( "unsuported sell type" );
                                                      break;
                                       document.add(new Paragraph(phrase));
                                       document.add(new Paragraph("\n \n \n"));
                   // step 4: we add a paragraph to the document
              } catch (DocumentException de) {
                   System.err.println(de.getMessage());
              } catch (IOException ioe) {
                   System.err.println(ioe.getMessage());
              // step 5: we close the document
              document.close();
    My Input from MS-Excel file is:
         Planning and Tracking Template for Interns                                                                 
         Name of the Intern     N.Kesavulu Reddy                                                            
         Project Name     Enterprise Sales and Marketing                                                            
         Description     Estimated Effort in Hrs     Planned/Replanned          Actual          Actual Effort in Hrs     Complexity     Priority     LOC written new & modified     % work completion     Status     Rework     Remarks
    S.No               Start Date     End Date     Start Date     End Date                                        
    1     setup the configuration          31/01/2005     1/2/2005     31/01/2005     1/2/2005                                        
    2     Deploying an application through Tapestry, Spring, Hibernate          2/2/2005     2/2/2005     2/2/2005     2/2/2005                                        
    3     Gone through Componentization and Cxprice application          3/2/2005     3/2/2005     3/2/2005     3/2/2005                                        
    4     Attend the sessions(tapestry,spring, hibernate), QBA          4/2/2005     4/2/2005     4/2/2005     4/2/2005                                        
         The o/p I'm gettint in .pdf file is:
    Planning and Tracking Template for Interns
    N.Kesavulu Reddy Name of the Intern
    Enterprise Sales and Marketing Project Name
    Remarks Rework Status % work completion LOC written new & modified Priority
    Complexity Actual Effort in Hrs Actual Planned/Replanned Estimated Effort in Hrs Description
    End Date Start Date End Date Start Date S.No
    38354.0 31/01/2005 38354.0 31/01/2005 setup the configuration 1.0
    38385.0 38385.0 38385.0 38385.0 Deploying an application through Tapestry, Spring, Hibernate
    2.0
    38413.0 38413.0 38413.0 38413.0 Gone through Componentization and Cxprice application
    3.0
    38444.0 38444.0 38444.0 38444.0 Attend the sessions(tapestry,spring, hibernate), QBA 4.0
                                       The issues i'm facing are:
    When it is reading a row from MS-Excel it is writing to the .pdf file from last cell to first cell.( 2 cell in 1 place, 1 cell in 2 place like if the row has two cells with data as : Name of the Intern: Kesavulu Reddy then it is writing to the .pdf file as Kesavulu Reddy Name of Intern)
    and the second issue is:
    It is not recognizing the date format..it is recognizing the date in first row only......
    Plz Tell me wht is the solution for this...
    Regards
    [email protected]

    Use your debugger to step through the code line by line. This should help you understand what it's doing. Or if you don't want to do that, sprinkle output statements all over until you know what it's doing.

  • Writing a java program for generating .pdf file with the data of MS-Excel .

    Hi all,
    My object is write a java program so tht...it'll generate the .pdf file after retriving the data from MS-Excel file.
    I used POI HSSF to read the data from MS-Excel and used iText to generate .pdf file:
    My Program is:
    * Created on Apr 13, 2005
    * TODO To change the template for this generated file go to
    * Window - Preferences - Java - Code Style - Code Templates
    package forums;
    import java.io.*;
    import java.awt.Color;
    import com.lowagie.text.*;
    import com.lowagie.text.pdf.*;
    import com.lowagie.text.Font.*;
    import com.lowagie.text.pdf.MultiColumnText;
    import com.lowagie.text.Phrase.*;
    import net.sf.hibernate.mapping.Array;
    import org.apache.poi.hssf.*;
    import org.apache.poi.poifs.filesystem.*;
    import org.apache.poi.hssf.usermodel.*;
    import com.lowagie.text.Phrase.*;
    import java.util.Iterator;
    * Generates a simple 'Hello World' PDF file.
    * @author blowagie
    public class pdfgenerator {
         * Generates a PDF file with the text 'Hello World'
         * @param args no arguments needed here
         public static void main(String[] args) {
              System.out.println("Hello World");
              Rectangle pageSize = new Rectangle(916, 1592);
                        pageSize.setBackgroundColor(new java.awt.Color(0xFF, 0xFF, 0xDE));
              // step 1: creation of a document-object
              //Document document = new Document(pageSize);
              Document document = new Document(pageSize, 132, 164, 108, 108);
              try {
                   // step 2:
                   // we create a writer that listens to the document
                   // and directs a PDF-stream to a file
                   PdfWriter writer =PdfWriter.getInstance(document,new FileOutputStream("c:\\weeklystatus.pdf"));
                   writer.setEncryption(PdfWriter.STRENGTH128BITS, "Hello", "World", PdfWriter.AllowCopy | PdfWriter.AllowPrinting);
    //               step 3: we open the document
                             document.open();
                   Paragraph paragraph = new Paragraph("",new Font(Font.TIMES_ROMAN, 13, Font.BOLDITALIC, new Color(0, 0, 255)));
                   POIFSFileSystem pofilesystem=new POIFSFileSystem(new FileInputStream("D:\\ESM\\plans\\weekly report(31-01..04-02).xls"));
                   HSSFWorkbook hbook=new HSSFWorkbook(pofilesystem);
                   HSSFSheet hsheet=hbook.getSheetAt(0);//.createSheet();
                   Iterator rows = hsheet.rowIterator();
                                  while( rows.hasNext() ) {
                                       Phrase phrase=new Phrase();
                                       HSSFRow row = (HSSFRow) rows.next();
                                       //System.out.println( "Row #" + row.getRowNum());
                                       // Iterate over each cell in the row and print out the cell's content
                                       Iterator cells = row.cellIterator();
                                       while( cells.hasNext() ) {
                                            HSSFCell cell = (HSSFCell) cells.next();
                                            //System.out.println( "Cell #" + cell.getCellNum() );
                                            switch ( cell.getCellType() ) {
                                                 case HSSFCell.CELL_TYPE_STRING:
                                                 String stringcell=cell.getStringCellValue ()+" ";
                                                 writer.setSpaceCharRatio(PdfWriter.NO_SPACE_CHAR_RATIO);
                                                 phrase.add(stringcell);
                                            // document.add(new Phrase(string));
                                                      System.out.print( cell.getStringCellValue () );
                                                      break;
                                                 case HSSFCell.CELL_TYPE_FORMULA:
                                                           String stringdate=cell.getCellFormula()+" ";
                                                           writer.setSpaceCharRatio(PdfWriter.NO_SPACE_CHAR_RATIO);
                                                           phrase.add(stringdate);
                                                 System.out.print( cell.getCellFormula() );
                                                           break;
                                                 case HSSFCell.CELL_TYPE_NUMERIC:
                                                 String string=String.valueOf(cell.getNumericCellValue())+" ";
                                                      writer.setSpaceCharRatio(PdfWriter.NO_SPACE_CHAR_RATIO);
                                                      phrase.add(string);
                                                      System.out.print( cell.getNumericCellValue() );
                                                      break;
                                                 default:
                                                      //System.out.println( "unsuported sell type" );
                                                      break;
                                       document.add(new Paragraph(phrase));
                                       document.add(new Paragraph("\n \n \n"));
                   // step 4: we add a paragraph to the document
              } catch (DocumentException de) {
                   System.err.println(de.getMessage());
              } catch (IOException ioe) {
                   System.err.println(ioe.getMessage());
              // step 5: we close the document
              document.close();
    My Input from MS-Excel file is:
         Planning and Tracking Template for Interns                                                                 
         Name of the Intern     N.Kesavulu Reddy                                                            
         Project Name     Enterprise Sales and Marketing                                                            
         Description     Estimated Effort in Hrs     Planned/Replanned          Actual          Actual Effort in Hrs     Complexity     Priority     LOC written new & modified     % work completion     Status     Rework     Remarks
    S.No               Start Date     End Date     Start Date     End Date                                        
    1     setup the configuration          31/01/2005     1/2/2005     31/01/2005     1/2/2005                                        
    2     Deploying an application through Tapestry, Spring, Hibernate          2/2/2005     2/2/2005     2/2/2005     2/2/2005                                        
    3     Gone through Componentization and Cxprice application          3/2/2005     3/2/2005     3/2/2005     3/2/2005                                        
    4     Attend the sessions(tapestry,spring, hibernate), QBA          4/2/2005     4/2/2005     4/2/2005     4/2/2005                                        
         The o/p I'm gettint in .pdf file is:
    Planning and Tracking Template for Interns
    N.Kesavulu Reddy Name of the Intern
    Enterprise Sales and Marketing Project Name
    Remarks Rework Status % work completion LOC written new & modified Priority
    Complexity Actual Effort in Hrs Actual Planned/Replanned Estimated Effort in Hrs Description
    End Date Start Date End Date Start Date S.No
    38354.0 31/01/2005 38354.0 31/01/2005 setup the configuration 1.0
    38385.0 38385.0 38385.0 38385.0 Deploying an application through Tapestry, Spring, Hibernate
    2.0
    38413.0 38413.0 38413.0 38413.0 Gone through Componentization and Cxprice application
    3.0
    38444.0 38444.0 38444.0 38444.0 Attend the sessions(tapestry,spring, hibernate), QBA 4.0
                                       The issues i'm facing are:
    When it is reading a row from MS-Excel it is writing to the .pdf file from last cell to first cell.( 2 cell in 1 place, 1 cell in 2 place like if the row has two cells with data as : Name of the Intern: Kesavulu Reddy then it is writing to the .pdf file as Kesavulu Reddy Name of Intern)
    and the second issue is:
    It is not recognizing the date format..it is recognizing the date in first row only......
    Plz Tell me wht is the solution for this...
    Regards
    [email protected]

    Don't double post your question:
    http://forum.java.sun.com/thread.jspa?threadID=617605&messageID=3450899#3450899
    /Kaj

  • How to use one Web Dynpro DC into another Web Dynpro Dc

    Hi All,
    I am trying to learn the usage of DC but I am unable to find a basic tutorial on this topic. I found a few tutorial and few blogs too, but none of them explains topics like:
    How to call child component methods from parent component and vice versa too if possible?
    Can somebody please provide me with a basic tutorial on this topic.
    Regards
    Sid

    Hi,
    Go through the Componentization tutorials
    https://www.sdn.sap.com/irj/sdn/downloaditem?rid=/webcontent/uuid/bd0e0401-0801-0010-aaab-d0e1742da383 [original link is broken]
    https://www.sdn.sap.com/irj/sdn/downloaditem?rid=/webcontent/uuid/751d003a-0b01-0010-8996-afbaa3fd5339 [original link is broken]
    https://www.sdn.sap.com/irj/sdn/developerareas/webdynpro?rid=/library/uuid/49f2ea90-0201-0010-ce8e-de18b94aee2d#comp
    Regards,Anilkumar

  • Visual Composer 7.0 and CE

    Hi,
    Could anyone tell me the difference between VC 7.0 and VC 7.1 CE(composite Environment). Is there any difference between the two? Can anyone explain on this and give some documents related to this?
    Regads,
    Divya

    Visual Composer for SAP NetWeaver Composition Environment has undergone major revisions both in functionality and in usability. For example, ability to componentize models to enable reuse, access to source control, ability to work on multiple models simultaneously, changes in the deployment process, easier layout design, more intuitive use of containers, and much more.
    You can see more details about the differences in the two versions here:
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a00a2587-3139-2a10-28b6-860591aa6ec6

  • Error in CF form in a Flash format...

    Hi
    I receive the following error when loading a CF form in a
    Flash format...
    Errors, warnings or exceptions were found when compiling
    /mystore/admin/purchases_not_processed.cfm. Visit the online Flex
    documentation or API reference for further information.
    1 Error found.
    Error
    C:\Inetpub\wwwroot\MyStore\admin\purchases_not_processed.cfm:4
    A function in the code exceeds the 64K byte limit (actual
    size = '122810'). Since the problem occurs in the
    compiler-generated deferred instantiation code, please
    refactor/componentize portions of this document.
    How do i overcome this error?
    I hope someone can assist with this...
    Thanks in advance...
    Regards
    Mr Pappy

    Hi
    I receive the following error when loading a CF form in a
    Flash format...
    Errors, warnings or exceptions were found when compiling
    /mystore/admin/purchases_not_processed.cfm. Visit the online Flex
    documentation or API reference for further information.
    1 Error found.
    Error
    C:\Inetpub\wwwroot\MyStore\admin\purchases_not_processed.cfm:4
    A function in the code exceeds the 64K byte limit (actual
    size = '122810'). Since the problem occurs in the
    compiler-generated deferred instantiation code, please
    refactor/componentize portions of this document.
    How do i overcome this error?
    I hope someone can assist with this...
    Thanks in advance...
    Regards
    Mr Pappy

  • Error in compiling Flex application: 64K byte limit

    Hi experts ,
    While deploying the VC model , i m getting this error :
    Error in compiling Flex application: Error: A function in the code exceeds the 64K byte limit (actual size = '65557'). Since the problem occurs in the compiler-generated deferred instantiation code, please refactor/componentize portions of this document.
          (/usr/sap/NW2/JC00/j2ee/cluster/server0/GUIMachine_Business_Packages/Contribution_Margin_36461/FLEX_COMPILATION_FOLEDR/AAD15VY.mxml:19)
    Failed to compile AAD15VY.mxml
    Could any one help me out in solving this issue ..its urgent ...
    Your suggestions will be rewarded.
    Thanks,
    Pratima

    You have to remove few components from your model to decrease the compiler generated LOC.
    Check the following link for detailed solution:
    https://websmp130.sap-ag.de/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/sapnotes/index2.htm?numm=936390
    Taken from SAP Notes:
    <i>Solution
    Doing the following may help:
    1.Divide problematic iViews into a number of nested iViews.
    2.Optimize each model to reduce the number of elements that it
      contains:
      a.Reduce the number of signals by merging signals of the same name.
      b.When your application updates forms with read-only fields, use
        expression boxes and a data store instead of signals.
      c.Minimize the use of animations in your models, including form
        sliding and chart animation effects
      d.Use a data store to store variables, instead of invisible forms.
        To display messages, use a simple text rather than a static dynamic
        expression.
    3.For on-the-spot, temporary workarounds, you can try dragging an empty
      layer onto the Design board. This sometimes solves the problem ad
      hoc, but is not recommended as a best practice.
    </i>

  • Error in compiling flex - 64K limit

    Hi folks,
    I entered a new dimension in the flex compiling error dimension (see error-message below). Can anybody help me? I'm familiar with the 32K-problem ( and do have functional workarounds for that) but this one is a new one for me.
    regards,
    Martin
    Error in compiling Flex application: Error: A function in the code exceeds the 64K byte limit (actual size = '66289'). Since the problem occurs in the compiler-generated deferred instantiation code, please refactor/componentize portions of this document.

    Hi Marcel,
    infortunately I'm not allowed atm to make the model public.
    however, I circeled the problem and found a workaround. It has nothing to do with our "old pal 32K", this time it simply was a (sub-)model too large to get deployed (problem with the to-build XML-pakages.)
    Background on this: It's a nested iview collecting a lot of data from different parts of a highliy complex model to process an RFC. For monitoring reasons I've switched some of the tables to visible and that acutally caused the error. After hiding the colums the error vanished. (actually was replaced by the 32K error. But that's like meeting an old friend, no problem any more....)
    I'm looking forward to sharing the model some time. Would be interesting to get some feedback from the comunity..
    regards,
    Martin
    Message was edited by:
            Martin Wolpers

  • How to properly handle Exception thrown in a .tag file?

    I've got a .jsp file that makes use of some custom tags, each defined in their own .tag file, and located in WEB-INF/tags. I'm having a lot of trouble with the scenario of cleanly dealing with an exception raised by scriptlets in either a .jsp file, and a .tag file. I'm using both Java and Tomcat 6....
    Originally, I wanted to use .tag files in order to componentize common elements that were present in .jsp pages, as well as move ugly scriptlets out of .jsp pages, and isolate them in tag files with their associated page elements.
    Things started getting hairy when I started exploring what happens when an exception is thrown (bought not handled) in a scriptlet in a .tag file. Basically, my app is a servlet that forwards the user to various .jsp pages based on given request parameters. The forwarding to the relevant .jsp page is done by calls to the following method:
    servletContext.getRequestDispatcher("/" + pageName).forward(request, response);
    Where 'pageName' is a String with the name of the .jsp I want to go to...
    Calls to this method are enclosed in a try block, as it throws both a ServletException, and IOException...
    When either my .jsp, or .tag throw an exception in a scriptlet, the exception is wrapped in a JSPException, which is then wrapped in a ServletException.
    I can catch this exception in my servlet... but then what? I want to forward to an error page, however, in the catch block, I can't forward in response to this exception, as that results in an IllegalStateException, as the response has already been committed. So what do I do? How do I get from this point, to my "error.jsp" page?
    It was suggested to me that I use the <% @ page isErrorPage="true" %> directive in my error.jsp,
    and the in my real .jsp, use <%page errorPage="/error.jsp" %>.
    This works great when the exception is thrown in my .jsp.... But when the exception is thrown in the .tag file... not so much...
    My .jsp page was rendered up until the point where the <my:mytag/> (the tag with the offending raised exception) was encountered. Then, instead of forwarding to the error page when the error in the tag is encountered, the error page is rendered as the CONTENT of of my TAG. The rest of the .jsp is then NEVER rendered. I checked the page source, and there is no markup from the original .jsp that lay below the my tag. So this doesn't work at all. I don't want to render the error page WITHIN the half of the .jsp that did render... Why doesn't it take me away from the .jsp with the offending tag altogether and bring me to the error.jsp?
    Then it was suggested to me that I get rid of those page directives, and instead define error handling in the web.xml using the following construct:
    <error-page>
    <exception-type>java.lang.Exception</exception-type>
    <location>/error</location>
    </error-page>
    <error-page>
    <error-code>404</error-code>
    <location>/error</location>
    </error-page>
    For this, I created a new servlet called ErrorServlet, and mapped it to /error
    Now I could mangle the end of the URL, which causes a 404, and I get redirected to the ErrorServlet. Yay.
    However, exceptions being thrown in either a .jsp or .tag still don't direct me to the ErrorServlet. Apparently this error handling mechanism doesn't work for .jsp pages reached via servletContext.getRequestDispatcher("/" + pageName).forward(request, response) ????
    So I'm just at a total loss now. I know the short answer is "don't throw exceptions in a .jsp or .tag" but frankly, that seems a pretty weak answer that doesn't really address my problem... I mean, it would really be nice to have some kind of exception handler for runtime exceptions thrown in a scriptlet in .tag file, that allows me to forward to a page with detailed stacktrace output, etc, if anything for debugging purposes during development...
    If anyone has a few cents to spare on this, I'd be ever so grateful..
    Thanks!!
    Jeff

    What causes the exception?
    What sort of exception are you raising from the tag files?
    Have you got an example of a tag file that you can share, and a jsp that invokes it so people can duplicate the issue without thinking too much / spending too much time?
    My first instinct would be that the buffer is being flushed, and response committed before your Exception is raised.
    What you describe is pretty much standard functionality for Tomcat in such cases.

Maybe you are looking for