Hi Adobe Community,
Trying to integrate aws dynamoDB to update records in dynamoDB. we are using awsSDK 2.x version to integrate it, converted aws jar to OSGI jar & resolve the dependencies, but still it throws nullpointer exception on the DynamoDBClient object when called in the OSGI service class. Want to check if anyone had did dynamoDB integration before & help with the steps or help on resolve on instantiation of DynamoDBClient in the service (@reference is not working directly). Thanks in advance!
Views
Replies
Total Likes
hi @Sai_Krishna_1404, I don't have experience with DynamoDBClient but I can recommend this:
<!-- https://mvnrepository.com/artifact/org.apache.servicemix.bundles/org.apache.servicemix.bundles.aws-java-sdk2 -->
<dependency>
<groupId>org.apache.servicemix.bundles</groupId>
<artifactId>org.apache.servicemix.bundles.aws-java-sdk2</artifactId>
<version>2.29.6_1</version>
</dependency>
It's provided by Apache Servicemix-bundles which offers OSGI-fied versions of many famous packages as you can see here.
Views
Replies
Total Likes
Thanks for the response @giuseppebag , tried adding this dependency but this doesn't seems to be downloading the OSGI supported version, when I tried to install this version, it is throwing it doesn't have Symbolic bundle name
Views
Replies
Total Likes
Please ensure the jar is embedded into the installation package via
filevault-package-maven-plugin
You can use as a reference this code
<plugin>
<groupId>org.apache.jackrabbit</groupId>
<artifactId>filevault-package-maven-plugin</artifactId>
<extensions>true</extensions>
<inherited>false</inherited>
<configuration>
<showImportPackageReport>false</showImportPackageReport>
<properties>
<cloudManagerTarget>none</cloudManagerTarget>
</properties>
</configuration>
<executions>
<execution>
<id>default-generate-metadata</id>
<configuration>
<embeddedTarget>/apps/core/wcm/install</embeddedTarget>
<embeddeds>
<embedded>
<groupId>${project.groupId}</groupId>
<artifactId>core.wcm.components.core</artifactId>
<filter>true</filter>
<isAllVersionsFilter>true</isAllVersionsFilter>
</embedded>
<embedded>
<groupId>${project.groupId}</groupId>
<artifactId>core.wcm.components.extensions.amp</artifactId>
<filter>true</filter>
<isAllVersionsFilter>true</isAllVersionsFilter>
</embedded>
</embeddeds>
<subPackages>
<subPackage>
<groupId>${project.groupId}</groupId>
<artifactId>core.wcm.components.content</artifactId>
<classifier>~cloud</classifier>
<filter>true</filter>
<isAllVersionsFilter>true</isAllVersionsFilter>
</subPackage>
<subPackage>
<groupId>${project.groupId}</groupId>
<artifactId>core.wcm.components.config</artifactId>
<filter>true</filter>
<isAllVersionsFilter>true</isAllVersionsFilter>
</subPackage>
<subPackage>
<groupId>${project.groupId}</groupId>
<artifactId>core.wcm.components.extensions.amp.content</artifactId>
<classifier>~cloud</classifier>
<filter>true</filter>
<isAllVersionsFilter>true</isAllVersionsFilter>
</subPackage>
</subPackages>
<packageType>container</packageType>
</configuration>
</execution>
</executions>
</plugin>
from here. You can also check how the AEM archetype does it by creating a new temporary project which will leverage this all/pom.xml file.
Views
Replies
Total Likes
Views
Likes
Replies