BTW
I created a ticket for it
https://issues.apache.org/activemq/browse/CAMEL-1424
On Thu, Mar 5, 2009 at 9:49 AM, Claus Ibsen claus.ib...@gmail.com wrote:
On Thu, Mar 5, 2009 at 9:40 AM, ee7arh andrew.hu...@2e-systems.com wrote:
Thanks for the feedback,
It looks like we are talking about the same use case. In my example, all my
methods had the same name, but each method had a different parameter
(Object1, 2 and 3). Each of these parameter types inheritted from Objectn.
So each method did have a different concrete sub-type although all are
instances of Objectn. In your example, your 3rd method has a different
name... was that a typo?
Yeah probably.
I could certainly use different method names, it would just mean I have to
have some more logic in my RouteBuilder. At the moment, I just send objects
off the queue to the same bean method and ask it to take care of selecting
the correct one by overloading.
You can send it to an indirect method that will check the type and
invoke the correct method of the 3.
Then you route can stay simple.
Thanks and Regards
Andrew
ee7arh wrote:
Hi,
I have a bean defined which has 3 methods all with same name but with
different arguements. I would like to route messages from a queue to this
bean and depending on the object type I was hoping that the correct method
would get called by overloading.
Instead i get the error:
org.apache.camel.NoTypeConversionAvailableException: No type converter
available to convert from type:.
I noticed that the first method defined in my bean caused this error so it
looks like Camel takes the 1st method and tries (and fails) to convert the
message.
here is my bean definition:
@Service(value = serviceEventGenerator)
public class ServiceEventGenerator {
public ArrayListServiceEvent generateServiceEvents(Object1 event) {}
public ArrayListServiceEvent generateServiceEvents(Object2 event) {}
public ArrayListServiceEvent generateServiceEvents(Object3 event) {}
}
(Incidentally in my example, Object 1,2 and 3 all extend from a parent
class Objectn.)
And my route:
from(jms:queue:unmarshalledEventsQueue)
.to(log:unmarshalledEventLogger?level=INFO)
.to(bean:serviceEventGenerator?methodName=generateServiceEvents)
Thanks in advance for any help
Andrew
--
View this message in context:
http://www.nabble.com/Is-it-possible-to-overload-a-bean-method--tp22338316p22347357.html
Sent from the Camel - Users mailing list archive at Nabble.com.
--
Claus Ibsen
Apache Camel Committer
Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/
--
Claus Ibsen
Apache Camel Committer
Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/