Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Join us in Bucharest on Sept 18th for Qlik's AI Reality Tour! Register Now
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Setting WSDL URL dynamically in CXF in Talend ESB open source edition

Hi,
I am trying to use context to set the WSDL URL in CXF component in Mediation route in open source edition When the route is deployed , the WSDL URLS are resolved on deployment . I am trying to use config to load on startup the WSDL URLS from external file.How can I ensure that WSDL URLS are not resolved post deployment on load of the routes using Talend Open source edition?
Thanks
Labels (2)
3 Replies
Anonymous
Not applicable
Author

Hi,
I am trying to use config to load on startup the WSDL URLS from external file.How can I ensure that WSDL URLS are not resolved post deployment on load of the routes using Talend Open source edition?

You don't want to access the WSDL URLS from external file(WSDL URLS are not resolved post deployment on load of the routes? return a error?) Is there any more description about your scenario? What's the final expected result do you want?
Best regards
Sabrina
Anonymous
Not applicable
Author

we are using context variables for "Address" and "WSDL" Fields in cxf component settings (Address,WSDL File ) .As we are using open source
we are unable to use the different context groups -Default , dev , QA , Prod . So we employed the property files
and use "cconfig" comppnent to read the property file and then set the context variable to set the information dynamically . However it doesn't happen that way .
The "default" group values in the context are always taken during deployment as the WSDL file resolution happens before "cconfig" component is called by Talend. How do i
handle or configure or ensure that the WSDL file is not resolved prior to loading of the cconfig component.
PROPERTY FILE
=============
CLAIMS_SERVICE_ENDPOINT=http://abc.ddd.com/businessservices/clservice
0683p000009MBC7.jpg
Anonymous
Not applicable
Author

Hi kranthides,

There are several options I would try:
Camel Simple
In your cCXF configuration, I would try using a little of the Camel Simple expression language to reference a header. So early in your route, you would set the desired address and wsdlurl to headers. You would also put some Camel Simple references to those headers in your cCXF configuration in the Address and WSDL File field. So they would look something like ${header.service_address} and ${header.wsdl_url}.
In order to use the context properties, you could probably create exports of the route with each environment's context. I know that's not very graceful, but it is an option.

If possible, I suggest adding the actual WSDL to the Resources repository in Studio , and using that WSDL in your cCXF configuration. That way you only need to alter the address in your various environments.

http://camel.apache.org/simple.html

I hope that helps
-Ben