Thanks Freeman. I am trying to follow the below route
cxfBC consumer with wsdl->servicemix-bean (pojo)
I am not made cxfbc worked yet. having classnotfoundexception as below
java.lang.ClassNotFoundException: org.apache.servicemix.cxfbc.CxfBcConsumer
in classloader
org.apache.xbean.spring.context.filesystemxmlapplicationcont...@a79f01
I could deploy wsdl-first example which means I have something wrong in my
pom or xbean. 

I have some questions related to the design of servicemix bean calling camel
router. Just as a note servicemix bean  class supposed to do some validation
task on the incoming messages and then call a camel router deployed in
another service assembly. Camelrouter does dynamic routing to the target
services using recipient list pattern


1)I have to call my camel router from servicemix bean. I could pass  traget
servicename and target endpointname from xbean.xml file then inside the
class file I could use servicemixclient  to call the targetservice.I have
done this way before for other part of my project but I do not like using
servicemixclient from the java class.

Is there a better way to call camel router from servicemix bean without
using servicemixclient inside the bean?

Would eip pipeline a better way to do this? If I use eip  do I need to refer
my bean class as a transformer? 

My taregt here the camel router deployed inside another SA. I would not
prefer eip pipeline to call camel router.
Is there a better solution to this design?





Freeman Fang wrote:
> 
> Hi,
> Yeah, some thing like
> servicemix-http or servicemix-cxf-bc(with wsdl)->servicemix-bean(pojo).
> You can take a look at [1] how pojo in servicemix-bean works.
> 
> [1]http://servicemix.apache.org/servicemix-bean.html
> 
> Freeman
> On 2010-5-13, at 上午5:04, gnanda wrote:
> 
>>
>> Thanks Freeman for the reply. Are you suggesting something like below
>> servicemix http (with wsdl ) -> servicemix-bean(pojo)
>> The pojo does not need to have have all these operations defined in  
>> WSDL?
>> Do you have any document available that I can refer to or any similar
>> example that I an follow?
>>
>> I am  following the above design to see if that works.
>> Please let me know if my inderstanding is incorrect
>>
>>
>> Freeman Fang wrote:
>>>
>>> Hi,
>>>
>>> Ok, I understand your requirement more clearly now.
>>> In your case you can't use cxf se endpoint, as cxf se endpoint bind  
>>> to
>>> wsdl model strictly, which means it will parse the incoming message,
>>> and from the message payload and wsdl model it will determine the
>>> operationName, so you must have extact same interface used for cxf se
>>> pojo and frontend cxfbc(or http) consumer wsdl.
>>>
>>> But I think you can use a pojo in servicemix-bean, which can process
>>> all incoming messages and don't do the operation match from payload,
>>> in that bean you can do what ever you want and then dispatch to next
>>> stop(camel router in your case).
>>>
>>> Hope this helps.
>>>
>>> Freeman
>>> On 2010-5-11, at 下午10:29, gnanda wrote:
>>>
>>>>
>>>> Hi Freeman, thanks for the reply. In my scenario, it is actually
>>>> other way
>>>> around.
>>>>
>>>> In wsdl I need to have add,delete,update operations but in POJO, I
>>>> need to
>>>> have only one operation
>>>>
>>>> To give you little background,  here is my route architecture
>>>> http endpoint ->pojo service->camel router- queue->camel router-
>>>>> external
>>>> webservice
>>>>
>>>> My external webservice which is in .NET has WSDL. I need to clone
>>>> that and
>>>> publish it on my front http endpoint. This WSDL has 5/6 operations.
>>>> In a
>>>> ususal scenario I have to create 5/6 operations (kind of donothing
>>>> operaions) to satisfy WSDL publishing. Is there a way I could just
>>>> have one
>>>> method  in my pojo attached to all these operations in WSDLs.
>>>>
>>>> In real scenario I do have more than 5 WSDLS with each with 5/6
>>>> operations.
>>>> For each WSDL I have a http endpoint but I do not want the
>>>> corresponding
>>>> POJO service to have all these  operations defined. These operations
>>>> are
>>>> actually being perform by external web services.
>>>>
>>>>
>>>> Could I use cxf proxy? I do have camel router in my route which has
>>>> to be
>>>> there in between cxf proxy  and external web service, not sure if it
>>>> is
>>>> possible doing that
>>>>
>>>>
>>>>
>>>> Freeman Fang wrote:
>>>>>
>>>>> Hi,
>>>>>
>>>>> Use cxf bc endpoint, you must specify a wsdl for it, which clearly
>>>>> define the interface.
>>>>>
>>>>> For your case, I think you can use a wsdl with one operation
>>>>> provideRequest, and then in your cxf-se endpoint(or POJO) you can  
>>>>> do
>>>>> anything you want(add, delete, update) for the incoming message.
>>>>>
>>>>> Freeman
>>>>> On 2010-5-11, at 上午12:00, gnanda wrote:
>>>>>
>>>>>>
>>>>>> Anyone please let me know if have any suggestion how to publish a
>>>>>> wsdl from a
>>>>>> http (or cxf bc?) endpoint where the associated cxf-se would just
>>>>>> have a
>>>>>> generic method accpeting messages for any operation defined in the
>>>>>> wsdl
>>>>>>
>>>>>> For example: My wsdl has operations as addRequest(String xml),
>>>>>> deleteRequest(String xml), updateRequest(String xml). This wsdl  
>>>>>> will
>>>>>> be
>>>>>> published on the http (cxf-bc?) endpoint
>>>>>>
>>>>>> But the service(cxf-se? or POJO class?) associated with my http  
>>>>>> (or
>>>>>> cxf-bc)
>>>>>> will have only one method provideRequest(String xml) accepting
>>>>>> message for
>>>>>> addRequest(),deleteRequest() and updateRequest()
>>>>>>
>>>>>> How would I proceed doing this?
>>>>>>
>>>>>>
>>>>>> gnanda wrote:
>>>>>>>
>>>>>>> Hi All, I have an interesting design issue related to my http
>>>>>>> component
>>>>>>> and wsdl publishing
>>>>>>> currently I have below scenario
>>>>>>>
>>>>>>> smx:http consumer(no wsdl, accep any well formed soap message) ->
>>>>>>> camel
>>>>>>> router-> external web service
>>>>>>>
>>>>>>> I need to publish wsdl with my http component but would need to
>>>>>>> accept any
>>>>>>> well formed soap message then route to a pojo class to do few
>>>>>>> validation
>>>>>>> on my own then route to a camel router then to external web  
>>>>>>> service
>>>>>>>
>>>>>>> here is the new flow
>>>>>>> smx:http consumer(could be cxf bc? , publishing wsdl) -> pojo  
>>>>>>> class
>>>>>>> with
>>>>>>> doListen()->camel router->external web service
>>>>>>> Important  point to be noted here are
>>>>>>> **  the pojo class will not have any operation defined for the
>>>>>>> operations
>>>>>>> declared in the wsdl
>>>>>>> ** doListen() method in the pojo class will receive any incoming
>>>>>>> soap
>>>>>>> message for all operations declared in the wsdl and do a few
>>>>>>> validation
>>>>>>> and send to camel router.
>>>>>>>
>>>>>>> How would I proceed doing this? Any suggestion will be very  
>>>>>>> helpful
>>>>>>>
>>>>>>
>>>>>> -- 
>>>>>> View this message in context:
>>>>>> http://old.nabble.com/publishing-wsdl-with-no-autovalidation-and-with-no-webservice-associated-with-it-tp28489180p28512285.html
>>>>>> Sent from the ServiceMix - User mailing list archive at  
>>>>>> Nabble.com.
>>>>>>
>>>>>
>>>>>
>>>>> -- 
>>>>> Freeman Fang
>>>>> ------------------------
>>>>> Open Source SOA: http://fusesource.com
>>>>>
>>>>>
>>>>>
>>>>
>>>> -- 
>>>> View this message in context:
>>>> http://old.nabble.com/publishing-wsdl-with-no-autovalidation-and-with-no-webservice-associated-with-it-tp28489180p28524890.html
>>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>>>
>>>
>>>
>>> -- 
>>> Freeman Fang
>>> ------------------------
>>> Open Source SOA: http://fusesource.com
>>>
>>>
>>>
>>
>> -- 
>> View this message in context:
>> http://old.nabble.com/publishing-wsdl-with-no-autovalidation-and-with-no-webservice-associated-with-it-tp28489180p28541101.html
>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>
> 
> 
> -- 
> Freeman Fang
> ------------------------
> Open Source SOA: http://fusesource.com
> 
> 
> 

-- 
View this message in context: 
http://old.nabble.com/publishing-wsdl-with-no-autovalidation-and-with-no-webservice-associated-with-it-tp28489180p28551740.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to