I recommend to use a regular expression instead.

-----Ursprüngliche Nachricht-----
Von: Daniel Langevin [mailto:[email protected]]
Gesendet: Donnerstag, 23. November 2017 16:28
An: [email protected]
Betreff: substring using indexof +1 using simple language

Hi,

i try to retreive domain name from a String containng an email adress with 
simple language from the body message in single instruction.

I'm using camel 2.17.7

Look my try

<setHeader 
headerName="dns.name"><simple>${body.substring(${body.indexOf("@")}++,${body.length})}</simple></setHeader>

but receive this error

org.apache.camel.language.bean.RuntimeBeanExpressionException: Failed to invoke 
method: substring(15++,30) on null due to: 
org.apache.camel.component.bean.ParameterBindingException: Error during 
parameter binding on method: public java.lang.String 
java.lang.String.substring(int,int) at parameter #0 with type: int with value 
type: class java.lang.String and value: 15++


if i decomposed it it's work

<setHeader 
headerName="dnsStart"><simple>${body.indexOf("@")}++</simple></setHeader>
<setHeader 
headerName="dns.name"><simple>${body.substring(${header.dnsStart},${body.length})}</simple></setHeader>

Is it possible to achieve it in only one instruction ?



Regards




Daniel Langevin










"Le pr?sent courriel peut contenir des renseignements confidentiels et ne 
s'adresse qu'au destinataire dont le nom appara?t ci-dessus. Si ce courriel 
vous est parvenu par m?garde, veuillez le supprimer et nous en aviser aussit?t."
----------------------------------------------------------------
innogy SE Vorsitzender des Aufsichtsrates: Dr. Werner Brandt
Vorstand: Peter Terium (Vorsitzender), Dr. Hans Buenting,
Dr. Bernhard Guenther, Martin Herrmann, Hildegard Mueller, Uwe Tigges
Sitz der Gesellschaft: Essen, Eingetragen beim Amtsgericht Essen,
Handelsregister-Nr. HRB 27091, USt-IdNr. DE304171711

Reply via email to