diff --git a/components/camel-spring-parent/camel-spring/src/main/docs/spring-summary.adoc b/components/camel-spring-parent/camel-spring/src/main/docs/spring-summary.adoc index aa7c86f90664e..9b4a9d251b0ff 100644 --- a/components/camel-spring-parent/camel-spring/src/main/docs/spring-summary.adoc +++ b/components/camel-spring-parent/camel-spring/src/main/docs/spring-summary.adoc @@ -398,9 +398,6 @@ the above example), then you can refer to the component using SpringCamelContext lazily fetching components from the spring context for the scheme name you use for Endpoint URIs. -For more details, see xref:manual:faq:how-do-i-configure-endpoints.adoc[Configuring -Endpoints and Components]. - == CamelContextAware If you want the `CamelContext` to be injected diff --git a/docs/user-manual/modules/ROOT/pages/component.adoc b/docs/user-manual/modules/ROOT/pages/component.adoc index a29642e31df36..81f2f7dc1f547 100644 --- a/docs/user-manual/modules/ROOT/pages/component.adoc +++ b/docs/user-manual/modules/ROOT/pages/component.adoc @@ -124,7 +124,7 @@ Camel identifies the components in the above example as `pop3`, `jms`, `urn`, an [NOTE] ==== -Make sure to read xref:faq:how-do-i-configure-endpoints.adoc[How do I configure endpoints?] +Make sure to read xref:endpoint.adoc[Endpoint] to learn more about configuring endpoints. For example, how to refer to beans in the xref:registry.adoc[Registry] or how to use raw values for password options, and using xref:using-propertyplaceholder.adoc[property placeholders] etc. ==== diff --git a/docs/user-manual/modules/ROOT/pages/consumertemplate.adoc b/docs/user-manual/modules/ROOT/pages/consumertemplate.adoc index 5b04ac70e7b67..57334d6e925a0 100644 --- a/docs/user-manual/modules/ROOT/pages/consumertemplate.adoc +++ b/docs/user-manual/modules/ROOT/pages/consumertemplate.adoc @@ -45,6 +45,27 @@ body = template.receiveBody("activemq:MyQueue", 5000); Here we wait at most 5 seconds for a message to be consumed, if there was no message, then `null` is returned as response. +== Configuring default cache size + +You can configure globally the default cache size for both `ProducerTemplate` and `ConsumerTemplate` +which will be created or dependency inject by `CamelContext`. + +This can be done on the `CamelContext` as a global option as shown in the following Java code: + +[source,java] +---- +getCamelContext().getGlobalOptions().put(Exchange.MAXIMUM_CACHE_POOL_SIZE, "50"); +---- + +Or in `application.properties`: + +[source,properties] +---- +camel.main.consumerTemplateCacheSize = 50 +---- + +The default maximum cache size is 1000. + == See Also See xref:producertemplate.adoc[ProducerTemplate] \ No newline at end of file diff --git a/docs/user-manual/modules/ROOT/pages/endpoint.adoc b/docs/user-manual/modules/ROOT/pages/endpoint.adoc index 704a7bb9bc9f1..f73805fb9458e 100644 --- a/docs/user-manual/modules/ROOT/pages/endpoint.adoc +++ b/docs/user-manual/modules/ROOT/pages/endpoint.adoc @@ -47,7 +47,283 @@ YAML:: ---- ==== -== Endpoint API +=== Referring beans from endpoints + +When configuring endpoints using the URI syntax you can refer to beans +in the xref:registry.adoc[Registry] using the `#bean:id` notation. + +NOTE: The older syntax with just `#id` has been deprecated due to ambiguity +as Camel supports a number of additional functions that start with the # notation. + +If the URI parameter value starts with `#bean:` then Camel will lookup in +the xref:registry.adoc[Registry] for a bean of the given type by id. For instance: + +[tabs] +==== + +Java:: ++ +[source,java] +---- +from("file:messages/foo?sorter=#bean:mySpecialFileSorter") + .to("jms:queue:foo"); +---- + +XML:: ++ +[source,xml] +---- + + + + +---- + +YAML:: ++ +[source,yaml] +---- +- route: + from: + uri: file:messages/foo?sorter=#bean:mySpecialFileSorter + steps: + - to: + uri: jms:queue:foo +---- +==== + +Will lookup a bean with the id `mySpecialFileSorter` in the Registry. + +==== Referring beans by class + +Camel also supports to refer to beans by their class type, such as `#class:com.foo.MySpecialSorter`, +which then will create a new bean instance of the given class name. + +If you need to provide parameters to the constructor, then this is also possible +(limited to numbers, boolean, literal, and null values) + +[source,text] +---- +file://inbox?sorter=#class:com.foo.MySpecialSorter(10, 'Hello world', true) +---- + +TIP: Inlining constructor arguments is only recommended for beans with a few options so the code is easy to understand and maintain. +Also beware that if the bean constructor is refactored then the string text would need to be updated accordingly. + +==== Referring beans by type + +When configuring endpoints using URI syntax you can now refer to bean by its type which +are used to lookup the bean by the given type from the xref:ROOT:registry.adoc[Registry]. + +If there is one bean found in the registry of the given type, then that bean instance will be used; +otherwise an exception is thrown. + +For example below we expect there is a single bean of the `org.apache.camel.spi.IdempotentRepository` type +in the xref:registry.adoc[Registry] that the file endpoint should use. + +[source,text] +---- +file://inbox?idempontentRepository=#type:org.apache.camel.spi.IdempotentRepository +---- + +=== Configuring parameter values using raw values, such as passwords + +When configuring endpoint options using URI syntax, then the values is +by default URI encoded. This can be a problem if you want to configure +passwords and just use the value _as is_ without any encoding. For +example, you may have a plus sign in the password, which would be decimal +encoded by default. + +You can define parameter value to be *raw* using the following syntax `RAW(value)`, e.g. +the value starts with `RAW(` and then ends with the parenthesis `)`. + +Here is a little example with the password: `se+re?t&23`: + +[tabs] +==== + +Java:: ++ +[source,java] +---- +from("file:inbox") + .to("ftp:joe@myftpserver.com?password=RAW(se+re?t&23)&binary=true"); +---- + +XML:: ++ +[source,xml] +---- + + + + +---- + +YAML:: ++ +[source,yaml] +---- +- route: + from: + uri: file:inbox + steps: + - to: + uri: ftp:joe@myftpserver.com?password=RAW(se+re?t&23)&binary=true +---- + +YAML expanded:: ++ +[source,yaml] +---- +- route: + from: + uri: file + parameters: + directoryName: inbox + steps: + - to: + uri: ftp + parameters: + host: joe@myftpserver.com + password: "RAW(se+re?t&23)" + binary: true +---- +==== + +In the above example, we have declared the password value as raw, and the +actual password would be as typed, eg `se+re?t&23`. + +NOTE: you may find a corner case when you use both `)` and `&` character as part of your password (ie, `se+re)t&23`). The parser will interpret the `)` as closing the `RAW` function and having a parameter started by `&`. In such case, you can instead use the `RAW{}` notation to let you include the `)` character and have it decoded as part of the password (ie, `RAW{se+re)t&23}`). As a safe alternative you can also use `password=#property:myPass` and then have `myPass` a xref:ROOT:property-binding.adoc[property placeholder value]. + +==== Using ENV variables with raw values + +If you need to use environment variables, for example as username or passwords then this is now possible by inlining +the xref:components:languages:simple-language.adoc[Simple] language +using `+++$simple{xxx}+++` syntax in `RAW(...)` as shown below: + +[tabs] +==== + +Java:: ++ +[source,java] +---- +from("file:inbox") + .to("ftp:joe@myftpserver.com?password=RAW($simple{env:MY_FTP_PASSWORD})&binary=true"); +---- + +XML:: ++ +[source,xml] +---- + + + + +---- + +YAML:: ++ +[source,yaml] +---- +- route: + from: + uri: file:inbox + steps: + - to: + uri: "ftp:joe@myftpserver.com?password=RAW($simple{env:MY_FTP_PASSWORD})&binary=true" +---- + +==== + +=== Endpoint URIs with property placeholders + +Camel has extensive support for using xref:using-propertyplaceholder.adoc[]. + +For example in the ftp example above we can externalize the password to the `application.properties` file. + +[source,properties] +---- +myFtpPassword=RAW(se+re?t&23) +---- + +And the Camel routes can then refer to this placeholder using `{\{key}}` style. + +[tabs] +==== + +Java:: ++ +[source,java] +---- +from("file:inbox") + .to("ftp:joe@myftpserver.com?password={{myFtpPassword}}&binary=true"); +---- + +XML:: ++ +[source,xml] +---- + + + + +---- + +YAML:: ++ +[source,yaml] +---- +- route: + from: + uri: file:inbox + steps: + - to: + uri: "ftp:joe@myftpserver.com?password={{myFtpPassword}}&binary=true" +---- +==== + +And have a `application.properties` file with password. Notice we still define +the `RAW(value)` style to ensure the password is used _as is_: + +[source,properties] +---- +myFtpPassword=RAW(se+re?t&23) +---- + +We could still have used the `RAW(value)` in the Camel route instead: + +[source,java] +---- +.to("ftp:joe@myftpserver.com?password=RAW({{myFtpPassword}})&binary=true") +---- + +And then we would need to remove the `RAW` from the properties file: + +[source,properties] +---- +myFtpPassword=se+re?t&23 +---- + +== Configuring CamelContext default cache size + +The xref:ROOT:camelcontext.adoc[CamelContext] will by default cache the last 1000 +used endpoints (based on a LRUCache). + +This must be done on the `CamelContext` as a global option as shown in the following Java code: + +[source,java] +---- +getCamelContext().getGlobalOptions().put(Exchange.MAXIMUM_ENDPOINT_CACHE_SIZE, "500"); +---- + +The default maximum cache size is 1000. + +You need to configure this before xref:ROOT:camelcontext.adoc[CamelContext] is started. + + +== Java Endpoint API You will almost never have the need for creating endpoints manually via Java API. diff --git a/docs/user-manual/modules/ROOT/pages/index.adoc b/docs/user-manual/modules/ROOT/pages/index.adoc index ecee94f6b6799..2a2403e425dca 100644 --- a/docs/user-manual/modules/ROOT/pages/index.adoc +++ b/docs/user-manual/modules/ROOT/pages/index.adoc @@ -46,7 +46,6 @@ For a deeper and better understanding of Apache Camel, an xref:faq:what-is-camel * xref:getting-started.adoc[Getting Started] * xref:book-getting-started.adoc[Longer Getting Started Guide] * xref:spring.adoc[Working with Camel and Spring] -* xref:faq:how-do-i-configure-endpoints.adoc[How do I configure endpoints?] * xref:camelcontext-autoconfigure.adoc[Auto Configuration] * xref:bean-integration.adoc[Bean Integration] * xref:configuring-route-startup-ordering-and-autostartup.adoc[Configuring route startup ordering and autostartup] diff --git a/docs/user-manual/modules/ROOT/pages/producertemplate.adoc b/docs/user-manual/modules/ROOT/pages/producertemplate.adoc index 9a6f59db008d7..ee1ac12d8fdb4 100644 --- a/docs/user-manual/modules/ROOT/pages/producertemplate.adoc +++ b/docs/user-manual/modules/ROOT/pages/producertemplate.adoc @@ -109,6 +109,28 @@ Object result = FluentProducerTemplate.on(context) .request(); ---- +== Configuring default cache size + +You can configure globally the default cache size for both `ProducerTemplate` and `ConsumerTemplate` +which will be created or dependency inject by `CamelContext`. + +This can be done on the `CamelContext` as a global option as shown in the following Java code: + +[source,java] +---- +getCamelContext().getGlobalOptions().put(Exchange.MAXIMUM_CACHE_POOL_SIZE, "50"); +---- + +Or in `application.properties`: + +[source,properties] +---- +camel.main.producerTemplateCacheSize = 50 +---- + +The default maximum cache size is 1000. + + == See Also See xref:consumertemplate.adoc[ConsumerTemplate] \ No newline at end of file diff --git a/docs/user-manual/modules/ROOT/pages/routes.adoc b/docs/user-manual/modules/ROOT/pages/routes.adoc index 13fdc400842b2..db45fb736e46b 100644 --- a/docs/user-manual/modules/ROOT/pages/routes.adoc +++ b/docs/user-manual/modules/ROOT/pages/routes.adoc @@ -44,6 +44,51 @@ YAML:: ---- ==== +== Naming routes + +You can assign names to your routes in Java DSL using `routeId`: + +[tabs] +==== + +Java:: ++ +In Java DSL you use `routeId` to declare the name/id of the route. ++ +[source,java] +---- +from("ftp:myserver/folder").routeId("myRoute") + .to("activemq:queue:cheese"); +---- + +XML:: ++ +In XML DSL you use `id` in the `` element to declare the name/id of the route. ++ +[source,xml] +---- + + + + +---- + +YAML:: ++ +In YAML DSL you use `id` in the `- route` node to declare the name/id of the route. ++ +[source,yaml] +---- +- route: + id: myRoute + from: + uri: ftp:myserver/folder + steps: + - to: + uri: activemq:queue:cheese +---- +==== + == Route Description and Notes diff --git a/docs/user-manual/modules/ROOT/pages/stream-caching.adoc b/docs/user-manual/modules/ROOT/pages/stream-caching.adoc index c3f3fc5d525c9..cacd2bf152448 100644 --- a/docs/user-manual/modules/ROOT/pages/stream-caching.adoc +++ b/docs/user-manual/modules/ROOT/pages/stream-caching.adoc @@ -338,3 +338,45 @@ from("direct:start") .process(new StreamCachingProcessor()) .to("log:cached"); ---- + +== How do I enable streams when debug logging messages in Camel + +When you run Camel with `DEBUG` level as logging, it will log the +messages and its content from time to time. +As some messages can contain streams, which are prone to be not readable +multiple times, and therefore Camel will by default *not* log these +types. + +These are typical instances which are not logged by default: + +* `java.xml.transform.StreamSource` +* `java.io.InputStream` +* `java.io.OutputStream` +* `java.io.Reader` +* `java.io.Writer` + +You will see this in the log as: + +[source,log] +---- +DEBUG ProducerCache - >>>> Endpoint[direct:start] Exchange[Message: [Body is instance of java.xml.transform.StreamSource]] +---- + +Here we have a message which is XML stream based. +You can customize whether Camel should log the payload anyway. + +You can enable this as a global option on `CamelContext` from Java: + +[source,java] +---- +context.getGlobalOptions().put(Exchange.LOG_DEBUG_BODY_STREAMS, "true"); +---- + +In `application.properties` this can also be done as shown: + +[source,properties] +---- +camel.main.globalOptions[CamelLogDebugBodyStreams] = true +---- + +Notice default is `false`. diff --git a/docs/user-manual/modules/ROOT/pages/uris.adoc b/docs/user-manual/modules/ROOT/pages/uris.adoc index 58df63d9349d6..d5618e05e9ed8 100644 --- a/docs/user-manual/modules/ROOT/pages/uris.adoc +++ b/docs/user-manual/modules/ROOT/pages/uris.adoc @@ -20,4 +20,4 @@ The query parameters have two parameters: == More Information -You can read the guide xref:faq:how-do-i-configure-endpoints.adoc[How do I configure endpoints] to learn more about configuring _endpoints_. Among other things, this guide explains how to refer to beans in the xref:registry.adoc[registry], how to use raw values for password options, how to use xref:using-propertyplaceholder.adoc[property placeholders], or how to use the type safe xref:Endpoint-dsl.adoc[Endpoint DSL] and xref:dataformat-dsl.adoc[DataFormat DSL]. +See also xref:endpoint.adoc[] diff --git a/docs/user-manual/modules/faq/nav.adoc b/docs/user-manual/modules/faq/nav.adoc index bfcb5ed22913e..ed1c71db55b9b 100644 --- a/docs/user-manual/modules/faq/nav.adoc +++ b/docs/user-manual/modules/faq/nav.adoc @@ -14,20 +14,8 @@ ** xref:what-platforms-are-supported.adoc[What platforms are supported?] ** xref:why-the-name-camel.adoc[Why the name Camel?] ** xref:how-do-i-specify-which-method-to-use-when-using-beans-in-routes.adoc[How do I specify which method to use when using beans in routes?] -** xref:how-can-i-create-a-custom-component-or-endpoint.adoc[How can I create a custom component or endpoint?] ** xref:how-does-camel-look-up-beans-and-endpoints.adoc[How does Camel look up beans and endpoints?] -** xref:how-do-i-configure-endpoints.adoc[How do I configure endpoints?] -** xref:how-do-i-configure-password-options-on-camel-endpoints-without-the-value-being-encoded.adoc[How do I configure password options on Camel endpoints without the value being encoded?] -** xref:how-do-i-configure-the-default-maximum-cache-size-for-producercache-or-producertemplate.adoc[How do I configure the default maximum cache size for ProducerCache or ProducerTemplate?] -** xref:how-do-i-configure-the-maximum-endpoint-cache-size-for-camelcontext.adoc[How do I configure the maximum endpoint cache size for CamelContext?] -** xref:how-do-i-debug-my-route.adoc[How do I debug my route?] -** xref:how-do-i-disable-jmx.adoc[How do I disable JMX?] -** xref:how-do-i-enable-streams-when-debug-logging-messages-in-camel.adoc[How do I enable streams when debug logging messages in Camel?] -** xref:how-do-i-handle-failures-when-consuming-for-example-from-a-ftp-server.adoc[How do I handle failures when consuming for example from a FTP server?] -** xref:how-do-i-import-rests-from-other-xml-files.adoc[How do I import rests from other XML files?] -** xref:how-do-i-import-routes-from-other-xml-files.adoc[How do I import routes from other XML files?] ** xref:how-do-i-let-jetty-match-wildcards.adoc[How do I let Jetty match wildcards?] -** xref:how-do-i-name-my-routes.adoc[How do I name my routes?] ** xref:how-do-i-restart-camelcontext.adoc[How do I restart CamelContext?] ** xref:how-do-i-retrieve-the-thrown-exception-during-processing-an-exchange.adoc[How do I retrieve the thrown Exception during processing an Exchange?] ** xref:how-do-i-retry-failed-messages-forever.adoc[How do I retry failed messages forever?] @@ -54,9 +42,7 @@ ** xref:why-is-my-processor-not-showing-up-in-jconsole.adoc[Why is my processor not showing up in JConsole?] ** xref:why-is-the-exception-null-when-i-use-onexception.adoc[Why is the exception null when I use onException?] ** xref:why-use-multiple-camelcontext.adoc[Why use multiple CamelContext?] -** xref:how-do-i-enable-debug-logging.adoc[How do I enable debug logging?] ** xref:how-do-i-use-log4j.adoc[How do I use log4j?] -** xref:how-do-i-make-my-jms-endpoint-transactional.adoc[How Do I Make My JMS Endpoint Transactional?] ** xref:how-do-i-set-the-mep-when-interacting-with-jbi.adoc[How do I set the MEP when interacting with JBI?] ** xref:how-do-the-direct-event-seda-and-vm-endpoints-compare.adoc[How do the direct, event, seda and vm endpoints compare?] ** xref:how-do-the-timer-and-quartz-endpoints-compare.adoc[How do the Timer and Quartz endpoints compare?] diff --git a/docs/user-manual/modules/faq/pages/how-can-i-create-a-custom-component-or-endpoint.adoc b/docs/user-manual/modules/faq/pages/how-can-i-create-a-custom-component-or-endpoint.adoc deleted file mode 100644 index 842db5c355d3b..0000000000000 --- a/docs/user-manual/modules/faq/pages/how-can-i-create-a-custom-component-or-endpoint.adoc +++ /dev/null @@ -1,5 +0,0 @@ -= How can I create a custom component or endpoint? - -Please read xref:ROOT:writing-components.adoc[Writing Components] for a -background in how to implement a new component or endpoint. - diff --git a/docs/user-manual/modules/faq/pages/how-can-i-get-the-source-code.adoc b/docs/user-manual/modules/faq/pages/how-can-i-get-the-source-code.adoc index 9a90b095b6885..64ec91bebeadd 100644 --- a/docs/user-manual/modules/faq/pages/how-can-i-get-the-source-code.adoc +++ b/docs/user-manual/modules/faq/pages/how-can-i-get-the-source-code.adoc @@ -1,11 +1,10 @@ = How can I get the source code? -The source code is at https://github.com/apache/camel/ -so you can also checkout the source code from GitHub, if you are -familiar with using GitHub. By using GitHub you can submit pull requests -to the project using the standard GitHub way. +The source code is on GitHub at: https://github.com/apache/camel -https://github.com/apache/camel/ +From GitHub you can checkout the code, and contribute back +by sending Pull Requests. Working with the code is similar to +other projects hosted on GitHub. == Building the code diff --git a/docs/user-manual/modules/faq/pages/how-do-i-configure-endpoints.adoc b/docs/user-manual/modules/faq/pages/how-do-i-configure-endpoints.adoc deleted file mode 100644 index 79ec4d547a09d..0000000000000 --- a/docs/user-manual/modules/faq/pages/how-do-i-configure-endpoints.adoc +++ /dev/null @@ -1,305 +0,0 @@ -= How do I configure endpoints? - -There are a few different approaches to configuring components and -endpoints. - -[[HowdoIconfigureendpoints-UsingJavaCode]] -== Using Java Code - -You can explicitly configure a Component using Java -code as shown in this example - -Or you can explicitly get hold of an Endpoint and -configure it using Java code as shown in the xref:components::mock-component.adoc[Mock endpoint examples]. - -[source,java] ----- -SomeEndpoint endpoint = camelContext.getEndpoint("someURI", SomeEndpoint.class); -endpoint.setSomething("aValue"); ----- - -[[HowdoIconfigureendpoints-UsingSpringXML]] -== Using Spring XML - -You can configure your Component or Endpoint instances in your Spring XML as `` as follows: - -[source,xml] ----- - - - - - - - ----- - -Which allows you to configure a component using some name (activemq in -the above example), then you can refer to the component using -`activemq:[queue:|topic:]destinationName`. This works by the -`SpringCamelContext` lazily fetching components from the spring context -for the scheme name you use for Endpoint -URIs - -[[HowdoIconfigureendpoints-UsingEndpointURIs]] -== Using Endpoint URIs - -Another approach is to use the URI syntax. The URI syntax supports the -query notation. So for example with the xref:components::mail-component.adoc[Mail] component -you can configure the password property via the URI - -[source,text] ----- -pop3://host:port?password=foo ----- - -[[HowdoIconfigureendpoints-ReferringbeansfromEndpointURIs]] -=== Referring beans from Endpoint URIs - -When configuring endpoints using the URI syntax you can refer to beans -in the Registry using the `#bean:id` notation. - -NOTE: The older syntax with just `#id` has been deprecated due to ambiguity -as Camel supports a number of additional functions that start with the # notation. - -If the URI parameter value starts with `#bean:` then Camel will lookup in -the Registry for a bean of the given type by id. For instance: - -[source] ----- -file://inbox?sorter=#bean:mySpecialFileSorter ----- - -Will lookup a bean with the id `mySpecialFileSorter` in the -Registry. - -Camel also supports to refer to beans by their class type. - -[[HowdoIconfigureendpoints-ReferringbeansbyclassfromEndpointURIs]] -=== Referring beans by class from Endpoint URIs - -When configuring endpoints using URI syntax you can now refer to bean by its class name -using the `#class:fullyQualifiedName` notation. - -If the parameter value starts with a `#class:` sign then Camel will load the -class with the given name, and create an instance of the bean using its _no-arg_ constructor: - -[source,text] ----- -file://inbox?sorter=#class:com.foo.MySpecialSorter ----- - -If you need to provide parameters to the constructor, then this is also possible -(limited to numbers, boolean, literal, and null values) - -[source,text] ----- -file://inbox?sorter=#class:com.foo.MySpecialSorter(10, 'Hello world', true) ----- - -[[HowdoIconfigureendpoints-ReferringbeansbytypefromEndpointURIs]] -=== Referring beans by type from Endpoint URIs - -When configuring endpoints using URI syntax you can now refer to bean by its type which -are used to lookup the bean by the given type from the xref:ROOT:registry.adoc[Registry]. -If there is one bean found in the registry of the given type, then that bean instance will be used; -otherwise an exception is thrown. - -[source] ----- -file://inbox?idempontentRepository=#type:org.apache.camel.spi.IdempotentRepository ----- - -[[HowdoIconfigureendpoints-Configuringparametervaluesusingrawvalues,egsuchaspasswords]] -=== Configuring parameter values using raw values, eg such as passwords - -*Since Camel 2.11* - -When configuring endpoint options using URI syntax, then the values is -by default URI encoded. This can be a problem if you want to configure -passwords and just use the value _as is_ without any encoding. For -example you may have a plus sign in the password, which would be decimal -encoded by default. - -So from Camel 2.11 onwards we made this easier as you can denote a -parameter value to be *raw* using the following syntax `RAW(value)`, e.g. -the value starts with `RAW(` and then ends with the parenthesis `)`. -Here is a little example: - -[source,java] ----- -.to("ftp:joe@myftpserver.com?password=RAW(se+re?t&23)&binary=true") ----- - -In the above example, we have declare the password value as raw, and the -actual password would be as typed, eg `se+re?t&23`. - -NOTE: you may find a corner case when you use both `)` and `&` character as part of your password (ie, `se+re)t&23`). The parser will interpret the `)` as closing the `RAW` function and having a parameter started by `&`. In such case, you can instead use the `RAW{}` notation to let you include the `)` character and have it decoded as part of the password (ie, `RAW{se+re)t&23}`). As a safe alternative you can also use `password=#property:myPass` and then have `myPass` a xref:ROOT:property-binding.adoc[property placeholder value]. - -==== Using ENV variables with raw values - -*Since Camel 4.7* - -If you need to use environment variables, for example as username or passwords then this is now possible by inlining -the xref:components:languages:simple-language.adoc[Simple] language -using `+++$simple{xxx}+++` syntax in `RAW(...)` as shown below: - -[source,java] ----- -.to("ftp:joe@myftpserver.com?password=RAW($simple{env:MY_FTP_PASSWORD})&binary=true") ----- - -[[HowdoIconfigureendpoints-Usingpropertyplaceholders]] -=== Using property placeholders - -Camel has extensive support for using property placeholders, which you -can read more about here. For -example in the ftp example above we can externalize the password to a -`.properties` file. - -For example configuring the property placeholder when using a -XML DSL, where we declare the location of the `.properties` -file. Though we can also define this in Java code. See the -documentation for more details. - -[source,xml] ----- - - - ... - ----- - -And the Camel route now refers to the placeholder using the `{\{key}}` -notation: - -[source,java] ----- -.to("ftp:joe@myftpserver.com?password={{myFtpPassword}}&binary=true" ----- - -And have a `myftp.properties` file with password. Notice we still define -the `RAW(value)` style to ensure the password is used _as is_: - -[source,text] ----- -myFtpPassword=RAW(se+re?t&23) ----- - -We could still have used the `RAW(value)` in the Camel route instead: - -[source,java] ----- -.to("ftp:joe@myftpserver.com?password=RAW({{myFtpPassword}})&binary=true") ----- - -And then we would need to remove the `RAW` from the properties file: - -[source] ----- -myFtpPassword=se+re?t&23 ----- - -To understand more about property placeholders, read the -documentation. - -In Camel 3.4 you can use an alternative than RAW to refer to a property placeholder by its -key, as discussed in the following section. - -=== Referring to a property placeholder - -When using `{\{key}}` in configuring endpoint URIs then Camel will replace the `{\{key}}` while parsing the endpoint URI. -This has its pros but also a few cons, such as when using sensitive information such as passwords. As we have seen -in the previous section you can use RAW() syntax. Instead of using RAW() you can use `#property:key` notation, -as shown in the example below: - -[source,java] ----- -.to("ftp:joe@myftpserver.com?password=#property:myFtpPassword&binary=true") ----- - -... and in XML: - -[source,xml] ----- - ----- - -[[HowdoIconfigureendpoints-Configuringurisusingendpointwithbeanpropertystyle]] -== Configuring URIs using endpoint with bean property style - -Sometimes configuring endpoint URIs may have many options, and therefore -the URI can become long. In Java DSL you can break the URIs into new -lines as its just Java code, e.g. just concat the `String`. When using XML -DSL then the URI is an attribute, e.g. ``. From Camel -2.15 onwards you can configure the endpoint separately, and from the -routes refer to the endpoints using their shorthand ids. - -[source,xml] ----- - - - - - - - - - - - - ... - - ----- - -In the example above, the endpoint with id `foo`, is defined using -`` which under the covers assembles this as an URI, with all the -options, as if you have defined all the options directly in the URI. You -can still configure some options in the URI, and then use `` -style for additional options, or to override options from the URI, such -as: - -[source] ----- - - - - - ----- - -[[HowdoIconfigureendpoints-Configuringlongurisusingnewlines]] -== Configuring long URIs using new lines - -Sometimes configuring endpoint URIs may have many options, and therefore -the URI can become long. In Java DSL you can break the URIs into new -lines as its just Java code, e.g. just concat the `String`. When using XML -DSL then the URI is an attribute, e.g. ``. From Camel -2.15 onwards you can break the URI attribute using new line, such as -shown below: - -[source,xml] ----- - - - - ----- - -Notice that it still requires escaping `&` as `&` in XML. Also you -can have multiple options in one line, eg this is the same: - -[source,xml] ----- - - - - ----- - diff --git a/docs/user-manual/modules/faq/pages/how-do-i-configure-password-options-on-camel-endpoints-without-the-value-being-encoded.adoc b/docs/user-manual/modules/faq/pages/how-do-i-configure-password-options-on-camel-endpoints-without-the-value-being-encoded.adoc deleted file mode 100644 index 46e12acbedec1..0000000000000 --- a/docs/user-manual/modules/faq/pages/how-do-i-configure-password-options-on-camel-endpoints-without-the-value-being-encoded.adoc +++ /dev/null @@ -1,11 +0,0 @@ -= How do I configure password options on Camel endpoints without the value being encoded? - -When you configure Camel endpoints using xref:ROOT:uris.adoc[URIs] then the -parameter values gets url encoded by default. + -This can be a problem when you want to configure passwords _as is_. - -To do that you can tell Camel to use the raw value, by enclosing the -value with RAW(value). See more details at -xref:how-do-i-configure-endpoints.adoc[How do I configure endpoints?] -which has an example also. - diff --git a/docs/user-manual/modules/faq/pages/how-do-i-configure-the-default-maximum-cache-size-for-producercache-or-producertemplate.adoc b/docs/user-manual/modules/faq/pages/how-do-i-configure-the-default-maximum-cache-size-for-producercache-or-producertemplate.adoc deleted file mode 100644 index c15d4a8028af5..0000000000000 --- a/docs/user-manual/modules/faq/pages/how-do-i-configure-the-default-maximum-cache-size-for-producercache-or-producertemplate.adoc +++ /dev/null @@ -1,31 +0,0 @@ -= How do I configure the default maximum cache size for ProducerCache or ProducerTemplate? - -*Since Camel 2.3* - -This applies to ConsumerCache and ConsumerTemplate as well. - -You can configure the default maximum cache size by setting the -`Exchange.MAXIMUM_CACHE_POOL_SIZE` property on `CamelContext`. - -[source,java] ----- -getCamelContext().getGlobalOptions().put(Exchange.MAXIMUM_CACHE_POOL_SIZE, "50"); ----- - -And in Spring XML its done as: - -[source,java] ----- - - - - -... - ----- - -The default maximum cache size is 1000. - -At runtime you can see the `ProducerCache` in JMX as they are listed in -the `services` category. - diff --git a/docs/user-manual/modules/faq/pages/how-do-i-configure-the-maximum-endpoint-cache-size-for-camelcontext.adoc b/docs/user-manual/modules/faq/pages/how-do-i-configure-the-maximum-endpoint-cache-size-for-camelcontext.adoc deleted file mode 100644 index 41cc9fbb3ed9b..0000000000000 --- a/docs/user-manual/modules/faq/pages/how-do-i-configure-the-maximum-endpoint-cache-size-for-camelcontext.adoc +++ /dev/null @@ -1,37 +0,0 @@ -= How do I configure the maximum endpoint cache size for CamelContext? - -xref:ROOT:camelcontext.adoc[CamelContext] will by default cache the last 1000 -used endpoints (based on a LRUCache). - -[[HowdoIconfigurethemaximumendpointcachesizeforCamelContext-Configuringcachesize]] -== Configuring cache size - -*Since Camel 2.8* - -You can configure the default maximum cache size by setting the -`Exchange.MAXIMUM_ENDPOINT_CACHE_SIZE` property on -xref:ROOT:camelcontext.adoc[CamelContext]. - -[source,java] ----- -getCamelContext().getGlobalOptions().put(Exchange.MAXIMUM_ENDPOINT_CACHE_SIZE, "500"); ----- - -You need to configure this before xref:ROOT:camelcontext.adoc[CamelContext] -is started. - -And in Spring XML its done as: - -[source,java] ----- - - - - -... - ----- - -At runtime you can see the `EndpointRegistry` in JMX as they are listed -in the `services` category. - diff --git a/docs/user-manual/modules/faq/pages/how-do-i-debug-my-route.adoc b/docs/user-manual/modules/faq/pages/how-do-i-debug-my-route.adoc deleted file mode 100644 index 5e97aa2209a2e..0000000000000 --- a/docs/user-manual/modules/faq/pages/how-do-i-debug-my-route.adoc +++ /dev/null @@ -1,14 +0,0 @@ -= How do I debug my route? - -If you've created a route and its not doing what you think it is you -could try using one of these features from version 1.4 onwards: - -* xref:ROOT:tracer.adoc[Tracer] to trace in commons-logging / log4j each step -that Camel takes -* xref:ROOT:debugger.adoc[Debugger] to let you set breakpoints at points in -the route and examine historic message exchanges -* xref:ROOT:debugger.adoc[Debug] from your unit test if you use the Camel -`camel-test` component - -Some link:/community/user-stories/[third party tools] offer Apache Camel route -debugging. diff --git a/docs/user-manual/modules/faq/pages/how-do-i-disable-jmx.adoc b/docs/user-manual/modules/faq/pages/how-do-i-disable-jmx.adoc deleted file mode 100644 index f10eacb2eff3a..0000000000000 --- a/docs/user-manual/modules/faq/pages/how-do-i-disable-jmx.adoc +++ /dev/null @@ -1,38 +0,0 @@ -= How do I disable JMX? - -== How do I disable JMX since Camel 3.x - -JMX is disabled by default, and only enabled if `camel-management` -is on the classpath. So an easy way to disable JMX is to _not_ include this JAR. - -You can also turn off JMX as shown below. - -== How do I disable JMX in Camel 2.x - -You can disable JMX instrumentation agent by setting Java VM system -property as follow. The property value is treated as boolean. - -[source,java] ----- --Dorg.apache.camel.jmx.disabled=true ----- - -Or, by adding a jmxAgent element inside the camelContext element in -Spring configuration: - -[source,xml] ----- - - - ... - ----- - -Or in Camel 2.1 its a bit easier (not having to use JVM system property) -if using pure Java as you can disable it as follows: - -[source,java] ----- -CamelContext camel = new DefaultCamelContext(); -camel.disableJMX(); ----- diff --git a/docs/user-manual/modules/faq/pages/how-do-i-enable-debug-logging.adoc b/docs/user-manual/modules/faq/pages/how-do-i-enable-debug-logging.adoc deleted file mode 100644 index 400135747e79a..0000000000000 --- a/docs/user-manual/modules/faq/pages/how-do-i-enable-debug-logging.adoc +++ /dev/null @@ -1,32 +0,0 @@ -= How do I enable debug logging? - -Camel uses convention over configuration so sometimes it's useful to turn -on debug logging to see how Camel is operating and to try and diagnose -issues. - -Camel uses http://www.slf4j.org/[sfl4j] which allows you to configure -logging via, among others: - -* http://logging.apache.org/log4j/[Log4j] -* http://logback.qos.ch/[Logback] -* https://docs.oracle.com/javase/8/docs/api/java/util/logging/package-summary.html[JDK Util Logging logging] - -To enable debug logging we recommend you -xref:how-do-i-use-log4j.adoc[use log4j for logging] then make sure your -log4j.properties file enables DEBUG level logging for the -`org.apache.camel` package. - -For example here is a `log4j.properties` file with debug Camel logging: -enabled - -[source,java] ----- -log4j.rootLogger=INFO, out - -log4j.logger.org.apache.camel=DEBUG - -log4j.appender.out=org.apache.log4j.ConsoleAppender -log4j.appender.out.layout=org.apache.log4j.PatternLayout -log4j.appender.out.layout.ConversionPattern=[%30.30t] %-30.30c{1} %-5p %m%n -#log4j.appender.out.layout.ConversionPattern=%d [%-15.15t] %-5p %-30.30c{1} - %m%n ----- diff --git a/docs/user-manual/modules/faq/pages/how-do-i-enable-streams-when-debug-logging-messages-in-camel.adoc b/docs/user-manual/modules/faq/pages/how-do-i-enable-streams-when-debug-logging-messages-in-camel.adoc deleted file mode 100644 index dea7748061e3e..0000000000000 --- a/docs/user-manual/modules/faq/pages/how-do-i-enable-streams-when-debug-logging-messages-in-camel.adoc +++ /dev/null @@ -1,54 +0,0 @@ -= How do I enable streams when debug logging messages in Camel - -*Since Camel 2.1* - -When you run Camel with `DEBUG` level as logging, it will log the -messages and its content from time to time. -As some messages can contain streams, which are prone to be not readable -multiple times, and therefore Camel will by default *not* log these -types. - -These instances are not logged by default: - -* `java.xml.transform.StreamSource` -* `java.io.InputStream` -* `java.io.OutputStream` -* `java.io.Reader` -* `java.io.Writer` - -You will see this in the log as: - ----- -DEBUG ProducerCache - >>>> Endpoint[direct:start] Exchange[Message: [Body is instance of java.xml.transform.StreamSource]] ----- - -Here we have a message which is XML stream based. -You can customize whether Camel should log the payload anyway. - -[[HowdoIenablestreamswhendebugloggingmessagesinCamel-CustomizingfromJavaDSL]] -== Customizing from Java DSL - -You add to the Camel properties the flag to log streams. - -[source,java] ----- - context.getGlobalOptions().put(Exchange.LOG_DEBUG_BODY_STREAMS, "true"); ----- - -Notice default is `false`. - -[[HowdoIenablestreamswhendebugloggingmessagesinCamel-CustomizingfromSpringDSL]] -== Customizing from Spring DSL - -You add to the Camel properties the flag to log streams. - -[source,java] ----- - - - - - ----- - -Notice default is `false`. diff --git a/docs/user-manual/modules/faq/pages/how-do-i-handle-failures-when-consuming-for-example-from-a-ftp-server.adoc b/docs/user-manual/modules/faq/pages/how-do-i-handle-failures-when-consuming-for-example-from-a-ftp-server.adoc deleted file mode 100644 index c617d8d723f70..0000000000000 --- a/docs/user-manual/modules/faq/pages/how-do-i-handle-failures-when-consuming-for-example-from-a-ftp-server.adoc +++ /dev/null @@ -1,25 +0,0 @@ -= How do I handle failures when consuming for example from a FTP server? - -When you do a route such as: - -[source,java] ----- -from("ftp://foo@somesever.com?password=secret").to("bean:logic?method=doSomething"); ----- - -And there is a failure with connecting to the remote FTP server. The -existing xref:ROOT:error-handler.adoc[error handler] is -based on when a message is *being* routed. -In this case the error occurs *before* a message has been initiated and -routed. So how can I control the error handling? - -The xref:components::ftp-component.adoc[FTP] component have a few options -(`maximumReconnectAttempts, reconnectDelay` to control number of retries -and delay in between. - -But you can also plugin your own implementation and determine what to do -using the `pollStrategy` option which has more documentation -xref:components:eips:polling-consumer.adoc[Polling Consumer]. -Notice that the option `pollStrategy` applies for all consumers which is -a `ScheduledPollConsumer` consumer. The page lists those. - diff --git a/docs/user-manual/modules/faq/pages/how-do-i-import-rests-from-other-xml-files.adoc b/docs/user-manual/modules/faq/pages/how-do-i-import-rests-from-other-xml-files.adoc deleted file mode 100644 index 5c7ebe719f332..0000000000000 --- a/docs/user-manual/modules/faq/pages/how-do-i-import-rests-from-other-xml-files.adoc +++ /dev/null @@ -1,85 +0,0 @@ -= How do I import rests from other XML files? - -*Since Camel 2.14* - -When defining rests in Camel using Spring XML you may want to define some rests in other XML files. For -example you may have many rest services and it may help to maintain the -application if some of the rests are in separate XML files. You may also -want to store common and reusable rests in other XML files, which you -can simply import when needed. - -This is possible to define rests outside `` which you do -in a new `` tag. - -[NOTE] -==== -When you use `` then they are separated, and cannot -reuse existing ``, ``, `` and similar -cross cutting functionality defined in the ``. In other -words the `` is currently isolated. This may change in Camel -3.x. -==== - -For example we could have a file named `myCoolRests.xml` which contains -a rest (can have more) as shown: - -[source,xml] ----- - - - - - - - ----- - -Then in your XML file which contains the CamelContext you can use Spring -to import the `myCoolRests.xml` file. -And then inside `` you can refer to the -`` using the `` by its id as shown below: - -[source,xml] ----- - - - - - - - - - - - - - - - - - Hello World - - - - - - Bye World - - - ----- - -Also notice that you can mix and match, having rests inside CamelContext -and also externalized in RestContext. - -You can have as many `` as you like. - -[TIP] -==== -**Reusable rests** - -The rests defined in `` can be reused by multiple -``. However its only the definition which is reused. At -runtime each CamelContext will create its own instance of the rest based -on the definition. -==== diff --git a/docs/user-manual/modules/faq/pages/how-do-i-import-routes-from-other-xml-files.adoc b/docs/user-manual/modules/faq/pages/how-do-i-import-routes-from-other-xml-files.adoc deleted file mode 100644 index b17b627a46f5e..0000000000000 --- a/docs/user-manual/modules/faq/pages/how-do-i-import-routes-from-other-xml-files.adoc +++ /dev/null @@ -1,44 +0,0 @@ -= How Do I Import Routes From Other XML Files? - -*Since Camel 2.3* - -When defining routes in Camel using Spring XML -you may want to define some routes in other XML files. -For example, you may have many routes, and it may help to maintain the -application if some routes are in separate XML files. You may -also want to store common and reusable routes in other XML files, which -you can simply import when needed. - -In *Camel 2.3* it is now possible to define routes outside -`` which you do in a new `` tag. - -[NOTE] -==== -When you use `` then they are separated, and -cannot reuse existing ``, -``, `` and similar cross-cutting -functionality defined in the ``. In other words -the `` is currently isolated. This may change in Camel -3.x. -==== - -For example, we could have a file named `myCoolRoutes.xml` which -contains a couple of routes as shown in https://github.com/apache/camel/tree/main/components/camel-spring-parent/camel-spring-xml/src/test/resources/org/apache/camel/spring/config/myCoolRoutes.xml[this example]. - - -Then in your XML file which contains the CamelContext you can use Spring to -import the `myCoolRoute.xml` file. And then inside `` -you can refer to the `` by its `id` as shown below in https://github.com/apache/camel/tree/main/components/camel-spring-parent/camel-spring-xml/src/test/resources/org/apache/camel/spring/config/RouteRefIncludeXmlFileTest.xml[this example]. - - -Also notice that you can mix and match, having routes inside `CamelContext` -and also externalized in `RouteContext`. - -You can have as many `` as you like. - -== Reusable routes - -The routes defined in `` can be reused by multiple -``. However, it is only the definition which is reused. At -runtime each `CamelContext` will create its own instance of the route -based on the definition. diff --git a/docs/user-manual/modules/faq/pages/how-do-i-make-my-jms-endpoint-transactional.adoc b/docs/user-manual/modules/faq/pages/how-do-i-make-my-jms-endpoint-transactional.adoc deleted file mode 100644 index 5d05cb44aa920..0000000000000 --- a/docs/user-manual/modules/faq/pages/how-do-i-make-my-jms-endpoint-transactional.adoc +++ /dev/null @@ -1,25 +0,0 @@ -= How Do I Make My JMS Endpoint Transactional? - -I have a JMS route like this: - -[source,java] ----- -from("activemq:Some.Queue") - .bean(MyProcessor.class); ----- - -[[HowDoIMakeMyJMSEndpointTransactional-Question]] -== Question: - -How Do I Make It Transactional? - -[[HowDoIMakeMyJMSEndpointTransactional-Answer]] -== Answer: - -There are examples in the xref:components:eips:transactional-client.adoc[Transactional Client] -and it is described in the _Enabling Transacted Consumption_ -section of xref:components::jms-component.adoc[JMS]. To make a session transactional -set `transacted=true` flag on the JMS endpoint and configure -a `transactionManager` on the xref:ROOT:component.adoc[Component] or -xref:ROOT:endpoint.adoc[Endpoint]. - diff --git a/docs/user-manual/modules/faq/pages/how-do-i-name-my-routes.adoc b/docs/user-manual/modules/faq/pages/how-do-i-name-my-routes.adoc deleted file mode 100644 index 855d18aa0792f..0000000000000 --- a/docs/user-manual/modules/faq/pages/how-do-i-name-my-routes.adoc +++ /dev/null @@ -1,32 +0,0 @@ -= How do I name my routes? - -You can assign names to your routes in Java DSL using `routeId`: - -[source,java] ----- -from("direct:start").routeId("myRoute") - .to(mock:bar); ----- - -And in Spring XML using the `id` attribute: - -[source,xml] ----- - - - - ----- - -Same example for YAML using the `id` attribute: - -[source,yaml] ----- -- route: - id: myRoute - from: - uri: direct:start - steps: - - to: - uri: mock:bar ----- diff --git a/docs/user-manual/modules/faq/pages/index.adoc b/docs/user-manual/modules/faq/pages/index.adoc index 60ee1559dcdc3..d2932e1bf4672 100644 --- a/docs/user-manual/modules/faq/pages/index.adoc +++ b/docs/user-manual/modules/faq/pages/index.adoc @@ -35,20 +35,8 @@ General questions about Camel Questions on using Apache Camel * xref:how-do-i-specify-which-method-to-use-when-using-beans-in-routes.adoc[How do I specify which method to use when using beans in routes?] -* xref:how-can-i-create-a-custom-component-or-endpoint.adoc[How can I create a custom component or endpoint?] * xref:how-does-camel-look-up-beans-and-endpoints.adoc[How does Camel look up beans and endpoints?] -* xref:how-do-i-configure-endpoints.adoc[How do I configure endpoints?] -* xref:how-do-i-configure-password-options-on-camel-endpoints-without-the-value-being-encoded.adoc[How do I configure password options on Camel endpoints without the value being encoded?] -* xref:how-do-i-configure-the-default-maximum-cache-size-for-producercache-or-producertemplate.adoc[How do I configure the default maximum cache size for ProducerCache or ProducerTemplate?] -* xref:how-do-i-configure-the-maximum-endpoint-cache-size-for-camelcontext.adoc[How do I configure the maximum endpoint cache size for CamelContext?] -* xref:how-do-i-debug-my-route.adoc[How do I debug my route?] -* xref:how-do-i-disable-jmx.adoc[How do I disable JMX?] -* xref:how-do-i-enable-streams-when-debug-logging-messages-in-camel.adoc[How do I enable streams when debug logging messages in Camel?] -* xref:how-do-i-handle-failures-when-consuming-for-example-from-a-ftp-server.adoc[How do I handle failures when consuming for example from a FTP server?] -* xref:how-do-i-import-rests-from-other-xml-files.adoc[How do I import rests from other XML files?] -* xref:how-do-i-import-routes-from-other-xml-files.adoc[How do I import routes from other XML files?] * xref:how-do-i-let-jetty-match-wildcards.adoc[How do I let Jetty match wildcards?] -* xref:how-do-i-name-my-routes.adoc[How do I name my routes?] * xref:how-do-i-restart-camelcontext.adoc[How do I restart CamelContext?] * xref:how-do-i-retrieve-the-thrown-exception-during-processing-an-exchange.adoc[How do I retrieve the thrown Exception during processing an Exchange?] * xref:how-do-i-retry-failed-messages-forever.adoc[How do I retry failed messages forever?] @@ -83,7 +71,6 @@ Questions on using Apache Camel Questions on logging output from Camel to a console, using the xref:components::log-component.adoc[Log] endpoint or JDK 1.4 logging or Log4j etc -* xref:how-do-i-enable-debug-logging.adoc[How do I enable debug logging?] * xref:how-do-i-use-log4j.adoc[How do I use log4j?] [[FAQ-CamelEndpointQuestions]] @@ -92,7 +79,6 @@ xref:components::log-component.adoc[Log] endpoint or JDK 1.4 logging or Log4j et Questions on using the various Camel xref:components::index.adoc[Components] and xref:ROOT:endpoint.adoc[Endpoint] implementations -* xref:how-do-i-make-my-jms-endpoint-transactional.adoc[How Do I Make My JMS Endpoint Transactional?] * xref:how-do-i-set-the-mep-when-interacting-with-jbi.adoc[How do I set the MEP when interacting with JBI?] * xref:how-do-the-direct-event-seda-and-vm-endpoints-compare.adoc[How do the direct, event, seda and vm endpoints compare?] * xref:how-do-the-timer-and-quartz-endpoints-compare.adoc[How do the Timer and Quartz endpoints compare?] diff --git a/docs/user-manual/modules/faq/pages/why-cant-i-use-sign-in-my-password.adoc b/docs/user-manual/modules/faq/pages/why-cant-i-use-sign-in-my-password.adoc index 039b937ffa2b2..77194f3bfd860 100644 --- a/docs/user-manual/modules/faq/pages/why-cant-i-use-sign-in-my-password.adoc +++ b/docs/user-manual/modules/faq/pages/why-cant-i-use-sign-in-my-password.adoc @@ -6,8 +6,4 @@ When you configure Camel endpoints using xref:ROOT:uris.adoc[URIs] then the parameter values gets url encoded by default. This can be a problem when you want to configure passwords _as is_. -To do that you can tell Camel to use the raw value, by enclosing the -value with RAW(value). See more details at -xref:how-do-i-configure-endpoints.adoc[How do I configure endpoints?] -which has an example also. diff --git a/docs/user-manual/modules/faq/pages/why-does-my-file-consumer-not-pick-up-the-file-and-how-do-i-let-the-file-consumer-use-the-camel-error-handler.adoc b/docs/user-manual/modules/faq/pages/why-does-my-file-consumer-not-pick-up-the-file-and-how-do-i-let-the-file-consumer-use-the-camel-error-handler.adoc index 454dfc5b924d0..c7f59334521cd 100644 --- a/docs/user-manual/modules/faq/pages/why-does-my-file-consumer-not-pick-up-the-file-and-how-do-i-let-the-file-consumer-use-the-camel-error-handler.adoc +++ b/docs/user-manual/modules/faq/pages/why-does-my-file-consumer-not-pick-up-the-file-and-how-do-i-let-the-file-consumer-use-the-camel-error-handler.adoc @@ -5,8 +5,6 @@ not picking up files. For example it may not run at all, or it cannot acquire a read lock on the file. xref:index.adoc#FAQ-LoggingQuestions[Check the logs] for any exceptions or other informative messages. You can -xref:how-do-i-enable-debug-logging.adoc[turn on DEBUG logging] at -`org.apache.camel.component.file` to see more detail. [[WhydoesmyfileconsumernotpickupthefileandhowdoIletthefileconsumerusetheCamelerrorhandler-HowtouseCamelsroutingerrorhandlerswiththefileconsumer]] == How to use Camel's routing error handlers with the file consumer