Skip to content

VoHongHuy/okta-spring-boot-react-crud-example

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JUG Tours with Spring Boot and React

This example app shows how to create a Spring Boot API and CRUD (create, read, update, and delete) its data with a React app.

Please read Use React and Spring Boot to Build a Simple CRUD App to see how this app was created.

Prerequisites: Java 8, Node.js 8+, and Yarn. You can use npm instead of Yarn, but you'll need to translate the Yarn syntax to npm.

Okta has Authentication and User Management APIs that reduce development time with instant-on, scalable user infrastructure. Okta's intuitive API and expert support make it easy for developers to authenticate, manage, and secure users and roles in any application.

Getting Started

To install this example application, run the following commands:

git clone https://github.com/oktadeveloper/okta-spring-boot-react-crud-example.git spring-react
cd spring-react

This will get a copy of the project installed locally. To install all of its dependencies and start each app, follow the instructions below.

To run the server, run:

./mvnw spring-boot:run

To run the client, cd into the app folder and run:

yarn && yarn start

You can also run everything using Maven:

./mvnw -Pprod

Create an Application in Okta

You will need to create an OIDC Application in Okta to get your values to perform authentication.

Log in to your Okta Developer account (or sign up if you don’t have an account) and navigate to Applications > Add Application. Click Web, click Next, and give the app a name you’ll remember. Specify http://localhost:8080/login/oauth2/code/okta as a Login redirect URI. Click Done, then click Edit to edit General Settings. Add http://localhost:3000 and http://localhost:8080 as Logout redirect URIs, then click Save.

Server Configuration

Set the issuer and copy the clientId and clientSecret into src/main/resources/application.yml.

NOTE: The value of {yourOktaDomain} should be something like dev-123456.oktapreview.com. Make sure you don't include -admin in the value!

spring:
  profiles:
    active: @spring.profiles.active@
  security:
    oauth2:
      client:
        registration:
          okta:
            client-id: {clientId}
            client-secret: {clientSecret}
            scope: openid email profile
        provider:
          okta:
            issuer-uri: https://{yourOktaDomain}/oauth2/default

Links

This example uses the following open source libraries:

Help

Please post any questions as comments on the blog post, or visit our Okta Developer Forums. You can also email developers@okta.com if you'd like to create a support ticket.

License

Apache 2.0, see LICENSE.

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 55.1%
  • Java 37.6%
  • HTML 5.6%
  • CSS 1.7%