NoSQL for Java - 2.0
Supported NoSQL databases
The NoSQL for Java extension provides support for the following NoSQL databases:
| Database | Details about how the support is provided |
|---|---|
| Amazon DocumentDB | Amazon DocumentDB support for Java source code |
| Apache Lucene | Apache Lucene support for Java source code |
| Apache Solr | Apache Solr support for Java source code Apache Solr support for Spring Data source code |
| Azure Cosmos DB | Azure Cosmos DB support for Java source code Azure Cosmos DB support for Spring Data source code |
| Couchbase | Couchbase support for Java source code Couchbase support for Spring Data source code |
| CouchDB | CouchDB support for Java source code |
| DynamoDB | DynamoDB support for Java source code DynamoDB support for Spring Data source code |
| Elasticsearch | Elasticsearch support for Java source code Elasticsearch support for Spring Data source code |
| MarkLogic | MarkLogic support for Java source code |
| Memcached | Memcached support for Java source code |
| MongoDB | MongoDB support for Java source code MongoDB support for Spring Data source code |
| Redis | Redis support for Java source code Redis support for Spring Data source code |
Transactions
Transaction support is derived from metamodel concepts used to build CAST Imaging Blueprint and structural transaction flows. Entry Points start transactions; Exit Points include both output/boundary concepts and Data Entities manipulated by transactions.
| Role | Support | Breakdown |
|---|---|---|
| Entry Point | No direct concept type details | |
| Exit Point |
Data Entities
|
Data version: 2.0.3-funcrel
ISO 5055 Structural Rules
Quality support is based on ISO 5055 structural rules available for the selected extension version. Counts are grouped by ISO 5055 characteristic.
| Reliability | Maintainability | Security | Performance Efficiency |
|---|---|---|---|
Data version: 2.0.3-funcrel
Prerequisites
| Required? | Extensions |
|---|---|
| ✅ | com.castsoftware.jee ≥ 1.3.5-funcrel |
| ✅ | com.castsoftware.internal.platform ≥ 0.9.11 |
| ✅ | com.castsoftware.wbslinker ≥ 1.7.19-funcrel |
Download and installation instructions
The extension will not be automatically downloaded and installed. If you need to use it, should manually install the extension.
Handling of NoSQL Java Collection objects for transaction purposes
All NoSQL “Collection” type objects are not classed as having code - i.e. they are codeless and are created via “getcollection” statements. As such, these objects either exist or do not and therefore NoSQL for Java extension does not compute a checksum on them. See https://mongodb.github.io/mongo-java-driver/3.4/driver/tutorials/databases-collections/ for more information. This means that in reality, if a transaction is really changed to add or remove a collection, then the java code itself is changed and so the transaction will be marked as modified. This in turn means that in an environment where the same release of a the NoSQL for Java extension is used for successive analyses, changes in java objects are enough to change the transaction values.
Supported annotations
| Annotation Name | Annotation Class |
|---|---|
@Document |
org.springframework.data.mongodb.core.mapping.Document org.springframework.data.couchbase.core.mapping.Document |
@Container |
org.springframework.data.cosmos.core.mapping.Container |
@EnableCosmosRepositories |
com.microsoft.azure.spring.data.cosmosdb.repository.config.EnableCosmosRepositories |
@EnableDynamoDBRepositories |
org.socialsignin.spring.data.dynamodb.repository.config.EnableDynamoDBRepositories |
@EnableDocumentDbRepositories |
com.microsoft.azure.spring.data.cosmosdb.repository.config.EnableDocumentDbRepositories com.microsoft.azure.spring.data.documentdb.repository.config.EnableDocumentDbRepositories |
@DynamoDBTable |
com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBTable |
@SolrDocument |
org.springframework.data.solr.core.mapping.SolrDocument |
@RedisHash |
org.springframework.data.redis.core.RedisHash |
@Autowired |
org.springframework.beans.factory.annotation.Autowired |
@Qualifie |
org.springframework.beans.factory.annotation.Qualifier |
@Resource |
org.springframework.beans.factory.annotation.Resource |
Data sensitivity
The NoSQL for Java extension is capable of setting a property on specific objects for the following:
- custom sensitivity
- GDPR
- PCI-DSS
See Data Sensitivity for more information. For example:

API Information in Link Properties
You can now view which API created a link directly from its properties.

Framework Information in Collection Object Properties
A new vendor property has been added to the NoSQL Collection to record the framework in use.
