Errata

Learning Flex 3

Errata for Learning Flex 3

Submit your own errata for this product.

The errata list is a list of errors and their corrections that were found after the product was released.

The following errata were submitted by our customers and have not yet been approved or disproved by the author or editor. They solely represent the opinion of the customer.

Color Key: Serious technical mistake Minor technical mistake Language or formatting error Typo Question Note Update

Version Location Description Submitted by Date submitted
U/K
Basic Usage section in Using Data Binding Chapter

I believe that this line of code in that section is supposed to be changed to the second line of code:

<mx:Binding source="areaCode.phone" destination="nameLabel.text"/>

<mx:Binding source="model.phone" destination="nameLabel.text"/>

Anonymous  Sep 21, 2008 
Figure 8-24
Code View:

layout="absolute " should be layout="absolute"

The extra space creates an error in Flex Builder

Anonymous  Dec 14, 2008 
Figure 8-24
Code View:

Quite a few missing quotes in the code:

label="mobile

groupName="phoneRadioButtonGroup

label="home

height="22

id="birthdayDateField

id="companyCheckBox

Anonymous  Dec 20, 2008 
section 9.1
Large MXML source section below the line "Your code for the Contact Editor Form should look like this:"

This large mxml source code section is 5 missing double quotes. The result is that the code as written will not run.

Steven Loe  Jun 29, 2009 
5.5.5. Methods
2nd paragraph

The book states ... "One method you've already learned about is addEventListener()". Actually we haven't already learned about that as far as I can tell, which is quite confusing!

Anonymous  Nov 24, 2008 
8.2.3
8.2.3

//create a green box
var g:Canvas = new Canvas();
greenBox.x = 90;
greenBox.y = 90;
greenBox.width = 50;
greenBox.height = 50;
greenBox.setStyle("backgroundColor", 0x00FF00);

on the 2nd line, it should be

var greenBox:Canvas = new Canvas();

Jeffery  Dec 06, 2008 
9.2.1.1. StringValidator
Just before Figure 9-4

Code is missing a line:

THIS:

<mx:StringValidator id="lastNameValidator"
property="text"
required="false"
minLength="2"
tooShortError="What kind of last name is that?" />

SHOULD BE:

<mx:StringValidator id="lastNameValidator"
source="{lastNameTextInput}"
property="text"
required="false"
minLength="2"
tooShortError="What kind of last name is that?" />

Anonymous  Dec 21, 2008 
9.2.2
Examples

The email validator examples are missing the closing quote for the requiredFieldError

<mx:EmailValidator id="emailValidator"
source="{emailTextInput}"
property="text"
requiredFieldError="Please enter your email.&#13;I promise not to
send spam.
triggerEvent="change" />

<mx:EmailValidator id="emailValidator"
source="{emailTextInput}"
property="text"
requiredFieldError="Please enter your email.&#13;I promise not to send spam.
trigger="{submitButton}"
triggerEvent="click" />


The quote is missing after "spam." in both examples

Kristina  Oct 14, 2009 
10.1.2
Code Example

Missing quote at end of song field.

<mx:Array>
<mx:Object
song="In My Secret Life
album="Ten New Songs"
artist="Leonard Cohen"/>

Kristina  Oct 16, 2009 
10.4
2nd Paragraph

The embedded hyper link http.com//developer.yahoo.com/flash/astra-webapis/is not correct. It directs the user to

http://www.http.com//developer.yahoo.com/flash/astra-webapis/

Kristina  Oct 16, 2009 
11.2
3rd code example

Extra quote after redBox in first Canvas container

<mx:VBox>

<mx:ToggleButonBar
dataProvider="{view}"/>

<mx:ViewStack
id="view"
width="200"
height="200">
<mx:Canvas id="redBox""
label="Red"
backgroundColor="#FF0000"/>

Kristina  Oct 23, 2009 
11.2
3rd code example

<mx:VBox>

<mx:ToggleButonBar
dataProvider="{view}"/>


Should be "ToggleButtonBar" not "ToggleButonBar"

Kristina  Oct 23, 2009 
11.2
4th Code Example

<mx:ViewStack
id="view"
width="200"
height="200">
<mx:Canvas id=""redBox"
label

Extra quote before redBox

Kristina  Oct 23, 2009 
11.3.5
Example

The closing ">" for TileList is missing

<mx:TileList id="photosTileList"
dataProvider="{service.lastResult.photo}"
width="100%"
height="100%"
<mx:itemRenderer>

Kristina  Oct 23, 2009 
12.4
1st Example

Code sample has

<mx:ControlBar
horizontalAlign="right">

class=CodeColorComment<!-- This LinkButton will change
the state when clicked -->
<mx:LinkButton id="registerLink"
label="Don't have an account yet?"
color="#1B337B"
click="currentState='registration'" />

</mx:ControlBar>

This won't compile due to the extra code "class=CodeColorComment"

Kristina  Oct 23, 2009 
Printed Page 40/49
Page 40 Figure 4.2/Page 49 last two paragraphs

Source for the HelloWorld.mxml is displayed on page 40. On page 49 the last two paragraphs and sample show adding multiple actions when an event (click) occurs. Unfortunately the checkbox does not have the id specified in the added Button action.

Daniel Looby  Jan 23, 2009 
Printed Page 50
paragraph just before 'How to Create a Function'

In the paragraph it says 'Just place the insertion point after your <mx:Application/> tag, begin typing <mx:Script, and then press Enter.'

The slash at the end of Application should not be there. The script is added within the Application, not after it.

Daniel Looby  Jan 23, 2009 
Printed Page 50
4th paragraph

"Just place your insertion point after your <ms:Application/> tag" should probably read
"Just place your insertion point within your <ms:Application/> tag"

DJPJ  Apr 17, 2009 
Printed Page 50
4th paragraph

"begin typing <mx:Script, and then press Enter." should probably read
"begin typing <mx:Script>, and then press Enter." Code completion didn't happen for me until I typed that closing ">" and then hit Enter.

DJPJ  Apr 17, 2009 
Printed Page 64
Figure 6-1

The figure 6-1 shows that the text on the button is "Change the Label!" however the corresponding code above it shows Label = "Change it!".

BJ Winchester  Apr 10, 2012 
Printed Page 71
1st para, last sentence

Since the last sentence of the first para is meant to amplify the previous two sentences, "Registering multiple functions to listen to one event is part of the power of programming." should read "Registering one FUNCTION to listen to MORE THAN ONE EVENT...".

As stated in the text, "registering multiple functions to listen to one event" will only work if that "one event" being handled is registered in DIFFERENT objects.

[my capitalization for emphasis]

Nik Zakrzewski  Jan 21, 2009 
Printed Page 83/84
'Storing Complex Data' section

In chapter 7, page 83 Storing Complex Data using '<mx:Model>' is introduced. In the example that begins on page 83 and ends on page 84 the sample model is given an id of 'model'. But in the source attribute of the data binding an id of 'areaCode' is used. It should be 'model', which is what is referenced in the sample showing Multilevel bindings at the bottom of page 84.

Daniel Looby  Jan 23, 2009 
Printed Page 84
5th xml line

the source attribute is "areaCode.phone"
I assume it should be "model.phone"

Anonymous  Nov 13, 2008 
Printed Page 84
code at top of page

In the line

<mx:Binding source="areaCode.phone" destination="nameLabel.text" />

I assume you meant to set the source attribute to the Model id, which is "model", not "areaCode"? Is that correct?

Anonymous  Dec 04, 2008 
Printed Page 84
5th line

In the book:
source="areaCode.phone"

I think it should be:
source="model.phone"

Anonymous  Apr 15, 2009 
Printed Page 84
last 2 lines of sample code at top of page

The lines
<mx:Binding source="areaCode.phhone" destination="nameLabel.text"/>
and
<mx:Lable id="nameLabel" />
don't seem to have anything to do with the topic under discussion.
I think they should be removed.

areaCode first shows up in the next section, under Multilevel Bindings further down the page.

DJPJ  Apr 18, 2009 
Printed Page 84
code example at top of page

Better yet .....

change 'source="areaCode.phone" to
'source="model.phone"

DJPJ  Apr 18, 2009 
Printed Page 84
<mx:Bionding statement at top of page

This statement should use source="model.phone" instead of source="areaCode.phone":

<mx:Binding source="areaCode.phone" destination="nameLabel.text"/>

Anonymous  May 14, 2009 
Printed Page 85
first paragraph

The book refers to "country code" instead of "areaCode"

Anonymous  Nov 13, 2008 
Printed Page 85
1st paragraph

References are made to the "country code" when, I believe, the "area code" was intended.

John Macleod  Feb 04, 2009 
Printed Page 85
1st paragraph

In two places the term "country code" is used. I think it should say "area code."

DJPJ  Apr 18, 2009 
Printed Page 98
Figure 8-3

In chapter 8, page 98, figure 8-3 is incorrect. Red box was added first, then green box and finally blue box. So red box would be first (bottom), green box second (middle) and blue box last (top). If green box is removed and then added it would be on top. But the red box would still be the first one (bottom), blue box would now be second (middle) and green box would be last (top). So the blue box should be displayed on top of the red box and not as shown in the figure. Figure 8-4 is correct when the layout of the panel is vertical.

Daniel Looby  Jan 23, 2009 
Printed Page 122-123
Last paragraph page 122, sample code top of page 123

In EmailValidator section it talks about the missingAtSignError. On the top of page 123 in sample code it has:

requiredFieldError="An at sign (@) is missing in your e-mail
address."/>

The first paragraph indicates that a 'silly warning' will display whenever no e-mail address is entered. Figure 9-5 is suppose to show this. But in Figure 9.5 an e-mail address was entered, just without an '@' sign.

The source line should reference the missingAtSignError attribute instead of the requiredFieldError attribute, as in:

missingAtSignError="An at sign (@) is missing in your e-mail
address."/>

And the text in the first paragraph should reference a 'silly warning' when an e-mail address is entered without an '@' sign.

Daniel Looby  Jan 22, 2009 
Printed Page 130
code sample

The for loop contains 2 logical lines, but the indentation confusingly makes it appear to be only one. The indention of the line:

errorMessages.push(errorField + ": " +

should be one level less.

Scott Thisse  Dec 01, 2009 
Printed Page 149
contactDetails code

The contactDetails panel contains an HBox that isn't needed. (Also, there is no end tag, </mx:HBox>.)

If you type in the text as in the contactDetails example, you get extra space before the last name and before the phone number. I strung my text together to fix this with no line and tabs in between the curly braces (only a space was used).

text="{contactsDataGrid.selectedItem.firstName} {contactsDataGrid.selectedItem.lastName}"

text="{contactsDataGrid.selectedItem.phoneType}: {phoneFormatter.format(contactsDataGrid.selectedItem.phone)}"/>


Also, where is the contactsDataGrid code supposed to be? In a separate panel? For now, I put mine in the contactDetails panel, right after the Canvas.

Thanks

Kelly  May 28, 2009 
Printed Page 162
In the ToggleButtonBar example, the first Canvas

In the first Canvas, there is an extra double-quote after the id:

<mx:Canvas id="redbox""

Kelly  Jun 02, 2009 
Printed Page 173
First paragraph

When using Internet Explorer 7, the forward and back buttons don't work for the TabNavigator. But, the forward and back buttons do work for Firefox 3.0.10.

Is there an IE setting that prevents this from working?

I'm using Flash Player version 10,0,22,87.

Thanks

Kelly  Jun 03, 2009 
Printed Page 177
middle of page

My version of Flex Builder (3.0.2.214193) doesn't have a State Drop-down list button in Design mode.

DJPJ  May 06, 2009 
Printed Page 177
Figure 12-5

I had to expand the Design area horizontally to see the State drop-down list. (Flex Builder 3 build 3.0.2.214193)

Kelly  Jun 03, 2009 
Printed Page 188
Fifth paragraph

The title of the panel isn't there if the directions were followed. So, the sentence should say something like:
"After that, add the title of the Panel as Contact Editor in the edit state."

Kelly  Jun 06, 2009 
Printed Page 188
Last paragraph

The last paragraph should also mention that all of the validators should also be cut from the ContactManager and copied into the ContactViewer.

Kelly  Jun 06, 2009 
Printed Page 194
code sample in middle of page

After following the steps described and reviewing the resulting code for the main application, I still had validator and formatter code in the main application, contrary to what your code sample indicated should be there. So then I looked at the code I downloaded from your web site, and it turns out that the validator and formatter code is in both the main application and the component file.

I think you want to take it out of the main application in your provided sample code.

DJPJ  May 07, 2009 
Printed Page 231
Figure 14-12

In my search.mxml, I still have a panel for Favorites. It looks like the favorites panel was left out of the chapter 13 example as shown on this page:

http://greenlike.com/flex/learning/13/Search/srcview/source/Search.mxml.html

I had to add an id="favoritesPanel" to the favorites panel and then add:

<mx:RemoveChild target="{favoritesPanel}"/>

to my search state.

Kelly  Jun 15, 2009 
Printed Page 248
figure 15-7

The Output folder in Figure 15-7 should probably be bin-release instead of bin-debug.

Kelly  Jun 23, 2009 
Printed Page 255
2nd to last paragraph

I copied the address_icon.png file to the src and images folders and couldn't get it to work by following the text in the book. My Windows task bar still has the Adobe Air icon in the upper left corner.

Fiex Builder build 3.0.214193

Kelly  Jun 23, 2009