Problem in running Text Layout Framework online demo

Hi
         I am running textlayout_example but while compile itself showing error
1.1061: Call to a possibly undefined method selectRange through a reference with static type flashx.textLayout.edit:ISelectionManager
2.1120: Access of undefined property TextConverter.
3.Could not resolve <s:Application> to a component implementation
4.1119: Access of possibly undefined property INLINE_GRAPHIC_STATUS_CHANGE through a reference with static type Class.
Am using flexbuilder 3 with flexsdk4.0 and flashplayer 10.0.32. I dono what was d problem... Could anyone know about to fix.

From a distance it sounds like there is more than one version of the textLayout swc in your compile path.  Looks like you have the spark components so there is one version included with the Flex SDK.
Either that or your examples are out of date with respect to the textLayout swc you have.  The releasenotes have details on the API changes.
The most recent examples are available here:
http://opensource.adobe.com/wiki/display/tlf/Text+Layout+Framework
Hope that helps,
Richard

Similar Messages

  • Text Layout Framework columncount Undo problem

    Text Layout Framework columncount Undo problem ::
        The number of times columncount is changed it gets applied to textflow
    and those number of operation is stored in undoStack(UndoManger).But when i
    undo it, it comes back to intial state, without undoin step by step.
    I have given my source code..
    Y so or any other alternative to achieve this..
    Thanx in advance..  
    <?xml version="1.0" encoding="utf-8"?>
    <s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
    xmlns:s="library://ns.adobe.com/flex/spark"
    xmlns:mx="library://ns.adobe.com/flex/mx" creationComplete="init()">
        <fx:Script>
            <![CDATA[
                import flashx.textLayout.container.ContainerController;
                import flashx.textLayout.conversion.ITextImporter;
                import flashx.textLayout.conversion.TextConverter;
                import flashx.textLayout.edit.EditManager;
                import flashx.textLayout.edit.IEditManager;
                import flashx.textLayout.edit.ISelectionManager;
                import flashx.textLayout.edit.SelectionState;
                import flashx.textLayout.elements.InlineGraphicElement;
                import flashx.textLayout.elements.ParagraphElement;
                import flashx.textLayout.elements.TextFlow;
                import flashx.textLayout.events.SelectionEvent;
                import flashx.textLayout.events.StatusChangeEvent;
                import flashx.textLayout.formats.Direction;
                import flashx.textLayout.formats.TextLayoutFormat;
                import flashx.undo.UndoManager;
                import mx.collections.ArrayCollection;
                import mx.controls.Alert;
                import mx.controls.CheckBox;
                import mx.events.FlexEvent;
                import mx.events.SliderEvent;
                import spark.components.Group;
                import spark.components.TextArea;
                import spark.core.SpriteVisualElement;
                public var directions:ArrayCollection = new
    ArrayCollection(
                        {label:"Left-to-Right",
    data:Direction.LTR},
                        {label:"Right-to-Left",
    data:Direction.RTL}
                private var _textContainer:SpriteVisualElement = null;
                private static const textInput:XML = <TextFlow
    xmlns="http://ns.adobe.com/textLayout/2008">
                    <div>
                        <p><span>The Text Layout Framework is
    an extensible library, built on the new text engine in Adobe Flash Player 10,
    which delivers advanced, easy-to-integrate typographic and text layout features
    for rich, sophisticated and innovative typography on the web.
                    Some benefits provided by this framework
    include: 1) rich typographical controls, including kerning, ligatures,
    typographic case, digit case, digit width and discretionary hyphens
                    2) cut, copy, paste, undo and standard keyboard
    and mouse gestures for editing 3) selection, editing and flowing text across
    multiple columns and linked containers
                    4) bidirectional text, vertical text and over
    30 writing scripts including Arabic, Hebrew, Chinese, Japanese, Korean, Thai,
    Lao, Vietnamese, and others
                    5) vertical text, Tate-Chu-Yoko (horizontal
    within vertical text) and justifier for East Asian typography. Try editing this
    text and playing with the options below! Notice an inline image is also
    included.</span></p>
                    </div>
                    </TextFlow>;
                private var _textFlow:TextFlow;
                private function init():void {
                    _textContainer = new SpriteVisualElement();
                    canvas.addElement(_textContainer);
                    var importer:ITextImporter =
    TextConverter.getImporter(TextConverter.TEXT_LAYOUT_FORMAT);
                    _textFlow = importer.importToFlow(textInput);
                    _textFlow.flowComposer.addController(new
    ContainerController(_textContainer, canvas.width-40, canvas.height));
                    _textFlow.interactionManager = new
    EditManager(new UndoManager());
                    _textFlow.flowComposer.updateAllControllers();
                private function changeNoColumns(event:Event):void {
                    var tlf:TextLayoutFormat = new
    TextLayoutFormat();
                    tlf.columnCount = cols.value;
                    tlf.columnGap = 15;
                    tlf.direction = direction.selectedItem.data;
                    var em:EditManager =
    _textFlow.interactionManager as EditManager;
                    em.selectAll();
                    (_textFlow.interactionManager as
    EditManager).applyFormat(tlf,tlf,tlf);
                    _textFlow.flowComposer.updateAllControllers();
                protected function
    undo_clickHandler(event:MouseEvent):void
                    var em:EditManager =
    _textFlow.interactionManager as EditManager;
                    trace("Can undo " + em.undoManager.canUndo() +
    " can redo " + em.undoManager.canRedo());
                    em.undo();
                protected function
    redo_clickHandler(event:MouseEvent):void
                    var em:EditManager =
    _textFlow.interactionManager as EditManager;
                    trace("Can undo " + em.undoManager.canUndo() +
    " can redo " + em.undoManager.canRedo());
                    em.redo();
            ]]>
        </fx:Script>
        <s:Panel title="Text Layout Framework Sample" width="100%"
    height="100%">
            <s:layout>
                <s:VerticalLayout paddingTop="8" paddingLeft="8"/>
            </s:layout>
            <s:VGroup>
                <s:Group id="canvas" width="600" height="200" />
                <s:HGroup width="100%" verticalAlign="middle">
                    <s:Label text="# Columns:"/>
                    <s:NumericStepper id="cols"  minimum="1"
    maximum="20" snapInterval="1" change="changeNoColumns(event)" />
                    <s:Label text="Text Direction:"/>
                    <s:DropDownList id="direction"
    change="changeTextDirection(event)" dataProvider="{directions}"
    selectedItem="{directions[0]}"/>
                    <s:Button label="Undo"
    click="undo_clickHandler(event)"/>
                    <s:Button label="Redo"
    click="redo_clickHandler(event)"/>
                </s:HGroup>
            </s:VGroup>
        </s:Panel>
    </s:WindowedApplication>

    It cannot be reproduced with TLF 3.0 + SDK 4.5.

  • Text Layout Framework Bold & Italic don't work on Linux

    Hi,
    The bold and Italic in Text Layout Framework is not working on Linux with Flash Player 10.1.85.3. Please verify at this link http://labs.adobe.com/technologies/textlayout/demos/ on Linux, by trying to do bold & italic to some text.
    is this a problem with Flash Player 10 ?
    Any help is appreciated.
    Thanks,
    Avi

    Thanks Richard,
    The Bold/Italic variant of the font should be present on the client's machine. Now I am finding solution to how to display the fonts which Bold/Italic variant are not present on the client's machine. One way can be embedding the fonts. Anythings else?
    Avi

  • Rotated ASCII characters overlap in Text Layout Framework with specific Japanese/Chinese fonts

    I am trying to layout rotated text with Text Layout Framework. Mostly okay, but when it comes to specific Japanese/Chinese fonts, problem happens - "hankaku" alphanumeric characters(in other words, ASCII characters) overlap in those fonts. (Full-width "zenkaku" characters have no problem, though)
    When "HG丸ゴシックM-PRO" or "HG正楷書体-PRO" are specified as fontFamily(both come with Office - common fonts in Japanese Windows environment), characters are wholly overlapped.
    When "SimSun", "NSimSun" or "SimHei" are specified as fontFamily(Chinese fonts, all come with Japanese Windows XP), characters are slightly overlapped.
    If anyone knows a solution or a workaround to this, please let me know.
    Sample code:
    <?xml version="1.0" encoding="utf-8"?>
    <mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="initapp();">
        <mx:Script>
            <![CDATA[
                import flashx.textLayout.container.ContainerController;
                import flashx.textLayout.elements.ParagraphElement;
                import flashx.textLayout.elements.SpanElement;
                import flashx.textLayout.elements.TextFlow;
                import flash.text.engine.TextRotation;
                import mx.core.UIComponent;
                private function initapp():void
                    var container:UIComponent           = new UIComponent();
                    var textflow:TextFlow               = new TextFlow();
                    var controller:ContainerController  = new ContainerController(container);
                    var paragraph:ParagraphElement      = new ParagraphElement();
                    var span:SpanElement                = new SpanElement();
                    textflow.fontFamily          = "HG丸ゴシックM-PRO";
                    textflow.textRotation        = TextRotation.ROTATE_270;
                    textflow.fontSize            = 72;
                    textflow.color               = 0;
                    span.text                    = "abcdefg";
                    controller.setCompositionSize(this.unscaledWidth, this.unscaledHeight);
                    paragraph.addChild(span);
                    textflow.addChild(paragraph);
                    textflow.flowComposer.addController(controller);
                    textflow.flowComposer.updateAllControllers();
                    this.addChild(container);
            ]]>
        </mx:Script>
    </mx:WindowedApplication>
    Warm regards,
    Yuushima

    malachite00 wrote:
    > Thanks David. So is there any way around having to embed
    the font when
    > rotating text?
    Not that I know of. Your problem is that you're loading the
    content
    dynamically, so you have no idea what it will contain.
    There's normally
    no need to embed Japanese fonts for a Japanese audience,
    because they
    already have the main fonts, such as Mincho, Gothic, or Osaka
    on their
    machine. Perhaps you'll just have to give up the idea of
    rotation.
    David Powers
    Adobe Community Expert
    Author, "Foundation PHP for Dreamweaver 8" (friends of ED)
    http://foundationphp.com/

  • [svn] 4634: First part of glue code for allowing Halo components to use the new Text Layout Framework , in order to get functionality such as bidirectional text.

    Revision: 4634
    Author:   [email protected]
    Date:     2009-01-22 17:38:56 -0800 (Thu, 22 Jan 2009)
    Log Message:
    First part of glue code for allowing Halo components to use the new Text Layout Framework, in order to get functionality such as bidirectional text.
    Background:
    TLF is making this possible by implementing a TLFTextField class. It is a Sprite that uses TLF to implement the same properties and methods as the legacy TextField class in the Player. Thanks to the createInFontContext() bottleneck method in UIComponent, it can be used by a properly-written Halo component (such as those in Flex 3) without any modifications to the component.
    Note: Text should render similarly -- but is unlikely to render identically -- when a component uses TLFTextField vs. TextField. The width and height may be different, affecting layout; text could wrap differently; etc. This is a fact-of-life based on the fact that TLF/FTE and TextField are completely different text engines.
    Whether a Halo component uses TLF or not to render text will be determined in Flex 4 by a new style, textFieldClass. (Gumbo components always use TLF.)
    TLFTextField is currently only partially implemented. It does not yet support scrolling, selection, editing, multiple formats, or htmlText. Therefore it can only be used for simple display text, such as a Button label.
    Details:
    The TextStyles.as bucket 'o text styles now includes a non-inheriting textFieldClass style. It can be set to either mx.core.UITextField or mx.core.UITLFTextField. These are the Flex framework's wrapper classes around the lower-level classes flash.text.TextField (in the Player) and its TLF-based workalike, flashx.textLayout.controls.TLFTextField.
    The global selector in defaults.css currently sets it to mx.core.UITextField using a ClassReference directive. For the time being, all Halo components will continue to use the "real" TextField.
    The new UITLFTextField is a copy of UITextField, except that it extends TLFTextField instead of TextField. This class has been added to FrameworkClasses.as because no classes in framework.swc have a dependency on it. It will get soft-linked into applcations via the textFieldClass style.
    The TLFTextField class currently lives in a fourth TLF SWC, textLayout_textField.swc. This SWC has been added to various build scripts. The external-library-path for building framework.swc now includes all four TLF SWCs, because UITLFTextField can't be compiled and linked without them. However, since they are external they aren't linked into framework.swc.
    Properly-written Halo UIComponents access their text fields only through the IUITextField interface, and they create text fields like this:
    textField = IUITextField(createInFontContext(UITextField));
    (The reason for using createInFontContext() is to support embedded fonts that are embedded in a different SWF.)
    The createInFontContext() method of UIComponent has been modified to use the textFieldClass style to determine whether to create a UITextField or a UITLFTextField.
    With these changes, you can now write code like
    to get two Buttons, the first of which uses UITextField (because this is the value of textFieldClass in the global selector) and the second of which uses UITLFTextField. They look very similar, which is good!
    Currently, both Buttons are being measured by using an offscreen TextField. A subsequent checkin will make components rendering using UITLFTextField measure themselves using an offscreen TLFTextField so that measurement and rendering are consistent.
    QE Notes: None
    Doc Notes: None
    Bugs: None
    Reviewer: Deepa
    Modified Paths:
        flex/sdk/trunk/asdoc/build.xml
        flex/sdk/trunk/build.xml
        flex/sdk/trunk/frameworks/projects/framework/build.xml
        flex/sdk/trunk/frameworks/projects/framework/defaults.css
        flex/sdk/trunk/frameworks/projects/framework/src/FrameworkClasses.as
        flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as
        flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/metadata/TextStyles.as
    Added Paths:
        flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UITLFTextField.as

    Many of your points are totally legitimate.
    This one, however, is not:
    …To put it another way, the design of the site seems to be geared much more towards its regular users than those the site is supposedly trying to "help"…
    The design and management of the forums for more than five years have driven literally dozens of the most valuable contributors and "regulars" away from the forums—permanently.
    The only conclusion a prudent, reasonable person can draw from this state of affairs is that Adobe consciously and deliberately want to kill these forums by attrition—without a the PR hit they would otherwise take if they suddenly just shut them down.

  • InDesign export Text Layout Framework Markup

    hi there
    as described in title, i'm having troubles exporting an InDesign comp in a decent way
    my quesitons are:
    1 - It exists a DTD for Text Layout Framework Markup Language ?
    2 - Is there an export module that make me able to do it automatically? because tagging all the elements is a pain, and there is just a little documentation about the markup language
    If not, are there any plans to do it?
    I personally think that an export module will be very helpful and will score another goal on products' integration
    Thanx for your time

    Regarding a DTD see this post http://forums.adobe.com/message/2221283#2221283
    I can't comment on any plans for ID to export TLF markup.  Definitely a good idea.
    Thanks,
    Richard

  • Can I use Text Layout Framework with Flex 3 SDK?

    Greetings,
    I have to develop a complex custom widget, with custom text wrapping behaviour. Text Layout framework seem to offer fine level of control, but we are trying to keep our project in Flash player 9, and therefore we are using Flex 3 sdk.
    Can I use the framework with flex sdk 3 and therefore flash player 9?
    Best Regards
    Seref

    For that you need to install flex sdk 3.5 framework and choose your defauls framework to flex 3.5 it will work and as well instal flash player 10

  • How to create a table using Text Layout Framework?

    How to create a table using Text Layout Framework? I meen real tables - like in HTML.

    Cell as indipendant TLF should work, I have created my table using same approach and works fine for me ... this is where it is
    http://apps.live-documents.com/docs/openWebDoc.do?docId=1480607
    Regards
    Raf

  • Unable to apply embedded font swf to text in text layout framework

    Hello,
    We have created a swf for a given font (for e.g., Calibri.swf) which contains all the styles (Regular, Italic, Bold, BoldItalic).
    We have created a xml which lists the name of the font and the corresponding swf file path. The names from the xml are loaded into a combo box in the application.
    When we try to apply the selected font to a text in the text layout framework, it does not apply the same. It sets the font to default "Times" font.
    Following is a snippet of code to apply the font to the text:
    private function selectFont(fontXML:XML):void {               
                    var path:String = fontXML.@source;
                    var myEvent:IEventDispatcher = styleManager.loadStyleDeclarations(FlexGlobals.topLevelApplication.url.substring(0,FlexGl obals.topLevelApplication.url.lastIndexOf("/"))+"/"+path);
                    myEvent.addEventListener(StyleEvent.COMPLETE, function(event:StyleEvent):void{
                        var editManager:EditManager = textFlow.interactionManager as EditManager;
                        var itextLayout:TextLayoutFormat = new TextLayoutFormat();
                        itextLayout.fontSize = 20;
                        var fontName:String = fontXML.@name;
                        Alert.show(fontName);
                        itextLayout.fontFamily = fontName;   
                        Alert.show( "itext = " + itextLayout.fontFamily);
                        editManager.applyFormat(itextLayout,itextLayout,itextLayout);
                        var flowLeafElement:FlowElement = textFlow.findLeaf(editManager.anchorPosition) as FlowElement;
                        editManager.changeStyleName(fontName,flowLeafElement);
    Can anyone please let us know what is missing in the implementation?
    Thanks in advance.
    Vikram

    My recommendation: unless you really care about ISWFContext implementations and the application domain issues, ignore Alex's post about embedded fonts.
    It is a nice discussion about the inner workings of the domain and security of how this works but it is imho broken and is an insane concept to require an ISWFContext to just use an embedded font. It also breaks runtime CSS loading that has fonts embedded in it because the Flex compiler (last I checked) was also busted – it doesn't include the function necessary to create within context the font embed so that it may be applied. You can't create an ISWFContext with a compiled CSS file.
    These issues were introduced in the last Flex SDK beta before FB4 was released in final form. There are multiple bugs logged against the issue of applying loaded font files to TLF text (in short, SWFContext is broken and you have to override GlobalSettings.resolveFontLookupFunction to return embedded or null, all the time).
    Here's some more details to get you started - with links to at least one of the SDK bugs that were filed:
    http://forums.adobe.com/message/2656152
    For example:
    import flashx.textLayout.elements.GlobalSettings;
    import flash.text.engine.FontLookup;
    GlobalSettings.resolveFontLookupFunction = function makeValid():String { return FontLookup.EMBEDDED_CFF };
    And you may need to do this after your font is loaded:
    yourTextBlock.textFlow.invalidateAllFormats();
    Disclaimer: I haven't seen the latest Flex SDK release to see if this was fixed. I have an AIR application with native process that builds embedded font SWF files for use and stub code for FB4 usage but haven't updated to the latest SDK yet to see if it's working properly.
    Anyhow, your best bet is to look at the Flash Builder forums. I think this is/was a Flex team issue, not TLF.

  • Problem with "Run Web Layout" using own template

    When I run a report (using Run Web Layout) which uses my own template (a modified version of rwblue.tdf), it outputs a plain page on the browser (as though it has no template).
    When running the same report (using Run Paper Layout), the output is as it should be.
    Can anyone help? Thank you in anticipation.

    Hi John
    Take a look at Reports product site on otn site. It has an example on how to create a web template for Reports Web View. In addtion to tdf file, for web layout, you need to have a .css file as well as a html code template.
    Hope this will help.
    Thanks
    Rohit

  • Problem in running the Fusion Store Front demo..

    Hi All,
    I downloaded the latest jdev and trying out the fusion store front demo.
    I have a XE running locally on my machine. I'm able to connect to it.
    I see the following compilation error while building the sample:
    Error: oracle.fodemo.storefront.store.queries.WarehouseStockLevelsVO: Entity Attribute for this View Attribute cannot be found.
    oracle.fodemo.storefront.store.queries.WarehouseStockLevelsVO.AddressId1
    Error: oracle.fodemo.storefront.entities.associations.OrderItemsOrdersFkAssoc: One or more attributes for one of the association ends were not found.
    oracle.fodemo.storefront.entities.OrderItemEO.OrderId
    I get the same error for all the attributes.
    thanks
    Vasuki

    Lynn,
    By following your instruction, I changed the deployment time out (ms) to 560000, then got a blank home page, the log message is:
    Target URL -- http://localhost:7101/StoreFrontModule-StoreFrontUI-context-root/faces/home
    Oct 13, 2008 11:40:36 PM oracle.adfinternal.controller.faces.lifecycle.JSFLifecycleImpl setLifecycleContextBuilder
    WARNING: ADFc: Replacing the ADF Page Lifecycle implementation with 'oracle.adfinternal.controller.application.model.JSFDataBindingLifecycleContextBuilder'.
    Oct 13, 2008 11:40:38 PM oracle.adfinternal.controller.util.model.AdfmInterface initialize
    INFO: ADFc: BindingContext is present, using ADFm APIs for DataControlFrames.
    Oct 13, 2008 11:40:38 PM oracle.adfinternal.controller.metadata.provider.MdsMetadataResourceProvider <init>
    INFO: ADFc: Controller caching of MDS metadata resources ENABLED.
    Oct 13, 2008 11:40:39 PM oracle.adf.controller.internal.metadata.MetadataService$Bootstrap add
    INFO: ADFc: Loading bootstrap metadata from '/WEB-INF/adfc-config.xml'.
    Oct 13, 2008 11:40:39 PM oracle.adf.controller.internal.metadata.MetadataService$Bootstrap add
    INFO: ADFc: Loading bootstrap metadata from '/WEB-INF/adfc-config.xml'.
    Oct 13, 2008 11:40:39 PM oracle.adf.controller.internal.metadata.MetadataService$Bootstrap add
    WARNING: ADFc: Duplicate activity 'updateUserInfo' detected.
    Oct 13, 2008 11:40:39 PM oracle.adf.controller.internal.metadata.MetadataService$Bootstrap add
    WARNING: ADFc: Duplicate activity 'checkout-task-flow' detected.
    Oct 13, 2008 11:40:39 PM oracle.adf.controller.internal.metadata.MetadataService$Bootstrap add
    WARNING: ADFc: Duplicate activity 'home' detected.
    Oct 13, 2008 11:40:39 PM oracle.adf.controller.internal.metadata.MetadataService$Bootstrap add
    WARNING: ADFc: Duplicate activity 'registerUser' detected.
    Oct 13, 2008 11:40:39 PM oracle.adf.controller.internal.metadata.MetadataService$Bootstrap add
    WARNING: ADFc: Duplicate activity 'myOrders' detected.
    Oct 13, 2008 11:40:39 PM oracle.adf.controller.internal.metadata.MetadataService$Bootstrap add
    WARNING: ADFc: Duplicate managed bean definition for 'updateUserInfoBean' detected.
    Oct 13, 2008 11:40:39 PM oracle.adf.controller.internal.metadata.MetadataService$Bootstrap add
    WARNING: ADFc: Duplicate managed bean definition for 'navigationBean' detected.
    Oct 13, 2008 11:40:39 PM oracle.adf.controller.internal.metadata.MetadataService$Bootstrap add
    WARNING: ADFc: Duplicate managed bean definition for 'myOrdersBean' detected.
    Oct 13, 2008 11:40:39 PM oracle.adf.controller.internal.metadata.MetadataService$Bootstrap add
    WARNING: ADFc: Duplicate managed bean definition for 'homePageBean' detected.
    Oct 13, 2008 11:40:39 PM oracle.adf.controller.internal.metadata.MetadataService$Bootstrap add
    WARNING: ADFc: Duplicate managed bean definition for 'userInfoBean' detected.
    Oct 13, 2008 11:40:39 PM oracle.adf.controller.internal.metadata.MetadataService$Bootstrap add
    WARNING: ADFc: Duplicate managed bean definition for 'orderPageBean' detected.
    Oct 13, 2008 11:40:39 PM oracle.adf.controller.internal.metadata.MetadataService$Bootstrap add
    WARNING: ADFc: Duplicate managed bean definition for 'shoppingCartBean' detected.
    <Oct 13, 2008 11:41:28 PM EDT> <Error> <HTTP> <BEA-101017> <[weblogic.servlet.internal.WebAppServletContext@11120f9 - appName: 'StoreFrontModule', name: 'StoreFrontModule-StoreFrontUI-context-root', context-path: '/StoreFrontModule-StoreFrontUI-context-root', spec-version: '2.5', request: weblogic.servlet.internal.ServletRequestImpl@73102f[
    GET /StoreFrontModule-StoreFrontUI-context-root/faces/home?_adf.ctrl-state=1665739251_3 HTTP/1.1
    User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3
    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
    Accept-Language: en-us,en;q=0.5
    Accept-Encoding: gzip,deflate
    Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
    Keep-Alive: 300
    Connection: keep-alive
    Cookie: JSESSIONID=rh5lL0JBrLTpyCxjts1lYh1P5j01lfjPlXb2zGnMQyhckrChR4J7!1973722849
    ]] Root cause of ServletException.
    java.lang.IllegalStateException: <f:view> was not present on this page; tag [email protected]04e13encountered without an <f:view> being processed.
         at org.apache.myfaces.trinidad.webapp.UIXComponentELTag.setProperties(UIXComponentELTag.java:97)
         at javax.faces.webapp.UIComponentClassicTagBase.findComponent(UIComponentClassicTagBase.java:613)
         at javax.faces.webapp.UIComponentClassicTagBase.doStartTag(UIComponentClassicTagBase.java:1142)
         at org.apache.myfaces.trinidad.webapp.UIXComponentELTag.doStartTag(UIXComponentELTag.java:72)
         at oracle.adfinternal.view.faces.unified.taglib.UnifiedDocumentTag.doStartTag(UnifiedDocumentTag.java:50)
         Truncated. see log file for complete stacktrace
    >
    <Oct 13, 2008 11:41:28 PM EDT> <Error> <Kernel> <BEA-000802> <ExecuteRequest failed
    java.lang.NullPointerException.
    java.lang.NullPointerException
         at oracle.adfinternal.controller.util.model.DCFrameImpl.makeCurrent(DCFrameImpl.java:124)
         at oracle.adfinternal.controller.state.ViewPortContextImpl.makeCurrent(ViewPortContextImpl.java:924)
         at oracle.adfinternal.controller.state.RequestState.setCurrentViewPortContext(RequestState.java:134)
         at oracle.adfinternal.controller.state.ControllerState.setRequestState(ControllerState.java:832)
         at oracle.adfinternal.controller.state.ControllerState.synchronizeStatePart1(ControllerState.java:361)
         Truncated. see log file for complete stacktrace
    >

  • Errors in implementing Text Layout Framework text flow- selection event not found

    please help me i have implemented the same project givan at adobe open source code site.
    This is my code
    <?xml version="1.0" encoding="utf-8"?>
    <!--
    ADOBE SYSTEMS INCORPORATED
    Copyright 2008 Adobe Systems Incorporated
    All Rights Reserved.
    NOTICE:  Adobe permits you to use, modify, and distribute this file
    in accordance with the terms of the Adobe license agreement
    accompanying it.  If you have received this file from a source
    other than Adobe, then your use, modification, or distribution
    of it requires the prior written permission of Adobe.
    -->
    <!-- Demonstrate some example controls.  This example does not attempt to create a control for every property in the TextLayoutFramework -->
    <mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml" label="Text Editor Example" initialize="init()" backgroundColor="#FFFFFF" horizontalScrollPolicy="off" verticalScrollPolicy="off">
    <mx:Script>
    <![CDATA[
    import flashx.textLayout.container.ContainerController;
    import flashx.textLayout.conversion.TextConverter;
    import flashx.textLayout.edit.EditManager;
    import flashx.textLayout.edit.IEditManager;
    import flashx.textLayout.edit.ElementRange;
    import flashx.textLayout.edit.SelectionState;
    import flashx.textLayout.elements.Configuration;
    import flashx.textLayout.elements.TextFlow;
    import flashx.textLayout.events.StatusChangeEvent;
    import flashx.textLayout.events.SelectionEvent;
    import flashx.textLayout.formats.ITextLayoutFormat;
    import flashx.textLayout.formats.TextLayoutFormat;
    import flashx.textLayout.formats.TextAlign;
    import flashx.textLayout.formats.VerticalAlign;
    import flashx.textLayout.formats.BlockProgression;
    import flashx.textLayout.formats.Direction;
    import flashx.textLayout.tlf_internal;
    import flashx.undo.UndoManager;
    import flash.display.Sprite;
    import flash.system.Capabilities;
    // the textFlow being worked on
    private var _textFlow:TextFlow = null;
    // container to hold the text
    private var _container:Sprite = null;
    // data providers for enumerated list boxes
    static private const textAlignData:Array = [
    { label:"Justify", data:TextAlign.JUSTIFY},
    { label:"Left", data:TextAlign.LEFT},
    { label:"Right", data:TextAlign.RIGHT},
    { label:"Center", data:TextAlign.CENTER},
    { label:"End", data:TextAlign.END},
    { label:"Start", data:TextAlign.START}
    static private const verticalAlignData:Array = [
    { label:"Bottom", data:VerticalAlign.BOTTOM },
    { label:"Justify", data:VerticalAlign.JUSTIFY },
    { label:"Middle", data:VerticalAlign.MIDDLE },
    { label:"Top", data:VerticalAlign.TOP }
    static private const blockProgressionData:Array = [
    { label:"TopToBottom", data:BlockProgression.TB },
    { label:"RightToleft", data:BlockProgression.RL }
    static private const directionData:Array = [
    { label:"LeftToRight", data:Direction.LTR },
    { label:"RightToleft", data:Direction.RTL }
    * initialization
    private function init():void
    // create a sprite to hold the TextLines
    _container = new Sprite();
    textArea.rawChildren.addChild(_container);
    fontFamily.dataProvider = populateFontFamily();
    versionInfo.text = "Vellum: " + flashx.textLayout.BuildInfo.kBuildNumber + (Configuration.tlf_internal::debugCodeEnabled ? " Debug" : " Release")
    + ", Flex: " + mx_internal::VERSION
    + ", Player: " + Capabilities.version;
    * Create an array of available font families
    static private function populateFontFamily():Array
    // really this returns an array of fonts - would be nice to strip it down to just the families
    var fonts:Array = Font.enumerateFonts(true);
    var fontfamily:Array = new Array();
    fonts.sortOn("fontName", Array.CASEINSENSITIVE);
    for(var i:int = 0; i< fonts.length; i++)
    // trace(fonts[i].fontName);
    fontfamily.push({label: fonts[i].fontName, data: fonts[i].fontName});
    return fontfamily;
    /** called to set the size of this panel */
    public function setSize(w:int,h:int):void
    this.width = w;
    this.height = h;
    textArea.width = width;
    textArea.height = height > bottomTabs.height ? this.height-bottomTabs.height : 0;
    if (_textFlow)
    _textFlow.flowComposer.getControllerAt(0).setCompositionSize(textArea.width,textArea.heigh t);
    _textFlow.flowComposer.updateAllControllers();
    /** called when the bottom tabs finally gets sized. */
    private function bottomTabsResize():void
    setSize(width,height);
    /** The TextFlow to edit. */
    public function get textFlow():TextFlow
    { return _textFlow; }
    public function set textFlow(newFlow:TextFlow):void
    // clear any old flow if present
    if (_textFlow)
    _textFlow.flowComposer = null;
    _textFlow = null;
    _textFlow = newFlow;
    if (_textFlow)
    _textFlow.flowComposer.addController(new ContainerController(_container,textArea.width,textArea.height));
    // setup event listeners for selection changed and ILG loaded
    _textFlow.addEventListener(SelectionEvent.SELECTION_CHANGE,selectionChangeListener,false,0 ,true);
    _textFlow.addEventListener(StatusChangeEvent.INLINE_GRAPHIC_STATUS_CHANGE,graphicStatusCha ngeEvent,false,0,true);
    // make _textFlow editable with undo
    _textFlow.interactionManager = new EditManager(new UndoManager());
    // initialize with a selection before the first character
    _textFlow.interactionManager.selectRange(0,0);
    // compose the new textFlow and give it focus
    _textFlow.flowComposer.updateAllControllers();
    _textFlow.interactionManager.setFocus();
    /** Receives an event any time an ILG with a computed size finishes loading. */
    private function graphicStatusChangeEvent(evt:StatusChangeEvent):void
    // recompose if the evt is from an element in this textFlow
    if (_textFlow && evt.element.getTextFlow() == _textFlow)
    _textFlow.flowComposer.updateAllControllers();
    /** Receives an event any time the selection is changed.  Update the UI */
    private function selectionChangeListener(e:SelectionEvent):void
    var selectionState:SelectionState = e.selectionState;
    var selectedElementRange:ElementRange = ElementRange.createElementRange(selectionState.textFlow, selectionState.absoluteStart, selectionState.absoluteEnd);
    // set display according to the values at the beginning of the selection range.  For point selection/characterFormat use getCommonCharacterFormat as that tracks pending attributes waiting for the next character
    var characterFormat:ITextLayoutFormat = _textFlow.interactionManager.activePosition == _textFlow.interactionManager.anchorPosition ? _textFlow.interactionManager.getCommonCharacterFormat() : selectedElementRange.characterFormat;
    var paragraphFormat:ITextLayoutFormat = selectedElementRange.paragraphFormat;
    var containerFormat:ITextLayoutFormat = selectedElementRange.containerFormat;
    updateComboBox(fontFamily,characterFormat.fontFamily);
    fontSize.text = characterFormat.fontSize.toString();
    lineHeight.text = characterFormat.lineHeight.toString();
    updateComboBox(textAlign,paragraphFormat.textAlign);
    textIndent.text = paragraphFormat.textIndent.toString();
    columnCount.text = containerFormat.columnCount.toString();
    columnGap.text = containerFormat.columnGap.toString();
    updateComboBox(verticalAlign,containerFormat.verticalAlign);
    updateComboBox(blockProgression,_textFlow.computedFormat.blockProgression);
    updateComboBox(directionBox,_textFlow.computedFormat.direction);
    /** Helper function to update a comboBox in the UI */
    private function updateComboBox(box:ComboBox,val:String):void
    for (var i:int = 0; i < box.dataProvider.length; i++)
    if (box.dataProvider[i].data == val)
    box.selectedIndex = i;
    return;
    box.text = val;
    * These functions are helpers for the various widgets to actually perform the operations on the TextFlow
    private function changeFontFamily(newFontFamily:String):void
    if (_textFlow && _textFlow.interactionManager is IEditManager)
    var cf:TextLayoutFormat = new TextLayoutFormat();
    cf.fontFamily = newFontFamily;
    IEditManager(_textFlow.interactionManager).applyLeafFormat(cf);
    _textFlow.interactionManager.setFocus();
    private function changeFontSize(newFontSize:String):void
    if (_textFlow && _textFlow.interactionManager is IEditManager)
    var cf:TextLayoutFormat = new TextLayoutFormat();
    cf.fontSize = newFontSize;
    IEditManager(_textFlow.interactionManager).applyLeafFormat(cf);
    _textFlow.interactionManager.setFocus();
    private function changeLeading(newLeading:String):void
    if (_textFlow && _textFlow.interactionManager is IEditManager)
    var cf:TextLayoutFormat = new TextLayoutFormat();
    cf.lineHeight = newLeading;
    IEditManager(_textFlow.interactionManager).applyLeafFormat(cf);
    _textFlow.interactionManager.setFocus();
    private function changeTextAlign(newAlign:String):void
    if (_textFlow && _textFlow.interactionManager is IEditManager)
    var pf:TextLayoutFormat = new TextLayoutFormat();
    pf.textAlign = newAlign;
    IEditManager(_textFlow.interactionManager).applyParagraphFormat(pf);
    _textFlow.interactionManager.setFocus();
    private function changeTextIndent(newIndent:String):void
    if (_textFlow && _textFlow.interactionManager is IEditManager)
    var pf:TextLayoutFormat = new TextLayoutFormat();
    pf.textIndent = newIndent;
    IEditManager(_textFlow.interactionManager).applyParagraphFormat(pf);
    _textFlow.interactionManager.setFocus();
    private function changeColumnCount(newCount:String):void
    if (_textFlow && _textFlow.interactionManager is IEditManager)
    var cf:TextLayoutFormat = new TextLayoutFormat();
    cf.columnCount = newCount;
    IEditManager(_textFlow.interactionManager).applyContainerFormat(cf);
    _textFlow.interactionManager.setFocus();
    private function changeColumnGap(newGap:String):void
    if (_textFlow && _textFlow.interactionManager is IEditManager)
    var cf:TextLayoutFormat = new TextLayoutFormat();
    cf.columnGap = newGap;
    IEditManager(_textFlow.interactionManager).applyContainerFormat(cf);
    _textFlow.interactionManager.setFocus();
    private function changeVerticalAlign(newAlign:String):void
    if (_textFlow && _textFlow.interactionManager is IEditManager)
    var cf:TextLayoutFormat = new TextLayoutFormat();
    cf.verticalAlign = newAlign;
    IEditManager(_textFlow.interactionManager).applyContainerFormat(cf);
    _textFlow.interactionManager.setFocus();
    private function changeBlockProgression(newProgression:String):void
    if (_textFlow && _textFlow.interactionManager is IEditManager)
    var cf:TextLayoutFormat = new TextLayoutFormat();
    cf.blockProgression = newProgression;
    IEditManager(_textFlow.interactionManager).applyFormatToElement(_textFlow,cf);
    _textFlow.interactionManager.setFocus();
    /** Set direction on the rootElement.  This effects both columnDirection and default reading order. */
    private function changeDirection(newDirection:String):void
    if (_textFlow && _textFlow.interactionManager is IEditManager)
    var pf:TextLayoutFormat = new TextLayoutFormat();
    pf.direction = newDirection;
    IEditManager(_textFlow.interactionManager).applyFormatToElement(_textFlow,pf);
    _textFlow.interactionManager.setFocus();
    ]]>
    </mx:Script>
    <!-- <mx:VBox horizontalScrollPolicy="off" verticalScrollPolicy="off" width="100%" height="100%"> -->
    <mx:Canvas id="textArea" width="520" height="400"/>
    <mx:TabNavigator id="bottomTabs" width="100%" creationPolicy="all" paddingLeft="4" paddingBottom="8" backgroundColor="#D9D9D9" color="#202020" horizontalScrollPolicy="off" verticalScrollPolicy="off" resize="bottomTabsResize()">
    <mx:HBox label="Text" backgroundColor="#D9D9D9" width="496" horizontalScrollPolicy="off" verticalScrollPolicy="off" >
    <mx:Label text="Font:"/>
    <mx:ComboBox id="fontFamily" editable="true" enter="changeFontFamily(fontFamily.text)"  close="changeFontFamily(fontFamily.text)" width="200"/>
    <mx:Label text="Size:"/>
    <mx:TextInput id="fontSize" enter="changeFontSize(fontSize.text)" width="40"/>
    <mx:Label text="LineHeight:"/>
    <mx:TextInput id="lineHeight" enter="changeLeading(lineHeight.text)" width="40"/>
    </mx:HBox>
    <mx:HBox label="Para" backgroundColor="#D9D9D9" width="496">
    <mx:Label text="Alignment:"/>
    <mx:ComboBox id="textAlign" close="changeTextAlign(textAlign.selectedItem.data)" dataProvider="{textAlignData}"/>
    <mx:Label text="FirstLineIdent:"/>
    <mx:TextInput id="textIndent" enter="changeTextIndent(textIndent.text)" width="40"/>
    </mx:HBox>
    <mx:HBox label="Container" backgroundColor="#D9D9D9" width="496">
    <mx:Label text="Columns:"/>
    <mx:TextInput id="columnCount" toolTip="auto or a number" enter="changeColumnCount(columnCount.text)" width="40"/>
    <mx:Label text="Gap:"/>
    <mx:TextInput id="columnGap" toolTip="a number" enter="changeColumnGap(columnGap.text)" width="40"/>
    <mx:Label text="VerticalAlignment:"/>
    <mx:ComboBox id="verticalAlign" close="changeVerticalAlign(verticalAlign.selectedItem.data)" dataProvider="{verticalAlignData}"/>
    </mx:HBox>
    <mx:HBox label="Flow" backgroundColor="#D9D9D9" width="496">
    <mx:Label text="Progression:"/>
    <mx:ComboBox id="blockProgression" close="changeBlockProgression(blockProgression.selectedItem.data)" dataProvider="{blockProgressionData}"/>
    <mx:Label text="Direction:"/>
    <mx:ComboBox id="directionBox" close="changeDirection(directionBox.selectedItem.data)" dataProvider="{directionData}"/>
    </mx:HBox>
    <mx:HBox label="Version" backgroundColor="#D9D9D9" width="496">
    <mx:TextInput id="versionInfo" editable="false" width="100%"/>
    </mx:HBox>
    </mx:TabNavigator>
    <!-- </mx:VBox> -->
    </mx:VBox>

    Probably something is going wrong when the application is being built, and textLayout.SWC is not found. Are you using Flex or Flash Pro to build it? What version? Does this error come up when you build the project, or when you run it?
    Thanks,
    - robin

  • How to use Text Layout Framework in Flash CS3?

    Hi,
    I perferctly now how to get TLF to work in CS4.
    As far as I know, the the base code is in AS3 so I should be able to locate the classes in CS3 and use it in Flash CS3.
    I appreciate if there is anyone who can help me with this?

    I'm not that knowledgeable about Flash Pro, however, I'd be quite surprised if you could make this work.  CS4 added Flash Player 10 support.  That includes a compiler update for Vector - a new AS3 feature.  Minimally you'll have to get Flash CS3 to generate FP10 level content and compile with the playerglobals.swc from FP10.  If you can get that far than adding textLayout.swc to your project should be straightforward.
    Maybe someone else has an idea.
    Hope that helps,
    Richard

  • Can we specifies the border sides in Text Layout Framework?

    I am apply boder .. it is working but i am not able to specifies the border sides like left and right only.
    Thanx in advanced...

    What border you are setting?
    I don't think TLF currently got a border attribute in current version. Can you make sure you are setting the attribute for TLF?

  • How about a 'Text Layout Framwork' category on Adobe Labs Ideas in the Flex SDK section?

    I like 'Adobe Labs Ideas', it's far more accessible/inviting then "Adobe Bugs and Issues" (JIRA).
    Therefor I would like to suggest a new category 'Text Layout Framework' under the Flex SDK section or even it's own section (after all TLF isn't Flex only).

    Am I right, that this is a tricky question? No hints or attempts so far. Really no-one out there?
    I guess I am not the only one who would like to extend the Importer (Exporter) by new tags, FlowElement's and FlowLeafElement's.
    Best regards
    Masteradi

Maybe you are looking for

  • Fireworks edit in Dreamweaver pouting and refusing to update.

    Again, I'm new to Fireworks...let me know if I'm totally off base here. Before I start, I'm using Fireworks CS3 and Dreamweaver CS3 as part of Adobe Creative Suite 3 Web Premium. I use an iMac running OS 10.5.2, Leopard. I've just finished designing

  • Can you disable the status bar on a web browser from an applet?

    I have a signed applet and am using plugin 1.3.1_02 with IE 5.5. I use the showStatus("text") method to display pertinent information to the user in the browser's status bar. Currently I see all types of messages being displayed (in IE's status bar)

  • HT1657 Why doesn't my rental movie download completely? iPad

    I am trying to download a rental movie so I can watch later, hopefully during my flight. Movie almost completes downloading then stops and starts over.

  • Why do you limit your input to 120 characters so I can't tell you what is wrong?

    I tried to explain why I can't get sync to work when I hit the 120 char limit. Why have a character limit when people are trying to explain problems. It seems counter intuitive since you need to know what the problem is. The more details you get, usu

  • Cisco ASA 8.6.1 Shape Command Invalid

    Tried setting up a Shape Policy and it states its invalid.  Worked fine on my 5520, just curious if anyone else might know why its coming as invalid now                   ciscoasa(config-pmap-c)# shape                                           ^ ERRO