Hi I loaded the RandomLoadBalanceTest unit test from camel-core and put a break point at assertMockEndpointsSatisfied();
And then inspected the CameContext and its getRouteDefinitions(). See attached picture from the debugger, shows the object graph and the types it has a runtime. Maybe you need a getLoadBalancer() without a parameter. But try with getLoadBalancer(null) in the class LoadBalancerDefinition as it should have been created. Notice its the load balancer definition with R that can return the specific type. On Sat, Jul 4, 2009 at 11:07 AM, alloyer<allo...@gmail.com> wrote: > > The getLoadBalancerType don't return null but the getAnnotation(). > The getLoadBalancerType return a LoadBalancerDefinition instance, which I > think should be a > RandomLoadBalancerdefinition one. > > The dsl is: from("direct:start").loadBalance().random().to("mock:x", > "mock:y", "mock:z") > > > Claus Ibsen-2 wrote: >> >> On Sat, Jul 4, 2009 at 8:16 AM, alloyer<allo...@gmail.com> wrote: >>> >>> Grabbing name from dataFormat type works fine. >>> But when I use it on loadBalancer type, it throws a null pointer >>> exception. >>> >>> >>> loadBalanceDefinition.getLoadBalancerType().getClass().getAnnotation(XmlRootElement.class) >>> throws the exception. >>> >> >> I think its because you use ref to lookup the definition in the registry. >> Then when Camel builds the runtime route it will lookup the real load >> balancer and use it. >> >> So if getLoadBalancerType returns null then try checking getRef and >> see if you can lookup this bean in the registry >> >> >> >> What does the route DSL looks like? >> >>> >>> JIRA j...@apache.org wrote: >>>> >>>> >>>> [ >>>> https://issues.apache.org/activemq/browse/CAMEL-1392?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=52687#action_52687 >>>> ] >>>> >>>> Jonathan Anstey commented on CAMEL-1392: >>>> ---------------------------------------- >>>> >>>> Also, instead of duplicating the dataformat types (and loadbalancer >>>> types >>>> too), you should be able to grab the short names through the JAXB >>>> metadata. Like so >>>> >>>> {code} >>>> dataFormat.getClass().getAnnotation(XmlRootElement.class).name() >>>> {code} >>>> >>>>> groovy renderer >>>>> --------------- >>>>> >>>>> Key: CAMEL-1392 >>>>> URL: >>>>> https://issues.apache.org/activemq/browse/CAMEL-1392 >>>>> Project: Apache Camel >>>>> Issue Type: Sub-task >>>>> Reporter: James Strachan >>>>> Assignee: Xueqiang Mi >>>>> Attachments: camel-web-20090629.patch, camel-web-20090703.patch >>>>> >>>>> >>>> >>>> >>>> -- >>>> This message is automatically generated by JIRA. >>>> - >>>> You can reply to this email to add a comment to the issue online. >>>> >>>> >>>> >>> >>> -- >>> View this message in context: >>> http://www.nabble.com/-jira--Created%3A-%28CAMEL-1392%29-groovy-renderer-tp22220288p24331647.html >>> Sent from the Camel Development mailing list archive at Nabble.com. >>> >>> >> >> >> >> -- >> Claus Ibsen >> Apache Camel Committer >> >> Open Source Integration: http://fusesource.com >> Blog: http://davsclaus.blogspot.com/ >> Twitter: http://twitter.com/davsclaus >> >> > > -- > View this message in context: > http://www.nabble.com/-jira--Created%3A-%28CAMEL-1392%29-groovy-renderer-tp22220288p24332317.html > Sent from the Camel Development mailing list archive at Nabble.com. > > -- Claus Ibsen Apache Camel Committer Open Source Integration: http://fusesource.com Blog: http://davsclaus.blogspot.com/ Twitter: http://twitter.com/davsclaus