You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@camel.apache.org by Charles Moulliard <cm...@gmail.com> on 2009/12/16 14:14:38 UTC
Problem with injection of endpoint (cxf - producer - camel 2.2 -
osgi)
The code hereafter generates an error which was not there before :
@EndpointInject(name = "jms:queue:inout")
ProducerTemplate producer;
public ReportIncidentService() {
init();
}
@GET
public Incidents getIncidents() {
Incidents l = new Incidents();
// Call the distant service to get result (SYNCHR WAY)
List<Incident> i = (List<Incident>)
producer.requestBody("GET_INCIDENTS");
l.setIncidents(i);
return l;
}
Caused by: org.apache.cxf.interceptor.Fault: defaultEndpoint must be
specified
at
org.apache.cxf.service.invoker.AbstractInvoker.createFault(AbstractInvoker.java:155)
at
org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:121)
at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:130)
at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:82)
at
org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at
org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
at
org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:106)
at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
... 37 more
If I use the following method, everything works fine
List<Incident> i = (List<Incident>) producer.requestBody(
"jms:queue:inout","GET_INCIDENTS");
Regards,
Charles Moulliard
Senior Enterprise Architect
Apache Camel Committer
*****************************
blog : http://cmoulliard.blogspot.com
twitter : http://twitter.com/cmoulliard
Linkedlin : http://www.linkedin.com/in/charlesmoulliard
Apache Camel Group :
http://www.linkedin.com/groups?home=&gid=2447439&trk=anet_ug_hm
Re: Problem with injection of endpoint (cxf - producer - camel 2.2 -
osgi)
Posted by Claus Ibsen <cl...@gmail.com>.
On Wed, Dec 16, 2009 at 2:25 PM, Charles Moulliard <cm...@gmail.com> wrote:
> This is much better now.
>
BTW I am fixing it in Camel 2.2 so it will throw an exception when you
enter an invalid value in the attributes.
https://issues.apache.org/activemq/browse/CAMEL-2299
> Thx.
>
> Charles Moulliard
> Senior Enterprise Architect
> Apache Camel Committer
>
> *****************************
> blog : http://cmoulliard.blogspot.com
> twitter : http://twitter.com/cmoulliard
> Linkedlin : http://www.linkedin.com/in/charlesmoulliard
>
> Apache Camel Group :
> http://www.linkedin.com/groups?home=&gid=2447439&trk=anet_ug_hm
>
>
> On Wed, Dec 16, 2009 at 2:18 PM, Claus Ibsen <cl...@gmail.com> wrote:
>
>> On Wed, Dec 16, 2009 at 2:14 PM, Charles Moulliard <cm...@gmail.com>
>> wrote:
>> > The code hereafter generates an error which was not there before :
>> >
>> > @EndpointInject(name = "jms:queue:inout")
>> > ProducerTemplate producer;
>>
>> Use (uri = "jms:queue:inout") as it appears as a uri and not a
>> reference to an endpoint.
>>
>> We should probably add some validation (if possible) that the default
>> endpoint could not be resolved.
>>
>>
>>
>> >
>> > public ReportIncidentService() {
>> > init();
>> > }
>> >
>> > @GET
>> > public Incidents getIncidents() {
>> >
>> > Incidents l = new Incidents();
>> >
>> > // Call the distant service to get result (SYNCHR WAY)
>> >
>> > List<Incident> i = (List<Incident>)
>> > producer.requestBody("GET_INCIDENTS");
>> > l.setIncidents(i);
>> >
>> > return l;
>> > }
>> >
>> > Caused by: org.apache.cxf.interceptor.Fault: defaultEndpoint must be
>> > specified
>> > at
>> >
>> org.apache.cxf.service.invoker.AbstractInvoker.createFault(AbstractInvoker.java:155)
>> > at
>> >
>> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:121)
>> > at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:130)
>> > at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:82)
>> > at
>> >
>> org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58)
>> > at
>> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
>> > at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>> > at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>> > at
>> >
>> org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
>> > at
>> >
>> org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:106)
>> > at
>> >
>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
>> > ... 37 more
>> >
>> >
>> > If I use the following method, everything works fine
>> >
>> > List<Incident> i = (List<Incident>) producer.requestBody(
>> > "jms:queue:inout","GET_INCIDENTS");
>> >
>> > Regards,
>> >
>> > Charles Moulliard
>> > Senior Enterprise Architect
>> > Apache Camel Committer
>> >
>> > *****************************
>> > blog : http://cmoulliard.blogspot.com
>> > twitter : http://twitter.com/cmoulliard
>> > Linkedlin : http://www.linkedin.com/in/charlesmoulliard
>> >
>> > Apache Camel Group :
>> > http://www.linkedin.com/groups?home=&gid=2447439&trk=anet_ug_hm
>> >
>>
>>
>>
>> --
>> Claus Ibsen
>> Apache Camel Committer
>>
>> Author of Camel in Action: http://www.manning.com/ibsen/
>> Open Source Integration: http://fusesource.com
>> Blog: http://davsclaus.blogspot.com/
>> Twitter: http://twitter.com/davsclaus
>>
>
--
Claus Ibsen
Apache Camel Committer
Author of Camel in Action: http://www.manning.com/ibsen/
Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/
Twitter: http://twitter.com/davsclaus
Re: Problem with injection of endpoint (cxf - producer - camel 2.2 -
osgi)
Posted by Charles Moulliard <cm...@gmail.com>.
This is much better now.
Thx.
Charles Moulliard
Senior Enterprise Architect
Apache Camel Committer
*****************************
blog : http://cmoulliard.blogspot.com
twitter : http://twitter.com/cmoulliard
Linkedlin : http://www.linkedin.com/in/charlesmoulliard
Apache Camel Group :
http://www.linkedin.com/groups?home=&gid=2447439&trk=anet_ug_hm
On Wed, Dec 16, 2009 at 2:18 PM, Claus Ibsen <cl...@gmail.com> wrote:
> On Wed, Dec 16, 2009 at 2:14 PM, Charles Moulliard <cm...@gmail.com>
> wrote:
> > The code hereafter generates an error which was not there before :
> >
> > @EndpointInject(name = "jms:queue:inout")
> > ProducerTemplate producer;
>
> Use (uri = "jms:queue:inout") as it appears as a uri and not a
> reference to an endpoint.
>
> We should probably add some validation (if possible) that the default
> endpoint could not be resolved.
>
>
>
> >
> > public ReportIncidentService() {
> > init();
> > }
> >
> > @GET
> > public Incidents getIncidents() {
> >
> > Incidents l = new Incidents();
> >
> > // Call the distant service to get result (SYNCHR WAY)
> >
> > List<Incident> i = (List<Incident>)
> > producer.requestBody("GET_INCIDENTS");
> > l.setIncidents(i);
> >
> > return l;
> > }
> >
> > Caused by: org.apache.cxf.interceptor.Fault: defaultEndpoint must be
> > specified
> > at
> >
> org.apache.cxf.service.invoker.AbstractInvoker.createFault(AbstractInvoker.java:155)
> > at
> >
> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:121)
> > at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:130)
> > at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:82)
> > at
> >
> org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58)
> > at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> > at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> > at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> > at
> >
> org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
> > at
> >
> org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:106)
> > at
> >
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
> > ... 37 more
> >
> >
> > If I use the following method, everything works fine
> >
> > List<Incident> i = (List<Incident>) producer.requestBody(
> > "jms:queue:inout","GET_INCIDENTS");
> >
> > Regards,
> >
> > Charles Moulliard
> > Senior Enterprise Architect
> > Apache Camel Committer
> >
> > *****************************
> > blog : http://cmoulliard.blogspot.com
> > twitter : http://twitter.com/cmoulliard
> > Linkedlin : http://www.linkedin.com/in/charlesmoulliard
> >
> > Apache Camel Group :
> > http://www.linkedin.com/groups?home=&gid=2447439&trk=anet_ug_hm
> >
>
>
>
> --
> Claus Ibsen
> Apache Camel Committer
>
> Author of Camel in Action: http://www.manning.com/ibsen/
> Open Source Integration: http://fusesource.com
> Blog: http://davsclaus.blogspot.com/
> Twitter: http://twitter.com/davsclaus
>
Re: Problem with injection of endpoint (cxf - producer - camel 2.2 -
osgi)
Posted by Claus Ibsen <cl...@gmail.com>.
On Wed, Dec 16, 2009 at 2:14 PM, Charles Moulliard <cm...@gmail.com> wrote:
> The code hereafter generates an error which was not there before :
>
> @EndpointInject(name = "jms:queue:inout")
> ProducerTemplate producer;
Use (uri = "jms:queue:inout") as it appears as a uri and not a
reference to an endpoint.
We should probably add some validation (if possible) that the default
endpoint could not be resolved.
>
> public ReportIncidentService() {
> init();
> }
>
> @GET
> public Incidents getIncidents() {
>
> Incidents l = new Incidents();
>
> // Call the distant service to get result (SYNCHR WAY)
>
> List<Incident> i = (List<Incident>)
> producer.requestBody("GET_INCIDENTS");
> l.setIncidents(i);
>
> return l;
> }
>
> Caused by: org.apache.cxf.interceptor.Fault: defaultEndpoint must be
> specified
> at
> org.apache.cxf.service.invoker.AbstractInvoker.createFault(AbstractInvoker.java:155)
> at
> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:121)
> at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:130)
> at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:82)
> at
> org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> at
> org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
> at
> org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:106)
> at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
> ... 37 more
>
>
> If I use the following method, everything works fine
>
> List<Incident> i = (List<Incident>) producer.requestBody(
> "jms:queue:inout","GET_INCIDENTS");
>
> Regards,
>
> Charles Moulliard
> Senior Enterprise Architect
> Apache Camel Committer
>
> *****************************
> blog : http://cmoulliard.blogspot.com
> twitter : http://twitter.com/cmoulliard
> Linkedlin : http://www.linkedin.com/in/charlesmoulliard
>
> Apache Camel Group :
> http://www.linkedin.com/groups?home=&gid=2447439&trk=anet_ug_hm
>
--
Claus Ibsen
Apache Camel Committer
Author of Camel in Action: http://www.manning.com/ibsen/
Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/
Twitter: http://twitter.com/davsclaus