Skip to content

Commit 0229b64

Browse files
committed
Add steps to run from Tomcat to Java Quickstart
1 parent 9046e3c commit 0229b64

File tree

1 file changed

+59
-7
lines changed

1 file changed

+59
-7
lines changed

articles/active-directory/develop/quickstart-v2-java-webapp.md

Lines changed: 59 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -32,15 +32,15 @@ To run this sample you will need:
3232
>
3333
> ### Option 1: Register and auto configure your app and then download your code sample
3434
>
35-
> 1. Go to the [Azure portal - App registrations](https://portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/RegisteredApps).
35+
> 1. Go to the [Azure portal - App registrations](https://portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/RegisteredApps) quickstart experience.
3636
> 1. Enter a name for your application and select **Register**.
37-
> 1. Follow the instructions to download and automatically configure your new application.
37+
> 1. Follow the instructions in the portal's quickstart experience to download the automatically configured application code.
3838
>
3939
> ### Option 2: Register and manually configure your application and code sample
4040
>
4141
> #### Step 1: Register your application
4242
>
43-
> To register your application and manually add the app's registration information to your solution, follow these steps:
43+
> To register your application and manually add the app's registration information to your application, follow these steps:
4444
>
4545
> 1. Sign in to the [Azure portal](https://portal.azure.com) using either a work or school account, or a personal Microsoft account.
4646
> 1. If your account gives you access to more than one tenant, select your account in the top right corner, and set your portal session to the desired Azure AD tenant.
@@ -52,7 +52,7 @@ To run this sample you will need:
5252
> - Leave **Redirect URI** blank for now, and select **Register**.
5353
> 1. On the **Overview** page, find the **Application (client) ID** and the **Directory (tenant) ID** values of the application. Copy these values for later.
5454
> 1. Select the **Authentication** from the menu, and then add the following information:
55-
> - In **Redirect URIs**, add `https://localhost:8080/msal4jsample/secure/aad` and `https://localhost:8080/msal4jsample/graph/me`.
55+
> - Under the **Web** platform configuration, in the **Redirect URIs**, add `https://localhost:8080/msal4jsample/secure/aad` and `https://localhost:8080/msal4jsample/graph/me`.
5656
> - Select **Save**.
5757
> 1. Select the **Certificates & secrets** from the menu and in the **Client secrets** section, click on **New client secret**:
5858
>
@@ -80,7 +80,7 @@ To run this sample you will need:
8080
8181
> [!div class="sxs-lookup" renderon="portal"]
8282
> Download the project and extract the zip file to a local folder closer to the root folder - for example, **C:\Azure-Samples**
83-
>
83+
>
8484
> To use https with localhost, fill in the server.ssl.key properties. To generate a self-signed certificate, use the keytool utility (included in JRE).
8585
>
8686
> ```
@@ -93,7 +93,7 @@ To run this sample you will need:
9393
> server.ssl.key-alias=testCert
9494
> ```
9595
> Put the generated keystore file in the "resources" folder.
96-
96+
9797
> [!div renderon="portal" id="autoupdate" class="nextstepaction"]
9898
> [Download the code sample](https://github.com/Azure-Samples/ms-identity-java-webapp/archive/master.zip)
9999
@@ -153,8 +153,56 @@ If you are running the web application from an IDE, click on run, then navigate
153153
- *Sign Out*: Signs the current user out of the application and redirects them to the home page.
154154
- *Show User Info*: Acquires a token for Microsoft Graph and calls Microsoft Graph with a request containing the token, which returns basic information about the signed-in user.
155155
156+
##### Running from Tomcat
157+
158+
If you would like to deploy the web sample to Tomcat, you will need to make a couple of changes to the source code.
159+
160+
1. Open ms-identity-java-webapp/pom.xml
161+
- Under `<name>msal-web-sample</name>` add `<packaging>war</packaging>`
162+
- Add dependency:
163+
164+
```xml
165+
<dependency>
166+
<groupId>org.springframework.boot</groupId>
167+
<artifactId>spring-boot-starter-tomcat</artifactId>
168+
<scope>provided</scope>
169+
</dependency>
170+
```
171+
172+
2. Open ms-identity-java-webapp/src/main/java/com.microsoft.azure.msalwebsample/MsalWebSampleApplication
173+
174+
- Delete all source code and replace with the following:
175+
176+
```Java
177+
package com.microsoft.azure.msalwebsample;
178+
179+
import org.springframework.boot.SpringApplication;
180+
import org.springframework.boot.autoconfigure.SpringBootApplication;
181+
import org.springframework.boot.builder.SpringApplicationBuilder;
182+
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
183+
184+
@SpringBootApplication
185+
public class MsalWebSampleApplication extends SpringBootServletInitializer {
186+
187+
public static void main(String[] args) {
188+
SpringApplication.run(MsalWebSampleApplication.class, args);
189+
}
190+
191+
@Override
192+
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
193+
return builder.sources(MsalWebSampleApplication.class);
194+
}
195+
}
196+
```
197+
198+
3. Open a command prompt, go to the root folder of the project, and run `mvn package`
199+
- This will generate a `msal-web-sample-0.1.0.war` file in your /targets directory.
200+
- Rename this file to `ROOT.war`
201+
- Deploy this war file using Tomcat or any other J2EE container solution.
202+
- To deploy on Tomcat container, copy the .war file to the webapps folder under your Tomcat installation and then start the Tomcat server.
203+
204+
This WAR will automatically be hosted at https://localhost:8080/.
156205

157-
158206
> [!IMPORTANT]
159207
> This quickstart application uses a client secret to identify itself as confidential client. Because the client secret is added as a plain-text to your project files, for security reasons it is recommended that you use a certificate instead of a client secret before considering the application as production application. For more information on how to use a certificate, see [Certificate credentials for application authentication](https://docs.microsoft.com/azure/active-directory/develop/active-directory-certificate-credentials).
160208
@@ -169,6 +217,8 @@ MSAL for Java (MSAL4J) is the Java library used to sign in users and request tok
169217

170218
Add MSAL4J to your application by using Maven or Gradle to manage your dependencies by making the following changes to the application's pom.xml (Maven) or build.gradle (Gradle) file.
171219

220+
In pom.xml:
221+
172222
```XML
173223
<dependency>
174224
<groupId>com.microsoft.azure</groupId>
@@ -177,6 +227,8 @@ Add MSAL4J to your application by using Maven or Gradle to manage your dependenc
177227
</dependency>
178228
```
179229

230+
In build.gradle:
231+
180232
```$xslt
181233
compile group: 'com.microsoft.azure', name: 'msal4j', version: '1.0.0'
182234
```

0 commit comments

Comments
 (0)