DataGrid Not Resizing to Dynamic Content

Hello,
I'm using Flex 3.2. I have an editable DataGrid with no with
and height specified. I do specify rowCount to something like
rowCount="dataProvider.length". Everything looks good when the
datagrid is first rendered with data in it. However, if the data in
it changes after rendering, then the grid doesn't resize
accordingly. Actually the grid may resize, but the border/frame
doesn't.
Example:
I have a special TextArea component that grows (vertically)
as the user types in more lines of text. I use this component as
one of my item editors. If a cell is first rendered with only one
line of text, then the user goes in and types additional lines, the
grid row grow within it's border, but the not the border itself...
causing some undesired scrollbars.
I need a way to tell the datagrid to re-calibrate sizing just
like it does when it's first created. Is there a way to do this? I
tried datagrid.invalidateSize() and related procedures, but nothing
happens. What do you think?
Thanks

"bfargo" <[email protected]> wrote in
message
news:gmcsal$34d$[email protected]..
>I finding this datagrid sizing to be extremely
frustrating as to say, HTML
> tables. I just want it to look good. Anytime I do
anything with dynamic
> content, it doesn't size right, or I end up with a bunch
of ugly
> scrollbars,
> etc. I just want to be able to add some content, and
have the datagrid
> grow
> with it.. at least in height.
> VariableRowHeight is set to true, I try setting rowcount
to my
> dataprovider
> length. Event though the length may be 5, it'll randomly
throw a bunch of
> other rows in there. The behavior is just completely
incoherent (at
> least to
> me). Nobody else has these problems? .
Post code

Similar Messages

  • Datagrid within Datagrid - Rows not resizing to fit content

    Hi,
    I have a datagrid with a custom item renderer that renders another data grid... so one column will render datagrids within the outer datagrid.  The problem is that the row does not size to fit the inner datagrid.  I can't set the rowHeight on the outer datagrid because the inner datagrids have dynamic data and i don't know how many rows they will have.  Also, after the datagrid is rendered, more rows may be added to any number of inner datagrids at a later time... and I need the rows holding them to resize accordingly.   Setting variableRowHeight=true on the outer grid doesn't seem to help either.
    Any ideas on how to do this? 
    Thanks!

    Hi, Alex, thanks for the info. It turns out, I was wrong.  The way it looked made me think it was a row-resizing problem, but it turns out that the rows were resizing fine... it was the outer datagrid itself that was not resizing properly.  Apparently it has to do with the combination of variableRowHeight and rowCount.  The jira issue may look familiar to you.
    http://bugs.adobe.com/jira/browse/SDK-13507
    Anyway, I got this from the jira comments and works pretty good...
    height="{theGrid.measureHeightOfItems(-1, theGrid.dataProvider.length + 1)}"
    I also have to call similar code when the data provider of the inner grids add/remove items.
    Thanks!

  • Group not resizing correctly when contents are moved programmatically

    Hi there,
    My apologies in advance if this is a known issue. I searched the forums but I was unable to find a discussion about this topic. The issue we are running into is when we programmatically move the contents of a Group which is in turn enclosed within a Scroller beyond the Scroller's limits the position of the Group within the stage is incorrectly calculated. This will cause mouseEvents in the area beyond the Group's limits to be "ignored" among other problems.
    I have created an application to illustrate the problem, we are in 4.1:
    <?xml version="1.0" encoding="utf-8"?>
    <s:Application
        minWidth="955" minHeight="600"
        xmlns:fx="http://ns.adobe.com/mxml/2009"
        xmlns:s="library://ns.adobe.com/flex/spark"
        xmlns:mx="library://ns.adobe.com/flex/mx">
        <fx:Declarations>
            <!-- Place non-visual elements (e.g., services, value objects) here -->
        </fx:Declarations>
        <fx:Script>
            <![CDATA[
                import mx.controls.Alert;
                private function onGroupClick(event:MouseEvent):void
                    Alert.show("It works");
                private function onButtonClick(event:MouseEvent):void
                    rect.x += 500;
                    rect.y += 500;
            ]]>
        </fx:Script>
        <s:Scroller
            width="100%" height="100%">
            <s:Group id="myGroup"
                width="100%" height="100%"
                click="onGroupClick(event)">
                <s:Rect id="rect"
                    x="0" y="0" width="10" height="10"/>
            </s:Group>
        </s:Scroller>
        <s:Button
            label="Move Rectangle"
            click="onButtonClick(event)"/>
    </s:Application>
    Steps to reproduce:
    Click anywhere in the screen - notice that an alert that reads "It works" shows up.
    Click on the "Move Rectangle" button enough times for the coordinates of the Rectangle to exceed the limits of the Scroller, hence producing scroll bars.
    Scroll all the way to the right and to the bottom.
    Click right next to the right bottom corner - notice that no alert is displayed. The reason is the Group has not resized correctly hence we are actually clicking outside the Group. Resizing your browser window for example will cause the Group to resize and events will again "work". FlexSpy will make things pretty apparent as well.
    Any pointers regarding where this bug lives in the source code or suggestions on how to fix this would be greatly appreciated, this issue is causing us a lot of pain.
    Thanks in advance!!
    ~ TheMadPenguin

    Thanks for logging this in the bugbase: https://bugs.adobe.com/jira/browse/SDK-29112. The latest comments there say:
    Reproduced in 4.0.0, 4.1.0
    Confirmed fixed in 4.5.0.19764
    A workaround for the 4.0.0 and 4.1.0 release would be to put the click handler on the Scroller instead of the viewport.
    Note: This bug seems to be fixed, but the fact that the width/height of  the Group doesn't change is still consistent (and correct).  Group has a  concept of size and content size, scrolling is enabled when the content  size is larger than the size (with Group.clipAndEnableScrolling set to  true which Scroller sets automatically).
    See this spec for more details: http://opensource.adobe.com/wiki/display/flexsdk/Spark+Viewport
    Hans has a good article here: http://hansmuller-flex.blogspot.com/
    Here's a simple example that demonstrates width does not change:
    <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark"> 
         <s:Scroller width="100" height="100"> 
             <s:Group id="viewport"> 
                 <s:Rect width="100%" height="100%">
                     <s:fill><s:SolidColor color="red" /></s:fill>
                 </s:Rect>
                 <s:Button id="btn" label="out of view" y="150" click="btn.y += 50" />
             </s:Group> 
         </s:Scroller>
    </s:Application> 
    You might expect that this example should have a red background behind  the Button, but it does not.  That is because width/height of 100% on  the Rect is 100% of the width/height of the viewport, not the  contentWidth/contentHeight.
    One way of getting the behavior where the Rect expands across the whole content size would be to bind to contentHeight:
    <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark"> 
         <s:Scroller width="100" height="100"> 
             <s:Group id="viewport"> 
                 <s:Rect width="100%" height="{viewport.contentHeight}">
                     <s:fill><s:SolidColor color="red" /></s:fill>
                 </s:Rect>
                 <s:Button id="btn" label="out of view" y="150" click="btn.y += 50" />
             </s:Group> 
         </s:Scroller>
    </s:Application> 
    Note: You shouldn't specify or change the size of the viewport Group  inside of a Scroller.  The Scroller component manages the size of the  Group in a specific way and if the Group has a size that conflicts with  that then you can get into a bad situation that might cause infinite  loops.  Notice in my example the viewport Group has no size set on it.
    Thanks to SDK QE for the info!
    -Heidi

  • Adding PHP pages, not showing dynamic content?

    Hi all,
    I'm new and hoping I don't get ripped apart for a question that seems simple. I've looked a lot though and can't seem to find an exact scenario like this. I recently took over a PHP site for a friend that was built in Dreamweaver CS3.
    There's a master page (main.php) that includes a header and footer and middle area of dynamic content. Thus, all of the pages appear like: http://www.SITENAME.com/main.php?mod=about (for the 'about' page) or www.SITENAME.com/main.php?mod=welcome (for the landing/home page), etc.
    In main.php, there's a section of: // Include Multiple Static Pages that looks like this:
    $mxiObj->IncludeStatic("about", "about.php");
    for every static page.
    All of this makes sense to me. Here's my problem:
    When adding a new page now, I can't get it to show any of the dynamic content on the live site. I just get the static header and footer to show.
    In the main.php file, there's this section:
    </div>
      <div id="mainContent">
        <p> 
          <?php
      $incFileName = $mxiObj->getCurrentInclude();
      if ($incFileName !== null)  {
        mxi_includes_start($incFileName);
        require(basename($incFileName)); // require the page content
        mxi_includes_end();
    ?></p>
    </div>
    that's supposed to pull in the dynamic content. It's doing this just fine on the older pages, but not on the ones I'm trying to build now.
    I guess I'm asking if there's some type of file in an 'includes' folder that I'm missing where I need to make sure the FileName is also listed (not just in the static section on main.php)? What's the mising link that will get this dynamic content to show up?
    Thanks for any help in advance and for reading this!

    The quickest way to add new pages is to
    copy the template (index.php) to a new document (newdoc.php or similar)
    remove the PHP stuff - stuff that is not required for the new content
    if there are inludes for the menu, header, footer or similar, then you can link those back into the document using standard includes
    add the new content to the newly created document
    This will give you a stand-alone document. At a later stage you can convert these documents into a DW-template system.

  • Can LC Designer produce a flat PDF, not form, as a template for dynamic content?

    Can LiveCycle Designer produce a flat PDF, not form, as a template for dynamic content?

    Yes that means LiveCycle Designer .....the XDP is an XML file that describes the template that you want. It is turned into a PDF by the Designer as well as the LC Server I mentioned. The Designer creates interactive content (not what you asked for), the server can do the same as well as flat PDFs. I mentioned the batch mode because that is how people generally use it or they use it for real time creation of the reports but it tends to be high volume (it is a server product so it will bepriced that way). You can create an XDP that has text and "floating fields" on it. Floating Fields are special in that you can merge data with the template and once the data is put into the field it is turned into text (non-interactive). This woudl be useful for testing (requires a  hands on approach) but if there is any kind of volume that you are looking for this will not be useful. The server side can be automated so that no human intervention is required.
    Paul

  • Print Dynamic Content with printJob

    I recently developed a help resource application that builds
    the interface and loads all the main and sub navigation items,
    pages contents, and related resources dynamically. This was to make
    it easy to provide search and print functionality, as well as
    interface scalability. Therefore my print feature creates a print
    layout MovieClip (so as to format well for 8.5 x 11 and printer
    margins) and loads the appropriate text content related to the
    visible page on screen when the print button is pressed.
    I thought the print was all set to go, but what I found out
    is that once you print a page of the Help Resource application that
    same page prints in place of any other page you print from there on
    out.
    My print button calls a function that pulls all the
    appropriate dynamic data (page title, page contents, related
    resource names, etc.) and formats it as HTML and adds it to my
    print layout MovieClips text field (docPrint._txt).
    That function then calls my printJob function which creates a
    blank sprite, adds my print layout movieclip to that sprite,
    resizes the print layout MovieClip’s text field to fit
    appropriately within the printer margins and prints the file.
    Anyone have any ideas why my dynamic content prints as the
    same page each time? Note that if I trace the contents of my text
    field for my print layout MovieClip the contents change each time,
    but the print stays the same.
    Sorry for the long post and huge thanks to anyone who may
    have an answer.
    Have a great day!

    I am responding to my own post as I found a solution, though
    I am now about bald from pulling all my hair out. Hopefully this
    helps even one random soul in the future as the printJob class
    seems to be one of the hardest to get help with or find information
    online that pertains.
    My code dynamically creates print page contents based on the
    on screen contents the user is currently viewing within my
    application. My print functions were always printing the first page
    that was printed no matter what page within the application the
    user was viewing.
    As I have learned to do, I was declaring the variables for my
    print objects in the root of my actionScript (outside all the
    functions so they could be accessed across functions).
    I had two variables:
    var docPrint:document = new document(); // A MovieClip layout
    for my print page located in my library
    var printPage:Sprite = new Sprite(); // The Sprite to hold my
    MovieClip for print purposes as a sprite is required
    I also had two functions:
    docContentsLoad(); // Loaded contents into docPrint Movieclip
    and formatted
    printJob(); // Created print job, adjusted docPrint for
    printer settings, and sent print
    It turns out the easiest solution was to combine my two
    functions into one printJob function and place my two variables
    (docPrint & printPage) at the beginning of the function. Now
    the printing works fine everytime. No more repeat pages.
    My assumption is that the only way to truly reset the print
    document is to delcare the variables within the function being
    called to print the document so that they are redeclared each
    time.

  • Problem with "PL/SQL Dynamic Content" and displaying rows

    hi,
    im new to APEX, and pl/sql [but not web dev or sql].
    ive found the bit in APEX that lets you add data from your DB using the 'CREATE' > 'PL/SQL Dynamic Content'.
    maybe there's a better option for people who dont know pl/sql? i dont know?
    however, i think i can getting working with a little bit of help but im stumbling around in the dark a bit here.
    ok so this is the pl/sql ive come up with to show three example values on page 23 of my aplplication:
    BEGIN
    SELECT ID, NAME, OWNER
    FROM COM_MAILSHOTS
    INTO :P23_ID, :P23_NAME, :P23_OWNER;
    END;
    im getting the error:
    1 error has occurred 
    ORA-06550: line 5, column 21: PL/SQL: ORA-00933: SQL command not properly ended ORA-06550: line 4, column 1: PL/SQL: SQL Statement ignored
    thanks for reading!

    Metabaron wrote:
    hi,
    im new to APEX, and pl/sql [but not web dev or sql].
    ive found the bit in APEX that lets you add data from your DB using the 'CREATE' > 'PL/SQL Dynamic Content'.
    maybe there's a better option for people who dont know pl/sql? i dont know?
    The easiest (and best) way to "display rows" is using a report. Dynamic PL/SQL regions are more complex and are required much less frequently.
    The Oracle® Database 2 Day + Application Express Developer's Guide tutorial explains how to create reports and other basic APEX techniques.

  • Mixing static and dynamic content in a single outputText value causes NPEs

    Hi,
    I am having a problem and I'm wondering if it is a result of my error or if this is a bug.
    I am mixing dynamic and static content in the value attribute of tags (e.g., outputText). On initial page load, everything works fine. However, if the same view is reloaded (e.g., after a failed validation) I get an NPE from JSF:
    [#|2006-10-24T08:49:03.756-0500|SEVERE|sun-appserver-pe8.2|javax.enterprise.system.container.web|_ThreadID=12;|StandardWrapperValve[Faces Servlet]: Servlet.service() for servlet Faces Servlet threw exception
    java.lang.NullPointerException
            at com.sun.faces.el.MixedELValueParser.getNextToken(MixedELValueParser.java:140)
            at com.sun.faces.el.MixedELValueParser.parse(MixedELValueParser.java:123)
            at com.sun.faces.el.MixedELValueBinding.getValue(MixedELValueBinding.java:60)
            at javax.faces.component.UIOutput.getValue(UIOutput.java:147)
            at com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getValue(HtmlBasicInputRenderer.java:82)
            at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.getCurrentValue(HtmlBasicRenderer.java:201)
            at com.sun.faces.renderkit.html_basic.LabelRenderer.encodeBegin(LabelRenderer.java:128)
            at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:683)
            at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:443)
            at com.sun.faces.renderkit.html_basic.GridRenderer.encodeChildren(GridRenderer.java:233)
            at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:701)
            at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:445)
            at com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:130)
            at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:701)
            at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:445)
            at com.sun.faces.renderkit.html_basic.GridRenderer.encodeChildren(GridRenderer.java:233)
            at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:701)
            at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:445)
            at com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:130)
            at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:701)
            at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:445)
            at com.sun.faces.renderkit.html_basic.GridRenderer.encodeChildren(GridRenderer.java:233)
            at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:701)
            at javax.faces.webapp.UIComponentTag.encodeChildren(UIComponentTag.java:609)
            at javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:546)
            at com.sun.faces.taglib.html_basic.PanelGridTag.doEndTag(PanelGridTag.java:460)
            at org.apache.jsp.registration_jsp._jspx_meth_h_panelGrid_0(registration_jsp.java:324)
            at org.apache.jsp.registration_jsp._jspx_meth_h_form_0(registration_jsp.java:223)
            at org.apache.jsp.registration_jsp._jspx_meth_f_view_0(registration_jsp.java:157)
            at org.apache.jsp.registration_jsp._jspService(registration_jsp.java:118)
            at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:105)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:860)
            at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:336)
            at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:297)
            at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:247)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:860)
            at sun.reflect.GeneratedMethodAccessor188.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 org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:723)
            at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:482)
            at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:417)
            at org.apache.catalina.core.ApplicationDispatcher.access$000(ApplicationDispatcher.java:80)
            at org.apache.catalina.core.ApplicationDispatcher$PrivilegedForward.run(ApplicationDispatcher.java:95)
            at java.security.AccessController.doPrivileged(Native Method)
            at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:313)
            at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:326)
            at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:132)
            at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
            at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:248)
            at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
            at javax.faces.webapp.FacesServlet.service(FacesServlet.java:194)
            at sun.reflect.GeneratedMethodAccessor202.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 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)My code looks like this:
    <h:outputText escape="false"
              value='<link href="#{myBean.styleSheet}" rel="stylesheet" type="text/css"  />' />If I replace this with a much more convoluted set of tags, it works:
    <h:outputText escape="false"
              value='<link href="' /><h:outputText escape="false" value="#{myBean.styleSheet}"
              /><h:outputText escape="false" value='" rel="stylesheet" type="text/css" />' />So is the problem that I am mixing dynamic and static content with a single value? If so, why does it work on the first view, and not after?
    If it matters, I'm using the reference implementation version 1.1 (as included with NetBeans 5.5RC2) on SuSE 10.0 w/ JDK 1.5_09.
    Thanks,
    Bill

    Yes, that's how I originally had it, but then changed it to the outputText approach since a single tag could do what I wanted, as long as I was allowed to mix static and dynamic content within a single value.
    I think this is a bug in JSF 1.1, since if what I am doing is illegal, it should throw an exception on the first page view, not work on first view and throw an exception on subsequent views. I'm guessing that this has something to do with the fact that on first page view it only runs the restore view and render response JSF phases, while on subsequent requests all of the phases will be run, and it's in one of those other phases that the exception is thrown.
    For now, multiple tags is the work-around, I guess.
    Thanks,
    Bill

  • Components will not resize correctly in Catalyst

    Download PSD: http://dl.dropbox.com/u/814249/campusariel.psd
    Download FXP: http://dl.dropbox.com/u/814249/campusariel.fxp
    I am completely new to Flash Catalyst (any and all versions). I am currently using Photoshop CS5.5 to design and Catalyst 5.5 to import and translate into a flash project. I recently picked up a job creating an interactive application for a college campus. I have attached my two project files for anyone who can help to view to see what is wrong. I have also attached inline screenies for those who cannot/will not download.
    Here is my problem: I created the attached PSD in Photoshop with what I thought were the correct layers and groups/folders. I am hoping to achieve the following effect: when a user rolls over the purple buttons, multiple similar copies of that button that are initially hidden beneath the visible one popup in sequence above the rolled over purple button.
    Ex. State 1:
    Animation/Action Sequence to the following:
    The purple popup objects will have their own text content and will be buttons themselves that a user clicks to change to a different state with more specific information.
    Not only am I unsure of how to create such animation/action sequence, my purple components (whether I actually convert them to components in Catalyst or not) will not resize correctly. NOTE: I did click the resizable option when importing the PSD into Catalyst. The following effect occurs both ways. I add constraints to all objects by selecting all, right clicking, and choosing add constraints to all; the following occurs when stretched inwards using the resize test handle:
    and this when stretched out:
    When viewed using CTRL+Enter, the application is nowhere near resized in the browser window. I must be missing something, especially being new to Catalyst. I tried flattening the image in Photoshop, which obviously allowed the image to be easily resizable in Catalyst and the test browser window. However, I cannot use my separate elements when flattened; flattening defeats the purpose of Catalyst if I'm not mistaken.
    Any guidance?
    Message was edited by: joshlev

    Hi Martin - Those are really good questions! I did check and the image is uploaded. I assume I can see the image in my one browser because of the cache  since I could not see it on several computers that I had never pulled the site up on before.
    And actually I have it working now. Nancy had a good idea to check to see if I saved it as CMYK instead of RGB. When I went to go open the file on my computer Photoshop and Fireworks had an error in opening it. They had a problem opening the one I downloaded from the ftp too. It just looks like somehow the file became corrupted! Not sure how, but that seems like what the problem was since I have a new image up there now and it's working fine again.
    Thanks for all your help!
    Liz

  • Node Container that does not resize with Window Resize Event

    Hello,
    I'm not new to Java but I am new to JavaFX.
    I plan to have a container/Canvas with multiple shapes (Lines, Text, Rectangle etc) in it. This Container can be X times in the Szene with different Text Shapes. I need to Zoom and Pan (maybe rotation) the whole Szene and the Containers/Canvas.
    So I was playing around with that but I have two issues.
    1) all Canvas classes that I found (like Pane for example) do resize with the main window resize event. The content of the canvas isn't centered any more.
    2) I added a couple of Rectangles to the canvas and both the rectangles and the canvas have a mouse listener which will rotate the item/canvas. Problem is, that even if I click the rectangle also the underlaying canvas is rotated...I think I need some kind of Z-Info to find out what was clicked.
    Here is the little example program, it makes no produktiv sense but it demonstrates my problem.
    Does anybody has a tip what canvas class would fit and does not resize with the main window and how to figure out what was clicked?
    public class Test extends Application
         Scene mainScene;
         Group root;
         public static void main(String[] args)
            launch(args);
        @Override
        public void init()
            root = new Group();
            int x = 0;
            int y = -100;
            for(int i = 0; i < 5; i++)
                 x = 0;
                 y = y + 100;
                 for (int j = 0; j < 5; j++)
                      final Rectangle rect = new Rectangle(x, y, 30 , 30);
                       final RotateTransition rotateTransition = RotateTransitionBuilder.create()
                             .node(rect)
                             .duration(Duration.seconds(4))
                             .fromAngle(0)
                             .toAngle(720)
                             .cycleCount(Timeline.INDEFINITE)
                             .autoReverse(true)
                             .build();
                     rect.setOnMouseClicked(new EventHandler<MouseEvent>()
                          public void handle(MouseEvent me)
                               if(rotateTransition.getStatus().equals(Animation.Status.RUNNING))
                                    rotateTransition.setToAngle(0);
                                    rotateTransition.stop();
                                    rect.setFill(Color.BLACK);
                                    rect.setScaleX(1.0);
                                    rect.setScaleY(1.0);
                               else
                                    rect.setFill(Color.AQUAMARINE);
                                    rect.setScaleX(2.0);
                                    rect.setScaleY(2.0);
                                    rotateTransition.play();
                      root.getChildren().add(rect);
                      x = x + 100;
        public void start(Stage primaryStage)
             final Pane pane = new Pane();
             pane.setStyle("-fx-background-color: #CCFF99");
             pane.setOnScroll(new EventHandler<ScrollEvent>()
                   @Override
                   public void handle(ScrollEvent se)
                        if(se.getDeltaY() > 0)
                             pane.setScaleX(pane.getScaleX() + 0.01);
                             pane.setScaleY(pane.getScaleY() + 0.01);
                        else
                             pane.setScaleX(pane.getScaleX() - 0.01);
                             pane.setScaleY(pane.getScaleY() - 0.01);
             pane.getChildren().addAll(root);
             pane.setOnMouseClicked(new EventHandler<MouseEvent>(){
                   @Override
                   public void handle(MouseEvent event)
                        System.out.println(event.getButton());
                        if(event.getButton().equals(MouseButton.PRIMARY))
                             System.out.println("primary button");
                             final RotateTransition rotateTransition2 = RotateTransitionBuilder.create()
                                  .node(pane)
                                  .duration(Duration.seconds(10))
                                  .fromAngle(0)
                                  .toAngle(360)
                                  .cycleCount(Timeline.INDEFINITE)
                                  .autoReverse(false)
                                  .build();
                             rotateTransition2.play();
             mainScene = new Scene(pane, 400, 400);
             primaryStage.setScene(mainScene);
            primaryStage.show();
    }Edited by: 953596 on 19.08.2012 12:03

    To answer my own Question, it depends how you add childs.
    It seems that the "master Container", the one added to the Scene will allways resize with the window. To avoid that you can add a container to the "master Container" and tell it to be
    pane.setPrefSize(<child>.getWidth(), <child>.getHeight());
    pane.setMaxSize(<child>.getWidth(), <child>.getHeight());
    root.getChildren().add(pane);and it will stay the size even if the window is resized.
    Here is the modified code. Zooming and panning is working, zomming to window size is not right now. I'll work on that.
    import javafx.animation.Animation;
    import javafx.animation.ParallelTransition;
    import javafx.animation.ParallelTransitionBuilder;
    import javafx.animation.RotateTransition;
    import javafx.animation.RotateTransitionBuilder;
    import javafx.animation.ScaleTransitionBuilder;
    import javafx.animation.Timeline;
    import javafx.animation.TranslateTransitionBuilder;
    import javafx.application.Application;
    import javafx.event.EventHandler;
    import javafx.geometry.Point2D;
    import javafx.scene.Group;
    import javafx.scene.Scene;
    import javafx.scene.input.MouseButton;
    import javafx.scene.input.MouseEvent;
    import javafx.scene.input.ScrollEvent;
    import javafx.scene.layout.Pane;
    import javafx.scene.paint.Color;
    import javafx.scene.shape.Rectangle;
    import javafx.stage.Stage;
    import javafx.util.Duration;
    public class Test extends Application
         Stage primStage;
        Scene mainScene;
         Group root;
         Pane masterPane;
         Point2D dragAnchor;
         double initX;
        double initY;
         public static void main(String[] args)
            launch(args);
        @Override
        public void init()
            root = new Group();
            final Pane pane = new Pane();
            pane.setStyle("-fx-background-color: #CCFF99");
            pane.setOnScroll(new EventHandler<ScrollEvent>()
                @Override
                public void handle(ScrollEvent se)
                    if(se.getDeltaY() > 0)
                        pane.setScaleX(pane.getScaleX() + pane.getScaleX()/15);
                        pane.setScaleY(pane.getScaleY() + pane.getScaleY()/15);
                        System.out.println(pane.getScaleX() + " " + pane.getScaleY());
                    else
                        pane.setScaleX(pane.getScaleX() - pane.getScaleX()/15);
                        pane.setScaleY(pane.getScaleY() - pane.getScaleY()/15);
                        System.out.println(pane.getScaleX() + " " + pane.getScaleY());
            pane.setOnMousePressed(new EventHandler<MouseEvent>()
                public void handle(MouseEvent me)
                    initX = pane.getTranslateX();
                    initY = pane.getTranslateY();
                    dragAnchor = new Point2D(me.getSceneX(), me.getSceneY());
            pane.setOnMouseDragged(new EventHandler<MouseEvent>()
                public void handle(MouseEvent me) {
                    double dragX = me.getSceneX() - dragAnchor.getX();
                    double dragY = me.getSceneY() - dragAnchor.getY();
                    //calculate new position of the pane
                    double newXPosition = initX + dragX;
                    double newYPosition = initY + dragY;
                    //if new position do not exceeds borders of the rectangle, translate to this position
                    pane.setTranslateX(newXPosition);
                    pane.setTranslateY(newYPosition);
            int x = 0;
            int y = -100;
            for(int i = 0; i < 5; i++)
                 x = 0;
                 y = y + 100;
                 for (int j = 0; j < 5; j++)
                      final Rectangle rect = new Rectangle(x, y, 30 , 30);
                       final RotateTransition rotateTransition = RotateTransitionBuilder.create()
                             .node(rect)
                             .duration(Duration.seconds(4))
                             .fromAngle(0)
                             .toAngle(720)
                             .cycleCount(Timeline.INDEFINITE)
                             .autoReverse(true)
                             .build();
                     rect.setOnMouseClicked(new EventHandler<MouseEvent>()
                          public void handle(MouseEvent me)
                               if(rotateTransition.getStatus().equals(Animation.Status.RUNNING))
                                    rotateTransition.setToAngle(0);
                                    rotateTransition.stop();
                                    rect.setFill(Color.BLACK);
                                    rect.setScaleX(1.0);
                                    rect.setScaleY(1.0);
                               else
                                    rect.setFill(Color.AQUAMARINE);
                                    rect.setScaleX(2.0);
                                    rect.setScaleY(2.0);
                                    rotateTransition.play();
                      pane.getChildren().add(rect);
                      x = x + 100;
            pane.autosize();
            pane.setPrefSize(pane.getWidth(), pane.getHeight());
            pane.setMaxSize(pane.getWidth(), pane.getHeight());
            root.getChildren().add(pane);
            masterPane = new Pane();
            masterPane.getChildren().add(root);
            masterPane.setStyle("-fx-background-color: #AABBCC");
            masterPane.setOnMousePressed(new EventHandler<MouseEvent>()
               public void handle(MouseEvent me)
                   System.out.println(me.getButton());
                   if((MouseButton.MIDDLE).equals(me.getButton()))
                       double screenWidth  = masterPane.getWidth();
                       double screenHeight = masterPane.getHeight();
                       System.out.println("screenWidth  " + screenWidth);
                       System.out.println("screenHeight " + screenHeight);
                       System.out.println(screenHeight);
                       double scaleXIs     = pane.getScaleX();
                       double scaleYIs     = pane.getScaleY();
                       double paneWidth    = pane.getWidth()  * scaleXIs;
                       double paneHeight   = pane.getHeight() * scaleYIs;
                       double screenCalc    = screenWidth > screenHeight ? screenHeight : screenWidth;
                       double scaleOperator = screenCalc  / paneWidth;
                       double moveToX       = (screenWidth/2)  - (paneWidth/2);
                       double moveToY       = (screenHeight/2) - (paneHeight/2);
                       System.out.println("movetoX :" + moveToX);
                       System.out.println("movetoY :" + moveToY);
                       //double scaleYTo = screenHeight / paneHeight;
                       ParallelTransition parallelTransition = ParallelTransitionBuilder.create()
                               .node(pane)
                               .children(
                                   TranslateTransitionBuilder.create()
                                       .duration(Duration.seconds(2))
                                       .toX(moveToX)
                                       .toY(moveToY)
                                       .build()
                                   ScaleTransitionBuilder.create()
                                       .duration(Duration.seconds(2))
                                       .toX(scaleOperator)
                                       .toY(scaleOperator)
                                       .build()
                      .build();
                       parallelTransition.play();
        public void start(Stage primaryStage)
             primStage = primaryStage;
            mainScene = new Scene(masterPane, 430, 430);
             primaryStage.setScene(mainScene);
            primaryStage.show();
    }

  • Today pane will not resize

    I've just installed TB 24.4.0, Lightening 2.6.4 and Provider for Google Calendar 0.25
    Win 8.1 64-bit (I use desktop 99.9999% of the time)
    Dell XPS 18, 8gb RAM, C: has 363 GB Free
    What is happening is on the mail tab the "today pane" always uses 1/2 the window. I can not resize it.
    https://dl.dropboxusercontent.com/u/90621425/Mail%20tab.png
    also when I'm on the Add-ons tab
    On the calendar tab it acts normal:
    https://dl.dropboxusercontent.com/u/90621425/calendar%20tab.png
    as well as the tasks tab
    you will also notice the x to close it and the "today pane" button at the bottom of TB don't display either.
    It seemed to work until I installed "Google Tasks Sync", I removed that plug-in and nothing has changed. Has anyone seen this before?
    Love the visual upgrade to this mail client, I've been using WLM 2012 forever, but its having issues with Google Play emails. Add to that its possible to have outlook.com accounts in TB and the calendar and this client is head and shoulders above.
    I'll surely donate once I can keep the today pane displayed (in a reasonable size) on the mail tab.

    * Make sure ThunderBird is closed before proceeding.
    * Locate '''localstore.rdf''' file from your TB profile folder (default Windows: ''C:\Users\{USERNAME}\AppData\Roaming\Thunderbird\Profiles\{randomletters}.default\'' ).
    * Open it in a text editor: I like [http://notepad-plus-plus.org/download Notepad++ ].
    * Find and edit the line to look like the one below: (modewidths and width; probably have crazy values)
    <RDF:Description RDF:about="chrome://messenger/content/messenger.xul#today-pane-panel"
    collapsedinmodes=","
    modewidths="200,200,200"
    width="200" />''
    * Save the file and open TB.

  • I have a problem with a table not resizing correctly in some browsers

    Hi,
    I am using the fluid grid layout in DW. I have created a table to hold some images and text. I have the table set to 100% instead of a fixed width.
    The table and images resize correctly at my smartphone breakpoint in DW and Crome. They do not resize correctly in IE10 or Firefox.
    I hope somebody can point out the error of my ways.
    Thanks
    http://cupcakemary.skeeterz71.com/_cm_mockup/menu.html

    Tables do not work well in Fluid Grid Layouts because table width is always going to be determined by combined width of the content inside it.  As such it won't re-scale past a certain point no matter what you do. I typically avoid using tables for layouts anyway.  But especially in FluidGrids.
    If you build your FluidGrid layout correctly from the start, there's little reason to use tables.
    LayoutDiv 1                 LayoutDiv 2                      LayoutDiv 3
      float:left                        float:left                            float:left
    On smaller displays, these divs will naturally stack vertically.
    LayoutDiv1
    LayoutDiv2
    LayoutDiv 3
    Nancy O.

  • Dynamic Content in Select

    Is there a reason why the lightning bolt that lets you add dynamic content to a <select> list box has disappeared? Is there some other way of doing this now?

    David_Powers wrote:
    Yes, there is a reason. Unfortunately, I'm not at liberty to tell you what it is. That information needs to come from Adobe.
    How nice for you to have inside info.... Can you at least hint as to "when" this reason might come to light? I have a book of business to attend to, and the changes like what's mentioned at the start of this thread are making that a lot more challenging. I have been following the Adobe blog for Dreamweaver, among other things, and they've never mentioned they were going to remove dynamic data features like that.
    You also say: "Web design and development are changing at a rapid pace. The changes mightn't suit you, but Dreamweaver will die if it doesn't keep pace with the industry."
    While I totally agree with you that Dreamweaver needs to keep pace with the industry, I am a little confused by your comment because it sounds as if you are saying that the industry is changing in a direction away from working with dynamic data. In that case, I couldn't disagree with you more. If anything, static content is going extinct; replaced with data driven content management solutions and other dynamic sources. And it's in this regard where I'm baffled at Dreamweaver removing features that help the users who can't code from scratch build sites with these capabilities. I've been running a business for over 15 years because of the dynamic data tools and capabilitites of Dreamweaver and add-on extensions.

  • Building a report using "PL/SQL Dynamic Content" can I have it output PDF?

    Hi,
    I build several reports using the "PL/SQL Dynamic Content" region and htp.p().
    The output is exactly what the customer wants but they would now like to have it go into PDF document.
    Is there a way to do it?
    Bill

    Bill,
    You can integrate APEX with Oracle BI Publisher and have your report generated to PDF.
    If you're just interested in saving what is on a web page in PDF, have a look at CuteFTP (Windows), which is a free print driver that allows you to "print" to a PDF file as if it were a printer. On the Mac, you can save to PDF and do not need any additional software.
    Thanks,
    &#150; Scott &#150;
    http://spendolini.blogspot.com/
    http://sumnertech.com/

  • Error in displaying dynamic contents in tableview?

    Hi Experts,
                     I am developing a jspDynpage which displays dynamic contents in a tableview. ie, the contents are retrieved from LDAP  Active directory. But i am getting wrong number of results. For example,
    If i give last name as Name1,
    MAIL       COMPANY           NAME             PHONE
    UsrMail    Company1       Fnm,Name1        +1 23456 397                                                                               
    Line 1 / 1
    Displays the name one time.
    first name - name2
    MAIL       COMPANY           NAME             PHONE
    UsrMail    Company2        Fnm,Name2       +1 789654 397
    UsrMail    Company2        Fnm,Name2       +1 789654 397
    UsrMail    Company2        Fnm,Name2       +1 789654 397
    UsrMail    Company2        Fnm,Name2       +1 789654 397                                                                               
    Line 1 / 4
    Repeating  the name 4 times.
    Lastname - name3
    MAIL          COMPANY           NAME             PHONE
    UsrMail       Company1       Frstnm,Name3       +1 654321 356
    UsrMail       Company1       Frstnm,Name3       +1 654321 356
    UsrMail       Company1       Frstnm,Name3       +1 654321 356
    UsrMail       Company1       Frstnm,Name3       +1 654321 356
    UsrMail       Company1       Frstnm,Name3       +1 654321 356
    UsrMail       Company1       Frstnm,Name3       +1 654321 356
    UsrMail       Company1       Frstnm,Name3       +1 654321 356
    UsrMail       Company1       Frstnm,Name3       +1 654321 356
    UsrMail       Company1       Frstnm,Name3       +1 654321 356
    UsrMail       Company1       Frstnm,Name3       +1 654321 356                                                                               
    Line 1 / 10
    Repeating  the name 10 times.
    But in Active directory the names are unique .Please Guide me.
    Thanks in advance.
    Regards,
    Krishnan

    Hi
        The problem is with Vector which i used to store the retirved information.
    After cleared that i got the proper result.
    I thought the problem is with tableview.But it is not.
    Note: To clear the vector i used Vec.clear() method. It doesn't work. So i created that vector newly inside the loop.
    Regards,
    Krishnan

Maybe you are looking for