Use Transformer attribute fields in JPQL query

View: New views
2 Messages — Rating Filter:   Alert me  

Parent Message unknown Use Transformer attribute fields in JPQL query

by jandam :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Please can you help me.

I have "Param" object with read+write transformer. And I want to map "Columns" to "attributes" because I want to sort/select "Items" according to Column "FREQ", "TYPE", ...

JPQL query: "select o from Items as o order by o.param.freq"

...
class Items {
...
    @ReadTransformer(transformerClass = Param.class)
    @WriteTransformers({
            @WriteTransformer(transformerClass = ParamType.class, column = @Column(name = "TYPE")),
            @WriteTransformer(transformerClass = ParamDouble.class, column = @Column(name = "FREQ", precision = 8, scale = 0)),
            @WriteTransformer(transformerClass = ParamDouble.class, column = @Column(name = "FREQ_LO_LIMIT", precision = 8, scale = 0)),
            @WriteTransformer(transformerClass = ParamDouble.class, column = @Column(name = "FREQ_HI_LIMIT", precision = 8, scale = 0))
    })
    private Param param;

...
}

  Thank you very much.
      Martin
_______________________________________________
eclipselink-users mailing list
eclipselink-users@...
https://dev.eclipse.org/mailman/listinfo/eclipselink-users

Re: Use Transformer attribute fields in JPQL query

by James Sutherland :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

See,
http://www.eclipse.org/forums/index.php?t=msg&th=153787&start=0&S=447935042985eaada8fa991e8e95ca66

jandam wrote:
Please can you help me.

I have "Param" object with read+write transformer. And I want to map "Columns" to "attributes" because I want to sort/select "Items" according to Column "FREQ", "TYPE", ...

JPQL query: "select o from Items as o order by o.param.freq"

...
class Items {
...
    @ReadTransformer(transformerClass = Param.class)
    @WriteTransformers({
            @WriteTransformer(transformerClass = ParamType.class, column = @Column(name = "TYPE")),
            @WriteTransformer(transformerClass = ParamDouble.class, column = @Column(name = "FREQ", precision = 8, scale = 0)),
            @WriteTransformer(transformerClass = ParamDouble.class, column = @Column(name = "FREQ_LO_LIMIT", precision = 8, scale = 0)),
            @WriteTransformer(transformerClass = ParamDouble.class, column = @Column(name = "FREQ_HI_LIMIT", precision = 8, scale = 0))
    })
    private Param param;

...
}

  Thank you very much.
      Martin