This did the trick. Many thanks, Alex :) Sent by my mobile device - Gerald Kallas
> Am 18.08.2020 um 18:48 schrieb Alex Soto <alex.s...@envieta.com>: > > I think you are missing: > > > <endpointProperty key="servletName" value="APIISP001”/> > > > In the <restConfiguration> > > Best regards, > Alex soto > > > > >> On Aug 18, 2020, at 3:32 AM, Gerald Kallas <catsh...@mailbox.org> wrote: >> >> Thanks for the hint. But it doesn't work either. I modified my Blueprint as >> following >> >> <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" >> >> xmlns:ext="http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.0.0" >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >> xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0 >> https://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd"> >> >> <camelContext id="isp.api.APIISP001" >> xmlns="http://camel.apache.org/schema/blueprint" streamCache="true" >> useBreadcrumb="true"> >> >> >> <!--********************************************************************************--> >> <!-- REST API >> --> >> >> <!--********************************************************************************--> >> >> <restConfiguration component="servlet" contextPath="/apiisp001" >> bindingMode="json" scheme="https" port="8443"> >> <dataFormatProperty key="prettyPrint" value="true" /> >> <apiProperty key="base.path" value="/apiisp001" /> >> <apiProperty key="api.description" value="APIISP001 - Test API" /> >> <apiProperty key="api.title" value="APIISP001" /> >> <apiProperty key="api.version" value="1.0.0" /> >> </restConfiguration> >> >> <!-- REST endpoints --> >> <rest path="/base"> >> <get uri="/1" id="isp.api.APIISP001.get.1"> >> <route> >> <!-- send the chunk to direct --> >> <to uri="direct-vm:APIISP001.1"/> >> </route> >> </get> >> </rest> >> >> </camelContext> >> >> </blueprint> >> >> The (untertow) web server runs with HTTPS on port 8443, other servlets are >> working. I tried >> >> https://localhost:8443/apiisp001/base/1 >> >> where I'd expect the response but did get a HTTP 404 error. >> >> Any hints are appreciated. >> >> See also the log for deployment >> >> 2020-08-18T07:31:28,421 | INFO | fileinstall-/opt/apache-karaf-4.2.9/deploy >> | BlueprintContainerImpl | 105 - org.apache.aries.blueprint.core - >> 1.10.2 | Blueprint bundle isp.api.APIISP001.xml/0.0.0 has been started >> 2020-08-18T07:31:28,432 | INFO | Blueprint Event Dispatcher: 1 | >> BlueprintCamelContext | 169 - >> org.apache.camel.karaf.camel-blueprint - 3.4.2 | Attempting to start >> CamelContext: isp.api.APIISP001 >> 2020-08-18T07:31:28,437 | INFO | Blueprint Event Dispatcher: 1 | >> JmxManagementStrategy | 144 - org.apache.camel.camel-management - >> 3.4.2 | JMX is enabled >> 2020-08-18T07:31:28,484 | INFO | Blueprint Event Dispatcher: 1 | >> AbstractCamelContext | 115 - org.apache.camel.camel-base - 3.4.2 >> | Apache Camel 3.4.2 (isp.api.APIISP001) is starting >> 2020-08-18T07:31:28,484 | INFO | Blueprint Event Dispatcher: 1 | >> AbstractCamelContext | 115 - org.apache.camel.camel-base - 3.4.2 >> | StreamCaching is enabled on CamelContext: isp.api.APIISP001 >> 2020-08-18T07:31:28,546 | INFO | Blueprint Event Dispatcher: 1 | >> AbstractCamelContext | 115 - org.apache.camel.camel-base - 3.4.2 >> | Using HealthCheck: camel-health >> 2020-08-18T07:31:28,592 | INFO | Blueprint Event Dispatcher: 1 | >> DefaultStreamCachingStrategy | 115 - org.apache.camel.camel-base - 3.4.2 >> | StreamCaching in use with spool directory: >> /opt/apache-karaf/data/tmp/camel/camel-tmp-ID-43c92ad4274c-1597499175862-121-1 >> and rules: [Spool > 128K body size] >> 2020-08-18T07:31:28,593 | INFO | Blueprint Event Dispatcher: 1 | >> JacksonDataFormat | 137 - org.apache.camel.camel-jackson - >> 3.4.2 | The option autoDiscoverObjectMapper is set to false, Camel won't >> search in the registry >> 2020-08-18T07:31:28,594 | INFO | Blueprint Event Dispatcher: 1 | >> JacksonDataFormat | 137 - org.apache.camel.camel-jackson - >> 3.4.2 | The option autoDiscoverObjectMapper is set to false, Camel won't >> search in the registry >> 2020-08-18T07:31:28,625 | INFO | Blueprint Event Dispatcher: 1 | >> InternalRouteStartupManager | 115 - org.apache.camel.camel-base - 3.4.2 >> | Route: isp.api.APIISP001.get.1 started and consuming from: >> servlet:/apiisp001/1 >> 2020-08-18T07:31:28,626 | INFO | Blueprint Event Dispatcher: 1 | >> AbstractCamelContext | 115 - org.apache.camel.camel-base - 3.4.2 >> | Total 1 routes, of which 1 are started >> 2020-08-18T07:31:28,626 | INFO | Blueprint Event Dispatcher: 1 | >> AbstractCamelContext | 115 - org.apache.camel.camel-base - 3.4.2 >> | Apache Camel 3.4.2 (isp.api.APIISP001) started in 0.142 seconds >> 2020-08-18T07:31:28,643 | INFO | fileinstall-/opt/apache-karaf-4.2.9/deploy >> | fileinstall | 10 - org.apache.felix.fileinstall - >> 3.6.6 | Started bundle: >> blueprint:file:/opt/apache-karaf-4.2.9/deploy/isp.api.APIISP001.xml >> >> Best >> Gerald >> >>> Daniel Langevin <daniel.lange...@shq.gouv.qc.ca> hat am 17.08.2020 17:44 >>> geschrieben: >>> >>> >>> Hi, >>> >>> you have to specify the default http port number : 8181 for CamelServlet >>> >>> like this: >>> >>> http://servername.org:8181/apiisp001/1 >>> >>> >>> >>> >>> Daniel Langevin >>> Direction de l’assistance et des technologies >>> Direction des ressources informationnelles >>> >>> Société d’habitation du Québec >>> Édifice Marie-Guyart >>> 1054, rue Louis-Alexandre-Taschereau >>> Aile Jacques-Parizeau, 1er étage >>> Québec (Québec) G1R 5E7 >>> Téléphone : 418 643-4035, poste 1191 >>> Sans frais : 1 800 463-4315 >>> >>> >>> >>> >>> >>>>>> >>> De : Gerald Kallas <catsh...@mailbox.org> >>> À : "users@camel.apache.org" <users@camel.apache.org> >>> Date : 2020-08-17 11:22 >>> Objet : Camel REST DSL with servlet - API URL? >>> >>> Dear all, >>> >>> I'm going to configure a REST API similar to a (working) HTTP consumer. I >>> tried several URLs to call the API operation but get always a HTTP 404. >>> >>> Do I miss someting (e.g. the reference to the servletName)? Can someone >>> point me out which is the API URL for the get operation in my case? >>> >>> Thanks in advance >>> Gerald >>> >>> >>> My Blueprint DSL see below .. >>> >>> <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" >>> >>> xmlns:ext="http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.0.0" >>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >>> xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0 >>> https://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd"> >>> >>> <reference id="httpService" >>> interface="org.osgi.service.http.HttpService" /> >>> >>> <bean id="camelServlet" >>> class="org.apache.camel.component.servlet.CamelHttpTransportServlet"/> >>> >>> <bean class="org.apache.camel.component.osgi.OsgiServletRegisterer" >>> init-method="register" >>> destroy-method="unregister"> >>> <property name="servletName" value="APIISP001" /> >>> <property name="alias" value="/apiisp001" /> >>> <property name="httpService" ref="httpService" /> >>> <property name="servlet" ref="camelServlet" /> >>> </bean> >>> >>> <bean id="servlet" >>> class="org.apache.camel.component.servlet.ServletComponent" /> >>> >>> <camelContext id="isp.api.APIISP001" >>> xmlns="http://camel.apache.org/schema/blueprint" streamCache="true" >>> useBreadcrumb="true"> >>> >>> >>> <!--********************************************************************************--> >>> <!-- REST API >>> --> >>> >>> <!--********************************************************************************--> >>> >>> <restConfiguration component="servlet" contextPath="/apiisp001" >>> bindingMode="json"> >>> <dataFormatProperty key="prettyPrint" value="true" /> >>> <apiProperty key="base.path" value="/apiisp001" /> >>> <apiProperty key="api.description" value="APIISP001 - Test API" >>> /> >>> <apiProperty key="api.title" value="APIISP001" /> >>> <apiProperty key="api.version" value="1.0.0" /> >>> </restConfiguration> >>> >>> <!-- REST endpoints --> >>> <rest path="/apiisp001"> >>> <get uri="/1" id="isp.api.APIISP001.get.1"> >>> <route> >>> <!-- send the chunk to direct --> >>> <to uri="direct-vm:APIISP001.1"/> >>> </route> >>> </get> >>> </rest> >>> >>> </camelContext> >>> >>> </blueprint> >>> >>> One example for a working HTTP consumer find below >>> >>> <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" >>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >>> xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0 >>> https://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd"> >>> >>> <reference id="httpService" >>> interface="org.osgi.service.http.HttpService" /> >>> >>> <bean id="camelServlet" >>> class="org.apache.camel.component.servlet.CamelHttpTransportServlet"/> >>> >>> <bean class="org.apache.camel.component.osgi.OsgiServletRegisterer" >>> init-method="register" >>> destroy-method="unregister"> >>> <property name="servletName" value="WEB2SFO" /> >>> <property name="alias" value="/web2sfo" /> >>> <property name="httpService" ref="httpService" /> >>> <property name="servlet" ref="camelServlet" /> >>> </bean> >>> >>> <bean id="servlet" >>> class="org.apache.camel.component.servlet.ServletComponent" /> >>> >>> <camelContext xmlns="http://camel.apache.org/schema/blueprint"> >>> <route> >>> <from uri="servlet://get?servletName=WEB2SFO" /> >>> <setBody> >>> <constant>execution of /web2sfo/get</constant> >>> </setBody> >>> </route> >>> </camelContext> >>> >>> </blueprint> >>> >>> Here I could later on add a security definition that works well. >