как получить набор результатов из компонента jpa верблюда?

при запросе компонента camle jpa, например

<from uri="jpa:jpa.camel?consumer.query=select x from jpa.camel x"/>

<to uri="bean:SomeBean?method=query" />

как получить список записей из обмена верблюдами в бине? Я пробовал использовать объекты List, Resultset. Но я получаю исключение ClassCastException.


person sanre6    schedule 28.12.2010    source источник


Ответы (1)


Вы получаете одну сущность за раз. Таким образом, если запрос возвращает 5 строк, то 5 обменов создаются и публикуются потребителем jpa. Таким образом, компонент будет вызываться 5 раз, по одному для каждого обмена.

person Claus Ibsen    schedule 28.12.2010
comment
В любом случае, могу ли я динамически изменить Consumer.query, я имею в виду ‹from uri=jpa:jpa.camel?consumer.query=Some-query/> Я хочу изменить часть Some-query во время выполнения. для этого мне нужно использовать маршруты Java DSL также вместе с spring xml? могу ли я использовать их обоих? - person sanre6; 29.12.2010
comment
Нет, from XXX является статическим после его создания и запуска. - person Claus Ibsen; 29.12.2010
comment
Вам нужно будет создать новый маршрут, если вы хотите изменить SELECT для потребителя JPA. CamelContext имеет API для остановки и добавления новых маршрутов. Прочтите также главу 13 в книге «Верблюд в действии». - person Claus Ibsen; 29.12.2010