Hi,

I am using spring boot with camel cxf to expose rest/soap web services. However 
since I have many services and some of them are not well defined, I want to 
register each of them one by one, catch if any exception occurs and continue 
with remaining valid services. But when I set 
camel.springboot.auto-startup=false I can not manage to open cxf service again. 
(Please note that timer route can be started by this way). Any solution or 
suggestion ?

Thank you

Here is the code :

@Component
public class TestRoutes {

     @Autowired CamelContext camelContext;
     @Autowired Swagger2Feature swagger2Feature;

     @PostConstruct
     public void init(){
          try {
                camelContext.start();
          } catch (Exception e1) {
                e1.printStackTrace();
          }
          HelloResponse response = new HelloResponse();
          response.setCevap("response");
          List<Object> providers = new ArrayList<>();
          CxfRsComponent cxfComponent = new CxfRsComponent(camelContext);

    CxfRsEndpoint serviceEndpoint = new CxfRsEndpoint("/rest2", cxfComponent);
    serviceEndpoint.addResourceClass(Service1.class);
    serviceEndpoint.setProviders(providers);
    serviceEndpoint.setSynchronous(true);
    serviceEndpoint.setAddress("/rest2");
    serviceEndpoint.getFeatures().add(swagger2Feature);

    RouteBuilder builder = new RouteBuilder(camelContext) {
                @Override
                public void configure() throws Exception {
                     from(serviceEndpoint)
                     .id(Service1.class.getCanonicalName()+"rest")
                     .log("${header.operationName} message here")
                     .setBody(constant(response));

                     from("timer:mytimer?period=5000")
                          .id("timer")
                          .log("hi");

                }
          };
          try {
               
camelContext.startRoute(Service1.class.getCanonicalName()+"rest");
                camelContext.startRoute("timer");
          } catch (Exception e) {
                e.printStackTrace();
          }
     }
}

Startup log:
017-07-18 10:50:49.076  INFO 12052 --- [           main] 
ationConfigEmbeddedWebApplicationContext : Refreshing 
org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@5149d738:
 startup date [Tue Jul 18 10:50:49 EEST 2017]; root of context hierarchy
2017-07-18 10:50:52.413  INFO 12052 --- [           main] 
trationDelegate$BeanPostProcessorChecker : Bean 
'org.apache.camel.spring.boot.CamelAutoConfiguration' of type 
[org.apache.camel.spring.boot.CamelAutoConfiguration$$EnhancerBySpringCGLIB$$5d14135]
 is not eligible for getting processed by all BeanPostProcessors (for example: 
not eligible for auto-proxying)
2017-07-18 10:50:53.063  INFO 12052 --- [           main] 
s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 
8080 (http)
2017-07-18 10:50:53.085  INFO 12052 --- [           main] 
o.apache.catalina.core.StandardService   : Starting service Tomcat
2017-07-18 10:50:53.086  INFO 12052 --- [           main] 
org.apache.catalina.core.StandardEngine  : Starting Servlet Engine: Apache 
Tomcat/8.5.11
2017-07-18 10:50:53.341  INFO 12052 --- [ost-startStop-1] 
o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded 
WebApplicationContext
2017-07-18 10:50:53.342  INFO 12052 --- [ost-startStop-1] 
o.s.web.context.ContextLoader            : Root WebApplicationContext: 
initialization completed in 4269 ms
2017-07-18 10:50:53.974  INFO 12052 --- [ost-startStop-1] 
o.s.b.w.servlet.ServletRegistrationBean  : Mapping servlet: 'dispatcherServlet' 
to [/]
2017-07-18 10:50:53.976  INFO 12052 --- [ost-startStop-1] 
o.s.b.w.servlet.ServletRegistrationBean  : Mapping servlet: 'CXFServlet' to 
[/services/*]
2017-07-18 10:50:53.981  INFO 12052 --- [ost-startStop-1] 
o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 
'characterEncodingFilter' to: [/*]
2017-07-18 10:50:53.982  INFO 12052 --- [ost-startStop-1] 
o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 
'hiddenHttpMethodFilter' to: [/*]
2017-07-18 10:50:53.982  INFO 12052 --- [ost-startStop-1] 
o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 
'httpPutFormContentFilter' to: [/*]
2017-07-18 10:50:53.982  INFO 12052 --- [ost-startStop-1] 
o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 
'requestContextFilter' to: [/*]
2017-07-18 10:50:54.682  INFO 12052 --- [           main] 
o.a.camel.spring.SpringCamelContext      : Apache Camel 2.19.1 (CamelContext: 
camel-1) is starting
2017-07-18 10:50:54.685  INFO 12052 --- [           main] 
o.a.c.m.ManagedManagementStrategy        : JMX is enabled
2017-07-18 10:50:54.999  INFO 12052 --- [           main] 
o.a.c.i.converter.DefaultTypeConverter   : Loaded 214 type converters
2017-07-18 10:50:55.064  INFO 12052 --- [           main] 
o.a.c.i.DefaultRuntimeEndpointRegistry   : Runtime endpoint registry is in 
extended mode gathering usage statistics of all incoming and outgoing endpoints 
(cache limit: 1000)
2017-07-18 10:50:55.094  INFO 12052 --- [           main] 
o.a.camel.spring.SpringCamelContext      : StreamCaching is not in use. If 
using streams then its recommended to enable stream caching. See more details 
at http://camel.apache.org/stream-caching.html
2017-07-18 10:50:55.095  INFO 12052 --- [           main] 
o.a.camel.spring.SpringCamelContext      : Total 0 routes, of which 0 are 
started.
2017-07-18 10:50:55.097  INFO 12052 --- [           main] 
o.a.camel.spring.SpringCamelContext      : Apache Camel 2.19.1 (CamelContext: 
camel-1) started in 0.415 seconds
2017-07-18 10:50:55.301  WARN 12052 --- [           main] 
o.apache.cxf.jaxrs.utils.ResourceUtils   : No resource methods have been found 
for resource class java.lang.Class
2017-07-18 10:50:55.433  INFO 12052 --- [           main] 
org.apache.cxf.endpoint.ServerImpl       : Setting the server's publish address 
to be /rest1
2017-07-18 10:50:55.636  INFO 12052 --- [           main] 
org.reflections.Reflections              : Reflections took 60 ms to scan 1 
urls, producing 21 keys and 25 values
2017-07-18 10:50:56.106  INFO 12052 --- [           main] 
s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: 
org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@5149d738:
 startup date [Tue Jul 18 10:50:49 EEST 2017]; root of context hierarchy
2017-07-18 10:50:56.206  INFO 12052 --- [           main] 
s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error]}" onto public 
org.springframework.http.ResponseEntity<java.util.Map<java.lang.String, 
java.lang.Object>> 
org.springframework.boot.autoconfigure.web.BasicErrorController.error(javax.servlet.http.HttpServletRequest)
2017-07-18 10:50:56.208  INFO 12052 --- [           main] 
s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped 
"{[/error],produces=[text/html]}" onto public 
org.springframework.web.servlet.ModelAndView 
org.springframework.boot.autoconfigure.web.BasicErrorController.errorHtml(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
2017-07-18 10:50:56.267  INFO 12052 --- [           main] 
o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/webjars/**] onto 
handler of type [class 
org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2017-07-18 10:50:56.267  INFO 12052 --- [           main] 
o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**] onto handler 
of type [class 
org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2017-07-18 10:50:56.330  INFO 12052 --- [           main] 
o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**/favicon.ico] 
onto handler of type [class 
org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2017-07-18 10:50:57.591  INFO 12052 --- [           main] 
o.s.j.e.a.AnnotationMBeanExporter        : Registering beans for JMX exposure 
on startup
2017-07-18 10:50:57.686  INFO 12052 --- [           main] 
s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 
(http)
2017-07-18 10:50:57.694  INFO 12052 --- [           main] 
c.e.demo.AutoStartupFalseApplication     : Started AutoStartupFalseApplication 
in 9.057 seconds (JVM running for 9.764)





Bu e-posta'n?n i?erdi?i bilgiler (ekleri dahil olmak ?zere) gizlidir. Onay?m?z 
olmaks?z?n ???nc? ki?ilere a?iklanamaz. Bu mesaj?n g?nderilmek istendi?i ki?i 
de?ilseniz, l?tfen mesaj? sisteminizden derhal siliniz. IBTech A.?. bu mesaj?n 
i?erdi?i bilgilerin do?rulu?u veya eksiksiz oldu?u konusunda bir garanti 
vermemektedir. Bu nedenle bilgilerin ne ?ekilde olursa olsun i?eri?inden, 
iletilmesinden, al?nmas?ndan, saklanmas?ndan sorumlu de?ildir. Bu mesaj?n 
i?eri?i yazar?na ait olup, IBTech A.?.'nin g?r??lerini i?ermeyebilir.

The information contained in this e-mail (including any attachments)is 
confidential. It must not be disclosed to any person without our authority. If 
you are not the intended recipient, please delete it from your system 
immediately. IBTech A.S. makes no warranty as to the accuracy or completeness 
of any information contained in this message and hereby excludes any liability 
of any kind for the information contained therein or for the information 
transmission, reception, storage or use of such in any way whatsoever. Any 
opinions expressed in this message are those of the author and may not 
necessarily reflect the opinions of IBTech A.S.

Reply via email to