Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CXF-7069] Finish JPACodeDataProvider implementation #173

Closed
wants to merge 1,071 commits into from

Conversation

gonzalad
Copy link
Contributor

This PR resolves the following issues :

  • shared em between all clients.
  • error when persisting BearerAccessToken (we annotated OidcUserSubject attributes with @lob)

JPACodeDataProvider has now :

  • a resource-local entity manager version.
    In this version, transactions are managed by JPACodeDataProvider.
  • a container-managed entity manager version (CMT).
    In this version, transactions are managed by the container (i.e. Spring).

Tests have been added to check both Hibernate and OpenJPA compliance.

Bad news is that overall performance is not quite good.
Here's the number of request issued for basic OIDC / Oauth2 interactions :

|                                      |  Hibernate CMT | OpenJPA CMT      |
| Authorization code flow request      |     1          |      8           |
|                                      | S=1            | S=8              |
| Authentication                       |     1          |      8           |
|                                      | S=1            | S=8              |
| Grant                                |     9 (5 real) |     16           |
|                                      | S=1,I=7,U=1    | S=8,I=7,U=1      |
| Token Request                        |    15 (11 real)|     25           |
|                                      | S=2,I=9,U=1,D=3| S=11,I=9,U=1,D=4 |
| Token Introspection                  |    2           |     14           |
|                                      | S=2            | S=14             |

Kai Rommel and others added 30 commits June 7, 2016 14:28
…tch from David Karlsen applied with thanks, This closes apache#142
…, patch from Gary Gregory applied with thanks
… property condition as agreed and also updating a scan demo
…re that is build in package phase for -Pfastinstall to work.

# Conflicts:
#	systests/transport-undertow/pom.xml
… operation name, removing the optiona query params
sberyozkin and others added 27 commits August 30, 2016 13:08
…asePath mismatch, with thanks to Andriy Redko
…ry can get a useful Connection

(cherry picked from commit 2ca0621)
…upport URL-encoded paths correctly, patch from Tadayoshi Sato applied, This closes apache#164
…er by default, making TikaContent serializable
… payload, patch from Daniel Baumann applied, This closes apache#163
JPAOAuthDataProvider had the following issues :
 * it is a singleton and uses a shared entityManager for all clients,
   so we should inject EntityManagerFactory and not EntityManager.
 * Error when creating a BearerAccessToken during OIDC authorization code flow :
   insufficient column size for idToken storage.

This commit fixes both issues and add :
 * CMT version of JPACodeDataProvider for container managed
   entityManager
 * Hibernate and OpenJPA unit tests
Some tweaks to use Open JPA :
 * jpql modification (JPA compliance)
 * ensure entity associations are managed before merging/persisting.
 * added runtime bytecode weaving
@gonzalad
Copy link
Contributor Author

gonzalad commented May 4, 2017

Closed as too old pr

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet