I would start with option #1

Thanks,
Rick


On Mon, Feb 17, 2014 at 11:31 AM, Aron Lurie <a...@cambridgesemantics.com>wrote:

> Hi All,
>
> Running on trunk, I'm currently facing a problem very similar to
> OPENJPA-1540. When I run the ReverseMappingTool on an Oracle database with
> a lowercase column name, I end up with syntactically incorrect source code.
> Whereas I should get output like this:
>
> @Column(name="\"foobar\"")
>
> I instead get un-compileable output like this:
>
> @Column(name=""foobar"")
>
> The reason why the problem only affects lowercase column names is because
> Oracle generally requires names in all upper case. If a name is specified
> with quotes around it, then it can be allowed to contain lowercase
> characters.
>
> I generally see two ways I can fix this:
>
> 1) Change the way the DBIdentifier's are initialized to surround the
> identifier with a delimiter that includes the escape \.
>
> 2) Change the serialization stack (i.e.
> AnnotationPersistenceMetaDataSerializer.serialize and
> AnnotationEntry.toString) to run some character escape utility (like
> StringEscapeUtils.escapeJava) at String construction time.
>
> Which approach here is best? Or is there a better way I haven't considered?
>
> Thanks,
> Aron
>



-- 
*Rick Curtis*

Reply via email to