I'm a newbie in Flex and I encountered the following problem.
When deserializing an XML with FlexXB I get different results from the tag and it's attributes.
For example:
<line text="A&B">C&D</line>
After deserialization I expect
text: A&B
line: C&D
but as a result I get
text: A&B
line: C&D
After sources have been investigated I found that in XmlMemberSerializer.as used
child.toXMLString();
but in XmlAttributeSerializer.as
value = valueXML[0];
which is equivalent to .toString();
I don't understand whether it is correct or not. And I need help how to get expected results in this case.
Thanks.
Google developers fixed this issue in r744 revision. XmlMemberSerializer.as diff
Related
How does one define constraints via Vapor? Here's my latest attempt:
database.schema(Thingmabob.schema)
.id()
.field("parentID", .uuid, .required, .references(Stuff.schema, .id))
.field("name", .string, .required)
.field("isDocumened", .bool, .required)
.field("value1", .uint, .required)
.field("value2", .uint)
.constraint(.custom("value2 > value1 + 1")) // << "syntax error"
.create()
Solution is two folds:
1) Seems the documentation — HA! — forgot to mention that any field mentionned in the .constraint(.custom( ... )) is set to lowercase. So if you have a field/column like .constraint(.custom("isDocumented ..."), the value in the constraint becomes isdocumented which fails to matches any column. Just beautiful!
2) Also, note that, while I'm using the .constraint() API, the framework has no idea what do to with it... I thus have to write the full statement CHECK notcamelcase > alsonotcamelcase (not just notcamelcase > alsonotcamelcase). Not sure why .constraint() isn't named .arbitrarySQLSegment() as that would've been more accurate and helpful than all that documentation I've read.
Using Java 8u222, I've been trying a silly operation and it incurs in an error that I'm not being able to fully understand. The line code:
ZonedDateTime.parse("2011-07-03T02:20:46+06:00[Asia/Qostanay]");
The error:
java.time.format.DateTimeParseException: Text '2011-07-03T02:20:46+06:00[Asia/Qostanay]' could not be parsed, unparsed text found at index 25
at java.time.format.DateTimeFormatter.parseResolved0(DateTimeFormatter.java:1952)
at java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1851)
at java.time.ZonedDateTime.parse(ZonedDateTime.java:597)
at java.time.ZonedDateTime.parse(ZonedDateTime.java:582)
Using the same date (although the timezone could be incorrect, the intention is just testing here), I changed the square bracket's value and it works, I mean:
ZonedDateTime.parse("2011-07-03T02:20:46+06:00[Europe/Busingen]);
It works as expected, as well as other values such:
ZonedDateTime.parse("2011-07-03T02:20:46+06:00[Asia/Ulan_Bator]")
ZonedDateTime.parse("2011-07-03T02:20:46+06:00[SystemV/CST6CDT]")
I found some similar questions such as the one below, but not precisely the same usage that I'm trying / facing.
Error java.time.format.DateTimeParseException: could not be parsed, unparsed text found at index 10
Does someone have an understanding of Java Date API to help me out to grasp what I'm doing wrong here?
Thanks.
Asia/Qostanay is a zone which doesn't exist in the JDK8's list of timezones. It was added later.
If you don't care about the location of the timezone then just splice the [...] part of the string off the end before parsing. Knowing that the time is +06:00 is going to sufficient for almost all purposes.
Alternatively, upgrade to a more recent version of Java.
I am attempting to port some old asp to asp.net. Following this Microsoft tutorial! I am going through the errors and this XML one has me stuck. I have placed the opening and closing parenthesis in several places, but I am still getting the error. I'm sure this is something I'm overlooking, so any help is welcomed.
IF AAP><"" or EXECCOMM><"" or Immigration><"" or MgrMember><"" or OSHA><"" or StratPlan><"" or WageHour><"" or ERISA><"" or Health><"" or Litig><"" or OffHead><"" or PICCOMM><"" or Traditional><"" or WorkComp><"" then
BodyText=Replace(BodyText, "###SPECEmail###", "<b>Special E-mail Groups: </b>")
Please read this FAQ entry on MSDN:
An XML literal declaration is used in an expression in a location that
is ambiguous to the Visual Basic compiler. That is, the Visual Basic
compiler cannot determine whether the less-than character (<) is
intended as a comparative operator or the start of an XML literal.
You have a lot of < and > characters in your statement and that confuses the compiler.
Also: >< needs to be <> as explained in the comment by Andrew Morton.
So try changing your code to:
IF (AAP<>"") OR (EXECCOMM<>"") OR (Immigration<>"") OR (MgrMember<>"") OR (OSHA<>"") OR (StratPlan<>"") OR (WageHour<>"") OR (ERISA<>"") OR (Health<>"") OR (Litig<>"") OR (OffHead<>"") OR (PICCOMM<>"") OR (Traditional<>"") OR (WorkComp<>"") THEN
BodyText=Replace(BodyText, "###SPECEmail###", "<b>Special E-mail Groups: </b>")
I have following condition in my OSB proxy.
$body/*[1]/xyzflag eq 'true' and (:some other true conditions:)
The node xyzflag is not even present under node pointed by variable $body.
The condition works as expected (gives false) most of the times. but sometime it gives true.
Anyone has faced this situation? Seems a bug to me. Can some help?
The XQuery expression you are trying is wrong.
e.g. If your XML is looks like below:
<school>
<teacher>
<isClassteacher>Y</isClassteacher>
</teacher>
<teacher>
<isClassteacher>N</isClassteacher>
</teacher>
</school>
Then your expression will be like below:
data($body/teacher[1]/isClassteacher)='Y'
Note: Please make the changes as per your requirement.
Hope this will be helpful.
regards
Asutosh
Try to make it like this:
fn:data($body/[1]/xyzflag)
If you are checking for existence of that node <xyzflag>, I will suggest you to use fn:exists function.
This expression
$body/*[1]/xyzflag = 'true'
will return true if the node <xyzflag> is present. It is not going to bother whether the contents of the node is present or not
I am changing my code to use binds in XForms (which is better practice than using nodesets everywhere!) but I am getting errors.
The error message I receive is: "Error: XForms Error (8): id (data_criterion) does not refer to a bind element..."
From tutorials/guides I have been using, it seems as though this should work, but clearly I am missing something! (btw, I was modeling my binding code after the examples here: http://en.wikibooks.org/wiki/XForms/Bind)
I originally thought the problem was due to the fact I was using xf:select controls as opposed to xf:input like the examples, but even once I dumbed down my code to the most simplistic code, I still receive errors!
This is the model code I am using:
<xf:model id="select_data">
<xf:instance id="criteria_data" xmlns="">
<file>
<criteria>
<criterion></criterion>
</criteria>
</file>
</xf:instance>
<bind id="data_criterion" nodeset="instance('criteria_data')/criteria/criterion"/>
</xf:model>
As for the ui code, this is what I have:
<xf:input bind="data_criterion">
<xf:label>Enter criteria:</xf:label>
</xf:input>
The error message I receive is: "Error: XForms Error (8): id (data_criterion) does not refer to a bind element..."
Anyone have any insight to what the problem is? Also, is there any special usage of bindings and xf:select (with xf:itemset) controls that I should be aware of? (I am ultimately using a lot of xf:select controls on my form..)
Thanks in advance!
EDIT:
I ran the code through this validator, and I got this message (refers to the bind line):
"Warning: Should the following element have the XForms namespace applied?: bind (line 66)"
A couple of things you might want to change:
Not sure of this is the reason for the error, but the nodeset expression should be instance('criteria_data')/criteria/..., without file. Remember: instance() returns the root element, not the document node. (This one you took care by updating the question; good)
You are missing the xf on the bind. It should be: <xf:bind id="data_criterion" nodeset="instance('criteria_data')/criteria/criterion"/>.
See below a full example with your code, which works fine for me under Orbeon Forms:
<xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:xf="http://www.w3.org/2002/xforms"
xmlns:xxforms="http://orbeon.org/oxf/xml/xforms"
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:fr="http://orbeon.org/oxf/xml/form-runner">
<xhtml:head>
<xhtml:title>SO Bind</xhtml:title>
<xf:model id="select_data">
<xf:instance id="criteria_data" xmlns="">
<file>
<criteria>
<criterion>Gaga</criterion>
</criteria>
</file>
</xf:instance>
<xf:bind id="data_criterion" nodeset="instance('criteria_data')/criteria/criterion"/>
</xf:model>
</xhtml:head>
<xhtml:body>
<xf:input bind="data_criterion">
<xf:label>Enter criteria:</xf:label>
</xf:input>
</xhtml:body>
</xhtml:html>