Guys, I think I get it. Is this how it should be?

http://api.twingly.com/analytics/Analytics.ashx?key=75744154-6ACB-3340-937A-9B5A59FA8F30&searchpattern=${literal('Matt
Dupe'):urlEncode()}&xmloutputversion=2&ts=${now():minus(600000):format("yyyy-MM-dd
HH:mm:ss")}&tsTo=${now():format("yyyy-MM-dd HH:mm:ss")}

On Tue, Dec 15, 2015 at 5:38 PM, Joe Percivall <
[email protected]> wrote:

> I think you're thinking about it the wrong way. You aren't actually using
> any attributes (attributes are on flowfiles, properties on processors),
> just utilizing the functions of expression language. So you can manually
> put in everything you would normally as a literal then reference the
> expression language functions in the expression using ${*expression*}.
>
> That being said, since GetHttp is a source processor you shouldn't be
> changing that URL all that often so you could just manually replace the
> space with "%20" (URL encoding of a space).
>
> Here is a link to a URL encoder/decoder:
> http://meyerweb.com/eric/tools/dencoder/
>
> Joe
> - - - - - -
> Joseph Percivall
> linkedin.com/in/Percivall
> e: [email protected]
>
>
>
>
> On Tuesday, December 15, 2015 5:32 PM, Igor Kravzov <
> [email protected]> wrote:
> But how I define attribute "url" in GetHTTP processor? I tried to ad a
> property and got an error that property not defined or supported.
>
>
> On Tue, Dec 15, 2015 at 4:57 PM, Joe Percivall <
> [email protected]> wrote:
>
> > Hello Igor,
> >
> > The URL property for GetHTTP supports expression language. Check out this
> > function:
> >
> https://nifi.apache.org/docs/nifi-docs/html/expression-language-guide.html#urlencode
> >
> >
> > Hope that helps,
> > Joe
> >
> > - - - - - -
> > Joseph Percivall
> > linkedin.com/in/Percivall
> > e: [email protected]
> >
> >
> >
> >
> > On Tuesday, December 15, 2015 4:46 PM, Igor Kravzov <
> > [email protected]> wrote:
> >
> >
> >
> > Hi Joe,
> >
> > Another quick question. How can I encode some part of the URL? Like in
> > example bellow after searchpattern=
> > <
> >
> http://api.twingly.com/analytics/Analytics.ashx?key=75744154-6ACB-3340-937A-9B5A59FA8F30&searchpattern=boycott&xmloutputversion=2&ts=$%7Bnow():minus(600000):format(
> > >
> > space
> > between Matt Dupe  needs to be encoded. Otherwise GetHTTP throws an
> error.
> >
> >
> >
> http://api.twingly.com/analytics/Analytics.ashx?key=75744154-6ACB-3340-937A-9B5A59FA8F30&searchpattern=Matt
> > Dupe&xmloutputversion=2&ts=${now():minus(600000):format(
> > <
> >
> http://api.twingly.com/analytics/Analytics.ashx?key=75744154-6ACB-3340-937A-9B5A59FA8F30&searchpattern=boycott&xmloutputversion=2&ts=$%7Bnow():minus(600000):format(
> > >
> > "yyyy-MM-dd HH:mm:ss")}&tsTo=${now():format("yyyy-MM-dd HH:mm:ss")}
> >
> >
> > On Mon, Dec 14, 2015 at 6:16 PM, Joe Percivall <
> > [email protected]> wrote:
> >
> > > Glad I could help and thanks!
> > >  - - - - - -
> > > Joseph Percivall
> > > linkedin.com/in/Percivall
> > > e: [email protected]
> > >
> > >
> > >
> > >
> > > On Monday, December 14, 2015 6:09 PM, Igor Kravzov <
> > [email protected]>
> > > wrote:
> > > Thank you very much Joe. It worked.
> > > And congratulations.
> > >
> > >
> > > On Mon, Dec 14, 2015 at 6:00 PM, Joe Percivall <
> > > [email protected]> wrote:
> > >
> > > > Hello Igor,
> > > >
> > > > You're having trouble because you have a space in your format of the
> > > dates
> > > > which need to be URL encoded. You can use the EL method "urlencode"
> to
> > > get
> > > > a valid expression like such:
> > > >
> > > >
> > > >
> > >
> >
> http://api.twingly.com/analytics/Analytics.ashx?key=75744154-6ACB-3340-937A-9B5A59FA8F30&searchpattern=boycott&xmloutputversion=2&ts=${now():minus(600000):format(
> > > "yyyy-MM-dd
> > > > HH:mm:ss"):urlEncode()}&tsTo=${now():format("yyyy-MM-dd
> > > > HH:mm:ss"):urlEncode()}
> > > >
> > > > Hope that helps,
> > > > Joe
> > > > - - - - - -
> > > > Joseph Percivall
> > > > linkedin.com/in/Percivall
> > > > e: [email protected]
> > > >
> > > >
> > > >
> > > >
> > > > On Monday, December 14, 2015 5:31 PM, Igor Kravzov <
> > > [email protected]>
> > > > wrote:
> > > > Hi guys,
> > > >
> > > > Why I am getting the error bellow?  I am constructing URL like this:
> > > >
> > > >
> > >
> >
> http://api.twingly.com/analytics/Analytics.ashx?key=75744154-6ACB-3340-937A-9B5A59FA8F30&searchpattern=boycott&xmloutputversion=2&ts=${now():minus(600000):format(
> > > > "yyyy-MM-dd
> > > > HH:mm:ss")}&tsTo=${now():format("yyyy-MM-dd HH:mm:ss")}
> > > >
> > > >
> > > > Am I missing something? Thanks in advance.
> > > >
> > > >
> > > > java.lang.IllegalArgumentException: Illegal character in query at
> index
> > > > 143:
> > > >
> > > >
> > >
> >
> http://api.twingly.com/analytics/Analytics.ashx?key=75744154-6ACB-3340-937A-9B5A59FA8F30&searchpattern=boycott&xmloutputversion=2&ts=2015-12-14
> > > > 17:03:46&tsTo=2015-12-14 17:13:46
> > > > at java.net.URI.create(Unknown Source) ~[na:1.8.0_66]
> > > > at org.apache.http.client.methods.HttpGet.<init>(HttpGet.java:69)
> > > > ~[httpclient-4.4.1.jar:4.4.1]
> > > > at
> > > org.apache.nifi.processors.standard.GetHTTP.onTrigger(GetHTTP.java:444)
> > > > ~[na:na]
> > > > at
> > > >
> > > >
> > >
> >
> org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1146)
> > > > ~[nifi-framework-core-0.4.0.jar:0.4.0]
> > > > at
> > > >
> > > >
> > >
> >
> org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:139)
> > > > [nifi-framework-core-0.4.0.jar:0.4.0]
> > > > at
> > > >
> > > >
> > >
> >
> org.apache.nifi.controller.tasks.ContinuallyRunProcessorTask.call(ContinuallyRunProcessorTask.java:49)
> > > > [nifi-framework-core-0.4.0.jar:0.4.0]
> > > > at
> > > >
> > > >
> > >
> >
> org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:119)
> > > > [nifi-framework-core-0.4.0.jar:0.4.0]
> > > > at java.util.concurrent.Executors$RunnableAdapter.call(Unknown
> Source)
> > > > [na:1.8.0_66]
> > > > at java.util.concurrent.FutureTask.runAndReset(Unknown Source)
> > > > [na:1.8.0_66]
> > > > at
> > > >
> > > >
> > >
> >
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(Unknown
> > > > Source) [na:1.8.0_66]
> > > > at
> > > >
> > > >
> > >
> >
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown
> > > > Source) [na:1.8.0_66]
> > > > at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
> > > > [na:1.8.0_66]
> > > > at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
> > > > [na:1.8.0_66]
> > > > at java.lang.Thread.run(Unknown Source) [na:1.8.0_66]
> > > > Caused by: java.net.URISyntaxException: Illegal character in query at
> > > index
> > > > 143:
> > > >
> > > >
> > >
> >
> http://api.twingly.com/analytics/Analytics.ashx?key=75744154-6ACB-3340-937A-9B5A59FA8F30&searchpattern=boycott&xmloutputversion=2&ts=2015-12-14
> > > > 17:03:46&tsTo=2015-12-14 17:13:46
> > > > at java.net.URI$Parser.fail(Unknown Source) ~[na:1.8.0_66]
> > > > at java.net.URI$Parser.checkChars(Unknown Source) ~[na:1.8.0_66]
> > > > at java.net.URI$Parser.parseHierarchical(Unknown Source)
> ~[na:1.8.0_66]
> > > > at java.net.URI$Parser.parse(Unknown Source) ~[na:1.8.0_66]
> > > > at java.net.URI.<init>(Unknown Source) ~[na:1.8.0_66]
> > > > ... 14 common frames omitted
> > > >
> > >
> >
>

Reply via email to