mitreid-connect / OpenID-Connect-Java-Spring-Server

An OpenID Connect reference implementation in Java on the Spring platform.
Other
1.48k stars 765 forks source link

JavaConfig and Spring Boot #670

Open woltere opened 10 years ago

woltere commented 10 years ago

I've made a version using JavaConfig and Spring Boot. The jsp pages have been converted to thymeleaf.

https://github.com/woltere/OpenID-Connect-Java-Spring-Server/tree/feature/IAM-9-convert-upstream-to-spring-boot/openid-connect-server-spring-boot

I'm thinking about writing some integration test to show everything still works, are there already some integration tests available?

jricher commented 10 years ago

Very interesting, we were looking into doing a Java Config for 1.2, so I will tag this issue with that and we'll look into pulling your change set when we do so. Thanks!

We don't have any automated integration testing set up yet but would be very interested in incorporating them into our baseline.

ejwood79 commented 9 years ago

@woltere I'd like to help out with getting things running in Spring Boot - i'm standing up a prototype OIDC server and would really like this to be the implementation we choose to get into production, but it needs to run on Spring Boot. Do you have an example server running with your fork already? Are there things that need to be done to complete the integration?

jricher commented 9 years ago

The current master branch runs off of SpringBoot but it doesn't use JavaConfig.

ejwood79 commented 9 years ago

Thanks @jricher - I'll try to get that going with what I have now.

woltere commented 9 years ago

Hi Eric,

We have our version of openid-connect running on spring boot (1.2.1.RELEASE). I’ve converted the xml configuration to java config and the jsp pages to thymeleaf (see http://docs.spring.io/spring-boot/docs/1.2.1.RELEASE/reference/htmlsingle/#boot-features-jsp-limitations http://docs.spring.io/spring-boot/docs/1.2.1.RELEASE/reference/htmlsingle/#boot-features-jsp-limitations).

The spring boot version can only work with the 1.2-SNAPSHOT (master) you can’t make the 1.1.13 release version work on spring boot.

Everything looks fine but I haven’t tested all features extensively, the DataAPI and DynamicClientRegistration haven’t been tested.

I have a spring-boot project as a replacement for the openid-connect-server-webapp, no changes are needed for the -client, -common and -server projects.

You can see the changes in https://github.com/woltere/OpenID-Connect-Java-Spring-Server/tree/feature/IAM-9-convert-upstream-to-spring-boot https://github.com/woltere/OpenID-Connect-Java-Spring-Server/tree/feature/IAM-9-convert-upstream-to-spring-boot.

I will try and update the project in the coming week, with our latest fixes.

With kind regards, Wolter Eldering

On 26 Feb 2015, at 16:20, Eric Wood notifications@github.com wrote:

@woltere https://github.com/woltere I'd like to help out with getting things running in Spring Boot - i'm standing up a prototype OIDC server and would really like this to be the implementation we choose to get into production, but it needs to run on Spring Boot. Do you have an example server running with your fork already? Are there things that need to be done to complete the integration?

— Reply to this email directly or view it on GitHub https://github.com/mitreid-connect/OpenID-Connect-Java-Spring-Server/issues/670#issuecomment-76195971.

DavidZaki commented 9 years ago

Hey guys, do we have any approximate dates for releasing the Milestone 1.2?

Regards, David Zaki

jricher commented 9 years ago

No exact date, but we're targeting later this spring or perhaps early summer. There are a couple of big clean-ups to the data layer that I really want to have in place before release. These are changes that will really help the upgrade and replication process from 1.2 and beyond, and give us a lot more library flexibility.

DavidZaki commented 9 years ago

Thanks!

praseodym commented 9 years ago

How would Spring Boot replace the current WAR overlay system? It seems like one would need to fork the project in order to extend or replace some of its functionality.

goldenbearkin commented 9 years ago

May I ask the progress of 1.2? I look forward for supporting spring boot and Java config. BTW, you guys are awesome!!!

jricher commented 9 years ago

It's continuing along for a summer release. We had a client have us add UMA support earlier this spring, which is now rolled in to the main project and will be included in 1.2 as well. We're not sure if the JavaConfig is going to be included in 1.2 (due to some issues with the overlays, as @praseodym mentions above), but it does use SpringBoot on startup since it's all based in Spring 4.

We're not switching from JSP to Thymeleaf in 1.2, but we might revisit both of these in early 1.3 work, depending on how other things are looking.

praseodym commented 9 years ago

For reference: spring-projects/spring-boot#1030

sdoxsee commented 9 years ago

@jricher Thanks for your hard work in releasing 1.2. This is a very helpful project. WRT this issue, I haven't seen any references to 'spring-boot' in 1.2. Was I mistaken to think spring-boot would be in 1.2? Thanks!

jricher commented 9 years ago

It uses spring boot in the .war file (you can see that when it starts up), but we haven't set it up to run as a standalone application if that's what you're asking for.

sdoxsee commented 9 years ago

I suppose that a standalone app is what I'm thinking of. I'm used to seeing at least a reference to spring-boot in a pom or something. Thanks for clarifying and for all the good work.

On Mon, Aug 10, 2015 at 7:32 PM Justin Richer notifications@github.com wrote:

It uses spring boot in the .war file (you can see that when it starts up), but we haven't set it up to run as a standalone application if that's what you're asking for.

— Reply to this email directly or view it on GitHub https://github.com/mitreid-connect/OpenID-Connect-Java-Spring-Server/issues/670#issuecomment-129646360 .

Shpota commented 8 years ago

@jricher is there a way to configure Client to work with spring boot with java config? Is there any dev guide on how to do that? Thanks.

Shpota commented 7 years ago

I've managed to make the client part work with azure, spring boot 1.4 with java config. Thanks all.

barretttucker commented 7 years ago

I've customized the OpenID Connect server to use Java config and Spring boot several times for clients. I'm in the process of packaging and neatening that code and making it in a more Spring Boot auto-configure style, with a magic @EnableOpenIDConnectServer and support for bean overriding, etc. Comments and contributions welcome.

https://github.com/simpledynamics/openid-connect-server-spring-boot

Currently supports Spring Boot 1.3.3. MitreId Connect 1.2.3, and Spring Security 4.2.5