Blaze-Persistence News

Stories, news and announcements regarding Blaze-Persistence

Picture of Christian Beikov

Blaze-Persistence 1.3.0 Release

I’m proud to announce that Blaze-Persistence version 1.3.0 is finally done!

It took so much longer than initially planned, mostly because of the great feedback we received that we simply deemed to be too important to be deferred. We felt that 1.3.0 would only be a partial solution without these fixes and features, so we decided to get those features in before releasing.

The most notable features and bug fixes are:

  • #667 Validate equals/hashCode implementations of JPA managed types used in entity views to avoid errors due to wrong implementations

  • #571 Support binding embeddables and associations using compound or foreign keys in CTE’s and DML

  • #509 Make use of collection DML API for updatable entity views in flushing

  • #681 Allow updatable entity views to have multiple non-cascading parents

  • #434 Implement creatability validation for creatable entity views ..

(click here to read more)
Picture of Christian Beikov

Talk about Blaze-Persistence at Java Vienna JUG

I will be speaking at the Java Vienna JUG meetup taking place at the Vienna University of Technology on the 3rd of December 2018. The exact location will be published on the meetup page and the talk will start at around 18:25.

The title of the presentation is Entity Views - Not your father’s DTOs and it will be about all the benefits that come with using Entity Views. In the talk I will explain the basic concepts, show some features and present use cases. You can expect a little comparison with other DTO solutions and ..

(click here to read more)
Picture of Christian Beikov

Blaze-Persistence 1.3.0-Alpha3 Release

Blaze-Persistence version 1.3.0-Alpha3 adds many new features and fixes quite a few issues!

Originally, we didn’t even plan to push out another Alpha release, but we added so many new features and fixed quite a few annoying bugs, that we decided to push out another version instead of letting you wait for the final release.

Unfortunately we had to do some backwards-incompatible changes to the jpa-criteria module as we wrongly made JPA CriteriaQuery dependent on an EntityManager which prevented caching. The only difference is that the EntityManager will now have to be passed to a createCriteriaBuilder method that was added to the JPA extension interface BlazeCriteriaQuery instead of passing it during query creation via the BlazeCriteria utility class.

To support varying page sizes and thus also offsets that aren’t calculatable based on the page and pageSize, we introduced new constructors for KeysetPageRequest and changed the semantics of existing ones in the Spring Data and DeltaSpike Data modules. If you constructed KeysetPageRequest manually, please review if the constructor that you use fits your needs. Since the DeltaSpike Data integration brings it’s own PageRequest API, you are also affected of this change when you construct a PageRequest with the DeltaSpike Data integration.

The most notable features and bug fixes are:

  • #612 Initial Hibernate 5.4 support

  • #648 Support for Spring Data 2.1

  • #305 Problems with the use of the VALUES clause and parameters in the select clause have been fixed

  • #622 Introduced EntityViewSettingProcessor to allow customizing EntityViewSetting used in Spring Data repositories ..

(click here to read more)
Picture of Christian Beikov

Blaze-Persistence 1.3.0-Alpha2 Release

Blaze-Persistence version 1.3.0-Alpha2 adds a few new features but mainly has focused on bug fixes!

The main features are the support for the new EMBEDDING_VIEW function in entity views, that finally allows to refer to the entity relation of a view that embeds a SubqueryProvider or CorrelationProvider, but also in case of simple subviews. Giovanni Lovato did his first PR and added support for passing entity view optional parameters to spring data repository methods via @OptionalParam, thank you for that!

A few other notable changes and fixes

  • #421 Allow the use of OUTER and macros for subquery correlation joins

  • #597 Smoothen support for associations in embeddables especially in updatable entity views

  • #601 Fix problems in entity views with SELECT fetching of entities with embedded ids

  • #602 Fix problems in entity views with SUBSELECT fetching when subview uses named parameters multiple times

  • #608 Omit null precedence ..

(click here to read more)
Picture of Christian Beikov

Blaze-Persistence 1.2.1 and 1.3.0-Alpha1 Release

Here comes version 1.2.1 containing a lot of fixes and 1.3.0-Alpha1 containing new API methods that allow to make use of Hibernate Envers entities with Blaze-Persistence!

Thanks for all the testing and issue reports to Giovanni Lovato who helped a lot with getting Blaze-Persistence to work properly with Hibernate Envers! A big thank you also goes out to Jan-Willem Gmelig Meyling who worked on the support for natural ids and a few other issues! When he finishes working on a the join avoidance optimization for natural ids in Hibernate we are going ..

(click here to read more)
Picture of Christian Beikov

Blaze-Persistence 1.2.0 Release

We did it! Version 1.2.0 is finally released!

It took a while to get everything right, but now we finally support Java 9 & 10. Updatable entity views now support orphan deletion, the PaginatedCriteriaBuilder API allows to omit the count query and we fixed a few bugs that our ever growing user base reported. I’d like to thank everyone contributing to this excellent release and personally thank Mahesh for helping me polish the Spring Data integration. He reported quite a few bugs and gave a lot of feedback based on his experience of integrating Blaze-Persistence into his project.

As always, we recommend you to update to the latest version especially since we fixed a few bugs that might bite you unexpectedly, like

  • #544 MacroConfiguration doesn’t implement the comparator for macros correctly

Thanks for the throughout analysis on this Jan-Willem Gmelig Meyling! ..

(click here to read more)
Picture of Christian Beikov

Blaze-Persistence 1.2.0-Alpha6 Release

Weren’t expecting a new release so fast? Me neither, but as it turns out, the Spring Data and DeltaSpike Data integrations didn’t work quite as expected in real projects, only in our example projects. Our integration essentially replaces the repository implementation of Spring Data and DeltaSpike Data respectively. The implementation unfortunately was lacking the write related methods though, so this lead to startup errors when you were extending from the usual interfaces.

The bug fix for this problem

  • #540 Impossible to use Spring Data’s JpaRepository or DeltaSpike Data’s EntityRepository

was done quite fast as the underlying problem was merely an oversight.

Picture of Christian Beikov

Blaze-Persistence 1.2.0-Alpha5 Release

We promised you more frequent releases, and here they are! Although we said that this will be the last Alpha release for 1.2.0, we decided that we need another round since we couldn’t get everything done yet for which we already had an API. One of our main concerns was Java 9 compatibility related to split packages. So we moved a few things around and gave all modules proper Automatic-Module-Name manifest entries. We also spent quite some time on supporting REST technologies and providing examples which, but it was worth it! Overall, we have quite a few nice features for you

  • #323 Support for fetch strategies for non-correlated mappings

  • #51 Add method to enable query result caching

  • #450 Updatable attributes by default now allow all known subtypes that don’t introduce cycles, rather than requiring the user to specify all allowed subtypes

  • #209 Support for compiling and running on JDK 9 & 10 & 11-EA

  • #538 Spring Data 2.0 and DeltaSpike 1.8 support

  • #535 Spring Data Rest integration offering first class keyset pagination support

  • #496 DeltaSpike Data Rest integration offering ..

(click here to read more)
Picture of Christian Beikov

Blaze-Persistence 1.2.0-Alpha4 Release

It has been too long since the last official release, almost a year! But don’t think we didn’t do anything in this time! Many new and shiny features are part of this release.

  • #328 DeltaSpike Data integration

  • #361 Entity view attribute converter support

  • #414 Updatable Entity views

  • #419 Improved keyset pagination implementation

  • #430 Entity view equality now based on entity type rather than entity view type

  • #443 DML support for entity collections

  • #496 Entity View convenience methods ..

(click here to read more)
Picture of Christian Beikov

Blaze-Persistence 1.2.0-Alpha3 Release

This release which should already be available on Maven Central includes some very hot features

  • #406 Spring Boot 1.5.0 support

  • #375 Entity views support primitive types now

  • #357 Allow to refer to this in entity view mappings

  • #351 Spring Data JPA Specification support

  • #312 Treat support and inheritance mapping support for entity views

  • #257 Support for specifying fetches ..

(click here to read more)
Picture of Christian Beikov

Blaze-Persistence 1.2.0-Alpha2 Release

This release includes some very hot features

  • #264 + #261 Spring and Spring Data Integrations for entity views are available now

  • #202 Entity views can now have subviews for map keys

  • #275 + #303 Embeddable support in CTEs and VALUES clause

  • #298 Using an undefined CTE class now results in a meaningful exception

  • #108 Entity views can now correlate unrelated entities with 3 different strategies

  • #183 Primitive type support in Entity Views ..

(click here to read more)
Picture of Christian Beikov

Blaze-Persistence 1.2.0-Alpha1 Release

This release includes some very hot features

  • #222 Entity joins support in core has landed!

  • #202 Entity views can now reference their view root via VIEW_ROOT

  • #218 Entity views can also now have a custom root defined when applying the setting

  • #211 Parser implements negation optimizations

  • #200 Parser supports literals with type suffix

  • #193 Subqueries can use correlated paths now

  • #205 IN-predicate API of core supports Collection now instead of List

  • #192 Various API changes for supporting multi-subquery expressions

  • #108 Entity views can now correlate separate queries as subviews to an entity view

  • #120 Treat support was added

  • #181 Support for the VALUES clause has been added

  • #183 JPA Criteria API ..

(click here to read more)
Picture of Christian Beikov

Blaze-Persistence 1.1.1 Release

This release includes some bugfixes for the core module

  • #215 PaginatedCriteriaBuilder workaround for composite id entities

  • #197 Hibernate integration issue

This will probably be the last release for the 1.1 branch as 1.2 is approaching the first Alpha release which is quite stable from a user perspective. We recommend updating to 1.2.0-Alpha1 directly.


Older posts are available in the archive.