nifi-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bryan Bende <bbe...@gmail.com>
Subject Re: how to set version for NIFI customized Processor?
Date Mon, 22 May 2017 13:06:55 GMT
I think the issue is that your NAR is probably including
DBCPConnectionPool, rather than depending on the API.

You could verify this by looking at the bundled dependencies in your
NAR nifi_home/work/nar/extensions/<your-nar>-unpacked/META-INF/bundled-dependencies/,
you shouldn't have any DBCP related JARs in there, you should be
getting them at runtime through NAR dependencies.

Since DBConnectionPool is part of standard services, you should have
the following:

In your processors pom.xml you would have a provided dependency on the
service API:

<dependency>
            <groupId>org.apache.nifi</groupId>
            <artifactId>nifi-dbcp-service-api</artifactId>
            <version>1.2.0</version>
            <scope>provided</scope>
</dependency>

In your NAR pom.xml you have a NAR dependency on the API NAR:

<dependency>
      <groupId>org.apache.nifi</groupId>
      <artifactId>nifi-standard-services-api-nar</artifactId>
      <version>1.2.0</version>
     <type>nar</type>
</dependency>

After doing this you should see three new entries in the MANIFEST file
that show the Nar-Dependency-Group, Nar-Dependency-Id, and
Nar-Dependency-Version.

Let us know if this works.

Thanks,

Bryan

On Sun, May 21, 2017 at 9:16 PM, 尹文才 <batman713@gmail.com> wrote:
> Sure, the content is as below:
>
> Manifest-Version: 1.0
> Build-Timestamp: 2017-05-19T14:45:05Z
> Clone-During-Instance-Class-Loading: false
> Archiver-Version: Plexus Archiver
> Built-By: ben
> Nar-Version: 3.0
> Build-Tag: nifi-1.2.0-RC2
> Nar-Id: nifi-DummyDataGeneratorProcessor-nar
> Nar-Group: com.zjrealtech.rdp.ice
> Created-By: Apache Maven 3.3.9
> Build-Jdk: 1.8.0_91
>
>
> 2017-05-19 23:57 GMT+08:00 Bryan Bende <bbende@gmail.com>:
>>
>> Can you provide the contents of the MANIFEST file of your NAR after
>> deploying your updated NAR?
>>
>> The MANIFEST file should be at:
>>
>> nifi_home/work/nar/extensions/<your-nar>-unpacked/META-INF/MANIFEST.MF
>>
>> On Fri, May 19, 2017 at 3:16 AM, 尹文才 <batman713@gmail.com> wrote:
>> > Hi Bryan, I could set a specific version for my customized processor,
>> > but
>> > there's a side effect that the version of NIFI components I referenced
>> > in my
>> > processor are also updated to the same version.
>> > I actually referenced DBCPService in my processor and I set the version
>> > to a
>> > random version 3.0, and DBCPConnectionPool shows as 3.0 in NIFI. is
>> > there
>> > any way to work around this problem? Thanks.
>> >
>> > 2017-05-19 9:04 GMT+08:00 尹文才 <batman713@gmail.com>:
>> >>
>> >> Thanks Bryan and Joe, I managed to set the specific version for my
>> >> processor with the properties.
>> >>
>> >> 2017-05-18 20:50 GMT+08:00 Bryan Bende <bbende@gmail.com>:
>> >>>
>> >>> As Joe mentioned, the default behavior is to use the Maven group,
>> >>> artifact, and version, which will happen by default if you build your
>> >>> NAR with the latest NAR Maven plugin (version 1.2.0 at this time).
>> >>>
>> >>> If you prefer to set different values than the Maven fields, you can
>> >>> override them by specifying the following properties in your NAR's
>> >>> pom.xml:
>> >>>
>> >>> <properties>
>> >>>        <narGroup>org.apache.nifi.overridden</narGroup>
>> >>>        <narId>nifi-overridden-test-nar</narId>
>> >>>        <narVersion>2.0</narVersion>
>> >>>  </properties>
>> >>>
>> >>> Again, you only need to do this if you want your NAR to show up in
>> >>> NiFi differently than your Maven project.
>> >>>
>> >>>
>> >>> On Thu, May 18, 2017 at 8:05 AM, Joe Witt <joe.witt@gmail.com>
wrote:
>> >>> > Just rebuild it with the latest nifi nar maven plugin and it will
>> >>> > get
>> >>> > the version info at that time.
>> >>> >
>> >>> > thanks
>> >>> >
>> >>> > On Thu, May 18, 2017 at 4:20 AM, 尹文才 <batman713@gmail.com>
wrote:
>> >>> >> Thanks Joe, is it possible to set a specific version for a
>> >>> >> customized
>> >>> >> NIFI
>> >>> >> processor and show the version in that processor selection
dialog?
>> >>> >>
>> >>> >> 2017-05-18 10:42 GMT+08:00 Joe Witt <joe.witt@gmail.com>:
>> >>> >>>
>> >>> >>> Hello
>> >>> >>>
>> >>> >>> They will remain unversioned until they are built with
the latest
>> >>> >>> nar
>> >>> >>> plugin.  This is described briefly in the migration guidance
[1].
>> >>> >>>
>> >>> >>> For anything built with the older nifi nar plugin the resulting
>> >>> >>> nar
>> >>> >>> will not have suffiicient bundle data for the framework
to have it
>> >>> >>> support component versioning so that is why it shows as
>> >>> >>> unversioned.
>> >>> >>>
>> >>> >>> [1]
>> >>> >>>
>> >>> >>> https://cwiki.apache.org/confluence/display/NIFI/Migration+Guidance
>> >>> >>>
>> >>> >>> Thanks
>> >>> >>> Joe
>> >>> >>>
>> >>> >>> On Wed, May 17, 2017 at 10:37 PM, 尹文才 <batman713@gmail.com>
wrote:
>> >>> >>> > Hi guys, I have installed NIFI 1.2 and have played
with it for a
>> >>> >>> > while.
>> >>> >>> > One thing I noticed for 1.2 is that when I placed
my previously
>> >>> >>> > written
>> >>> >>> > customized Processor
>> >>> >>> > into 1.2, I could see in the Processor select dialog
there's a
>> >>> >>> > Version
>> >>> >>> > field
>> >>> >>> > for each processor
>> >>> >>> > and the value for my processor is unversioned. So
does anyone
>> >>> >>> > know
>> >>> >>> > how
>> >>> >>> > to
>> >>> >>> > set version for
>> >>> >>> > customized processor? Thanks.
>> >>> >>
>> >>> >>
>> >>
>> >>
>> >
>
>

Mime
View raw message