You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@nifi.apache.org by Vijay Chhipa <vc...@apple.com> on 2018/11/06 21:52:15 UTC
Can a nar bundle host a servlet outside of the NiFi web framework?
Hello
I would like to create a nar bundle that can serve up some content, I would like this to be outside of the secure NiFI web context. Essentially it has nothing to do with the "https://<server>:<port>/nifi" and the nifi.properties
This would be a unsecured endpoint accessible from the host thats running NiFi.
http:/localhost:8089/blabla
Essentially, my nar would be running a Jetty server other than the NiFi Jetty server
Any technical issues with this approach ( obviously there is a security concerns but apart from that)
Thanks
Vijay
Re: Can a nar bundle host a servlet outside of the NiFi web
framework?
Posted by Nathan Gough <th...@gmail.com>.
Hi Vijay,
You can take a look at the code for ListenHTTP to get an idea of how you could write a processor to do what you want with your own servlet. ListenHTTP uses embedded Jetty:
https://github.com/apache/nifi/blob/master/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListenHTTP.java
There's a few articles around that describe how to write your own processor:
https://medium.com/hashmapinc/creating-custom-processors-and-controllers-in-apache-nifi-e14148740ea
https://nifi.apache.org/docs/nifi-docs/html/developer-guide.html
Cheers,
Nathan
On 11/13/18, 10:27 AM, "Vijay Chhipa" <vc...@apple.com> wrote:
Hi Bryan
So we implemented it based on your suggestion, and it works, however, for concerns unrelated to NiFi from the team, I will need to go back to the original idea which is standup a servlet from within my .nar file.
Is it possible and if so can you point me to an example?
Thank you,
Vijay
> On Nov 6, 2018, at 4:35 PM, Vijay Chhipa <vc...@apple.com> wrote:
>
> Bryan
>
> Thats perfect, I was planning to launch my own Jetty instance from within the nar, but ListenHttp or HandleHttpRequest is even better
>
> Thank you,
>
>
>> On Nov 6, 2018, at 4:24 PM, Bryan Bende <bb...@gmail.com> wrote:
>>
>> Not sure if this is what you are asking for, but ListenHttp and
>> HandleHttpRequest both do this.
>>
>> They start an embedded Jetty server on a different port, unrelated to
>> NiFi's web server, and they are not part of NiFi's security model,
>> although they can be secured with 2-way TLS, or basic auth (I tthink).
>>
>> The incoming request gets turned into a flow file and be processed by
>> the rest of the flow, and a response can be sent with
>> HandleHttpResponse.
>> On Tue, Nov 6, 2018 at 4:52 PM Vijay Chhipa <vc...@apple.com> wrote:
>>>
>>> Hello
>>>
>>> I would like to create a nar bundle that can serve up some content, I would like this to be outside of the secure NiFI web context. Essentially it has nothing to do with the "https://<server>:<port>/nifi" and the nifi.properties
>>>
>>> This would be a unsecured endpoint accessible from the host thats running NiFi.
>>> http:/localhost:8089/blabla
>>>
>>> Essentially, my nar would be running a Jetty server other than the NiFi Jetty server
>>>
>>> Any technical issues with this approach ( obviously there is a security concerns but apart from that)
>>>
>>> Thanks
>>>
>>> Vijay
>>>
>>>
>>>
>>>
>>>
>
Re: Can a nar bundle host a servlet outside of the NiFi web framework?
Posted by Vijay Chhipa <vc...@apple.com>.
Hi Bryan
So we implemented it based on your suggestion, and it works, however, for concerns unrelated to NiFi from the team, I will need to go back to the original idea which is standup a servlet from within my .nar file.
Is it possible and if so can you point me to an example?
Thank you,
Vijay
> On Nov 6, 2018, at 4:35 PM, Vijay Chhipa <vc...@apple.com> wrote:
>
> Bryan
>
> Thats perfect, I was planning to launch my own Jetty instance from within the nar, but ListenHttp or HandleHttpRequest is even better
>
> Thank you,
>
>
>> On Nov 6, 2018, at 4:24 PM, Bryan Bende <bb...@gmail.com> wrote:
>>
>> Not sure if this is what you are asking for, but ListenHttp and
>> HandleHttpRequest both do this.
>>
>> They start an embedded Jetty server on a different port, unrelated to
>> NiFi's web server, and they are not part of NiFi's security model,
>> although they can be secured with 2-way TLS, or basic auth (I tthink).
>>
>> The incoming request gets turned into a flow file and be processed by
>> the rest of the flow, and a response can be sent with
>> HandleHttpResponse.
>> On Tue, Nov 6, 2018 at 4:52 PM Vijay Chhipa <vc...@apple.com> wrote:
>>>
>>> Hello
>>>
>>> I would like to create a nar bundle that can serve up some content, I would like this to be outside of the secure NiFI web context. Essentially it has nothing to do with the "https://<server>:<port>/nifi" and the nifi.properties
>>>
>>> This would be a unsecured endpoint accessible from the host thats running NiFi.
>>> http:/localhost:8089/blabla
>>>
>>> Essentially, my nar would be running a Jetty server other than the NiFi Jetty server
>>>
>>> Any technical issues with this approach ( obviously there is a security concerns but apart from that)
>>>
>>> Thanks
>>>
>>> Vijay
>>>
>>>
>>>
>>>
>>>
>
Re: Can a nar bundle host a servlet outside of the NiFi web framework?
Posted by Vijay Chhipa <vc...@apple.com>.
Bryan
Thats perfect, I was planning to launch my own Jetty instance from within the nar, but ListenHttp or HandleHttpRequest is even better
Thank you,
> On Nov 6, 2018, at 4:24 PM, Bryan Bende <bb...@gmail.com> wrote:
>
> Not sure if this is what you are asking for, but ListenHttp and
> HandleHttpRequest both do this.
>
> They start an embedded Jetty server on a different port, unrelated to
> NiFi's web server, and they are not part of NiFi's security model,
> although they can be secured with 2-way TLS, or basic auth (I tthink).
>
> The incoming request gets turned into a flow file and be processed by
> the rest of the flow, and a response can be sent with
> HandleHttpResponse.
> On Tue, Nov 6, 2018 at 4:52 PM Vijay Chhipa <vc...@apple.com> wrote:
>>
>> Hello
>>
>> I would like to create a nar bundle that can serve up some content, I would like this to be outside of the secure NiFI web context. Essentially it has nothing to do with the "https://<server>:<port>/nifi" and the nifi.properties
>>
>> This would be a unsecured endpoint accessible from the host thats running NiFi.
>> http:/localhost:8089/blabla
>>
>> Essentially, my nar would be running a Jetty server other than the NiFi Jetty server
>>
>> Any technical issues with this approach ( obviously there is a security concerns but apart from that)
>>
>> Thanks
>>
>> Vijay
>>
>>
>>
>>
>>
Re: Can a nar bundle host a servlet outside of the NiFi web framework?
Posted by Bryan Bende <bb...@gmail.com>.
Not sure if this is what you are asking for, but ListenHttp and
HandleHttpRequest both do this.
They start an embedded Jetty server on a different port, unrelated to
NiFi's web server, and they are not part of NiFi's security model,
although they can be secured with 2-way TLS, or basic auth (I tthink).
The incoming request gets turned into a flow file and be processed by
the rest of the flow, and a response can be sent with
HandleHttpResponse.
On Tue, Nov 6, 2018 at 4:52 PM Vijay Chhipa <vc...@apple.com> wrote:
>
> Hello
>
> I would like to create a nar bundle that can serve up some content, I would like this to be outside of the secure NiFI web context. Essentially it has nothing to do with the "https://<server>:<port>/nifi" and the nifi.properties
>
> This would be a unsecured endpoint accessible from the host thats running NiFi.
> http:/localhost:8089/blabla
>
> Essentially, my nar would be running a Jetty server other than the NiFi Jetty server
>
> Any technical issues with this approach ( obviously there is a security concerns but apart from that)
>
> Thanks
>
> Vijay
>
>
>
>
>