openjpa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jeremy Bauer (JIRA)" <j...@apache.org>
Subject [jira] Commented: (OPENJPA-1540) XMLSchemaSerializer outputs funny values for column name attributes (regression from 1.2.2)
Date Mon, 01 Mar 2010 19:56:05 GMT

    [ https://issues.apache.org/jira/browse/OPENJPA-1540?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12839826#action_12839826
] 

Jeremy Bauer commented on OPENJPA-1540:
---------------------------------------

Problem 1.  There looks to be a bug in the code that determines whether a value needs to be
delimited based upon DBMD returned by the JDBC driver.  I am working on a fix.

Problem 2.  If a value requires delimiters (ex.  "foo bar") the code generator needs to escape
each delimiter.  Ex:  @Column(name="\"foo bar\"").  

> XMLSchemaSerializer outputs funny values for column name attributes (regression from
1.2.2)
> -------------------------------------------------------------------------------------------
>
>                 Key: OPENJPA-1540
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1540
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: jdbc
>    Affects Versions: 2.0.0-beta
>            Reporter: Laird Nelson
>            Assignee: Jeremy Bauer
>
> During a reverse mapping run, it's often common to take the output of a SchemaGenerator
and feed it to an XMLSchemaSerializer via its addAll() method.
> When the DBDictionary that was in effect at schema generation time is one that supports
delimiters (see InformixDictionary), then the identifiers on all the artifacts in the SchemaGroup
housed by the SchemaGenerator have quotes in them.
> Consequently, when the XMLSchemaSerializer writes its schemas to disk, you can get strange
results.  Here's an example <column> fragment:
> <column name="&quot;foobar&quot;">
> Technically I suppose this may not be a bug in XMLSchemaSerializer, since it is simply
serializing what it is handed.  But given that other tools consume its XML schema files, and
given that the value of name attribute will be read in as a String, and given that usually
what happens is that a String is turned into a DBIdentifier and delimited/quoted as necessary,
I am not sure that delimiters should be stored by the XMLSchemaSerializer.
> A downstream effect of this bug is that any reverse  mapping that takes place from here
involving annotations will not compile.  That is, if you ask the ReverseMappingTool for example
to produce annotated Java objects, the annotations will look like this:
> @Column(name=""foobar"")
> ...which will not compile.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message