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

Solace masterclass codelab #315

Merged
merged 73 commits into from
May 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
73 commits
Select commit Hold shift + click to select a range
74e19f2
Initial version of SAP AEM Integration - day 4
Oct 12, 2023
e43c76b
Add files via upload
ScottDillonSol Oct 13, 2023
89e28ad
Update sap-aem-int-day-4.md
ScottDillonSol Oct 13, 2023
a1ddb19
updated codelabs folder
Oct 13, 2023
e3b150c
Update sap-aem-int-day-4.md
ScottDillonSol Oct 16, 2023
43724e2
Add files via upload
ScottDillonSol Oct 16, 2023
3e1bd1a
Update sap-aem-int-day-4.md
ScottDillonSol Oct 16, 2023
07d5347
Merge remote-tracking branch 'origin/master' into sap-aem-int-day-4
Oct 16, 2023
ccb0c97
updated exported codelabs
Oct 16, 2023
bda70bf
Merge remote-tracking branch 'origin/sap-aem-int-day-4' into sap-aem-…
Oct 16, 2023
9d27227
updated exported codelabs
Oct 16, 2023
f7db5cc
Update sap-aem-int-day-4.md
ScottDillonSol Oct 17, 2023
9459c2e
Add files via upload
ScottDillonSol Oct 17, 2023
1c6a727
Update sap-aem-int-day-4.md
ScottDillonSol Oct 17, 2023
9e36e75
Add files via upload
ScottDillonSol Oct 17, 2023
3343f42
Update sap-aem-int-day-4.md
ScottDillonSol Oct 17, 2023
faafe6c
Add files via upload
ScottDillonSol Oct 17, 2023
664dbf6
Add files via upload
ScottDillonSol Oct 17, 2023
5c2e34f
updated files
Oct 17, 2023
c9051e8
Update sap-aem-int-day-4.md
ScottDillonSol Oct 17, 2023
aaff33d
Add files via upload
ScottDillonSol Oct 17, 2023
bbf3769
Update sap-aem-int-day-4.md
ScottDillonSol Oct 18, 2023
52514c8
Update sap-aem-int-day-4.md
ScottDillonSol Oct 18, 2023
a783b58
Add files via upload
ScottDillonSol Oct 18, 2023
501fb8e
Update sap-aem-int-day-4.md
ScottDillonSol Oct 18, 2023
b673b0c
Updated codelabs based on Scott's changes
Oct 18, 2023
02705db
Merge remote-tracking branch 'origin/master' into sap-aem-int-day-4
Oct 18, 2023
0d50119
Update sap-aem-int-day-4.md
ScottDillonSol Oct 18, 2023
76b8e10
Add files via upload
ScottDillonSol Oct 18, 2023
56ecf2e
Update sap-aem-int-day-4.md
ScottDillonSol Oct 18, 2023
01d5b72
Add files via upload
ScottDillonSol Oct 18, 2023
f49476d
Updated codelabs with latest content
Oct 19, 2023
bbe32e5
Update sap-aem-int-day-4.md
ScottDillonSol Oct 20, 2023
b76445d
Add files via upload
ScottDillonSol Oct 20, 2023
a30ab7e
Add files via upload
ScottDillonSol Oct 20, 2023
dae95b4
Update sap-aem-int-day-4.md
ScottDillonSol Oct 20, 2023
861895d
Update sap-aem-int-day-4.md
ScottDillonSol Oct 20, 2023
e3fd135
Add files via upload
ScottDillonSol Oct 20, 2023
3cfdaa6
Update sap-aem-int-day-4.md
ScottDillonSol Oct 20, 2023
c4571aa
Merge remote-tracking branch 'origin/master' into sap-aem-int-day-4
Oct 20, 2023
e5db1b1
Updated codelabs based on Scott's changes
Oct 20, 2023
832d9fd
Update sap-aem-int-day-4.md
ScottDillonSol Oct 20, 2023
2ae7b1c
Updated codelabs based on Scott's changes
Oct 20, 2023
ee00ae3
Merge remote-tracking branch 'origin/master' into sap-aem-int-day-4
Nov 23, 2023
1354b67
Updated codelabs for SAP AEM INT-Day-4 to include Neha's changes
Nov 23, 2023
57aa6e5
Updated codelabs for SAP AEM INT-Day-4 to include Neha's changes
Nov 24, 2023
3400c8b
Updated codelabs for SAP AEM INT-Day-4 to include Neha's changes
Nov 24, 2023
3764cd0
Merge branch 'master' into sap-aem-int-day-4
HariRangarajan-Solace Nov 24, 2023
c515352
Add files via upload
ScottDillonSol Nov 27, 2023
b028df8
Update sap-aem-int-day-4.md
ScottDillonSol Nov 27, 2023
4d21dc0
Add files via upload
ScottDillonSol Nov 27, 2023
96a8a1b
Add files via upload
ScottDillonSol Nov 27, 2023
0a9e12b
Update sap-aem-int-day-4.md
ScottDillonSol Nov 27, 2023
857e85d
Merge remote-tracking branch 'origin/master' into sap-aem-int-day-4
Nov 27, 2023
487c196
Updated codelabs SAP AEM INT-Day-4 to include Scott's changes
Nov 27, 2023
3cd627a
Merge branch 'master' into sap-aem-int-day-4
TamimiGitHub Nov 28, 2023
08efc0f
Add files via upload
ScottDillonSol Dec 5, 2023
21f9ebf
Updating Day-4 with Master (#296)
HariRangarajan-Solace Dec 5, 2023
aa5b106
Merge remote-tracking branch 'origin/master' into sap-aem-int-day-4
Dec 5, 2023
f22e598
Merge remote-tracking branch 'origin/sap-aem-int-day-4' into sap-aem-…
Dec 5, 2023
c2d7de5
Updated Solace-masterclass codelabs with basis structure and content
Feb 27, 2024
3ee3c78
Updated Solace-masterclass codelabs with content for section-1
Feb 29, 2024
d126aef
Updated Solace masterclass content
Mar 22, 2024
0afb9cb
Updated Solace masterclass content
Mar 22, 2024
b795c5f
Updated Solace masterclass content
Mar 25, 2024
43f9f7c
Merge remote-tracking branch 'origin/master' into Solace-Masterclass-…
Mar 25, 2024
16b1ff3
Updated Solace masterclass content for Marc's review comments
Mar 27, 2024
eef78cd
Updated Solace masterclass content to fix minor content and formattin…
Mar 28, 2024
4492edd
Updated Solace masterclass content to formatting issues
Mar 28, 2024
67ac104
Updated Solace masterclass for multiple review comments
Apr 5, 2024
27aa513
Updated Solace masterclass for Marc's final review comments
Apr 5, 2024
f67f0ee
Merge remote-tracking branch 'origin/master' into Solace-Masterclass-…
May 21, 2024
f408ec1
Updated Solace masterclass for removing postman import
May 21, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified markdown/solace-masterclass/img/banking-domain-usecase/banking-industry.png
100755 → 100644
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
104 changes: 27 additions & 77 deletions markdown/solace-masterclass/solace-masterclass.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ summary: This Codelab describes the whole
technical hands-on part of the Solace Masterclass session
id: solace-masterclass
tags: Solace-Masterclass, Java, Springboot
categories:
categories: solace
environments: Web
status: Published
feedback link: https://github.com/SolaceDev/solace-dev-codelabs/blob/master/markdown/solace-masterclass
Expand All @@ -14,7 +14,7 @@ feedback link: https://github.com/SolaceDev/solace-dev-codelabs/blob/master/mark

![Solace Masterclass](img/commons/Solace-masterclass.jpeg)

This Codelab contains the technical hands-on section of the **Solace Masterclass : Implementing
This Codelab contains the technical hands-on section of the **Solace Masterclass: Implementing
Event-Driven-Architectures**
The participants of this masterclass will be implementing this Codelab in the Strigo virtual machine provided as a part
of the masterclass session.
Expand Down Expand Up @@ -47,14 +47,16 @@ Due to time limit considerations, we will be implementing only a selected subset

## Solace Cloud Account and broker provisioning

### Step 1 : Solace Cloud Account
### Step 1: Solace Cloud Account

In case you do not have an active Solace cloud account, you can register for one via the
link : [Solace trial account registration](https://console.solace.cloud/login/new-account?product=event-streaming)
link: [Solace trial account registration](https://console.solace.cloud/login/new-account?product=event-streaming)
You can log in to the newly created Solace cloud account using the
link : [Solace Cloud Account](https://console.solace.cloud/home?login=true)
Once you have registered and logged in to the Solace cloud account, you can get started with provisioning a Solace
developer grade broker which will be used in the next sections.

### Step 2 : Solace broker provisioning
### Step 2: Solace broker provisioning

- Once you are logged in to the Solace cloud portal with the details you registered with , you should see something like
this:
Expand Down Expand Up @@ -110,83 +112,30 @@ The Event Portal is a cloud-based tool that simplifies the design of your event-
Event Portal, you can:

* Define and track relationships between applications in a highly decoupled EDA.
* Easily create and manage events using a user-friendly GUI.
* Create and manage events using a user-friendly GUI.

In summary, the Event Portal streamlines event management, making it an essential part of your EDA toolkit.

### Step 1 : Import Postman objects
### Step 1 : Import Event Portal designs

In the virtual machine box provided to you for this masterclass session, a GitHub repository has been checked out.

- Navigate to the folder in a file explorer : `/home/ubuntu/GitHub/solace-masterclass-code/postman-collections`
- Start Postman application from the desktop by right-clicking on the Postman icon and click _Execute_
- Click on the **Workspaces** button the menu which will display a list of all workspaces under this account. Create a
new one for you to work with for this hands-on exercise as below :
![create-workspace.png](img/commons/create-workspace.png)
- Select **Blank workspace**, enter your first name and **Only me** as the access type and click **Create** as below :
![blank-workspace-step1.png](img/commons/blank-workspace-step1.png)
![blank-workspace-step2.png](img/commons/blank-workspace-step2.png)

> aside negative Please make sure to select and work only within this workspace as this is a shared account, and you
> can access and disrupt other's activities mistakenly

- Import the file with the name **Solace-masterclass-collection.json** as a Postman collection from the location:
/home/ubuntu/GitHub/solace-masterclass-code/postman-collections
![postman-collection-import.png](img/commons/postman-collection-import.png)

- Once imported, you should be able to see a Postman collection as below :
![collection-imported.png](img/commons/collection-imported.png)
- Similarly, import the file with the name **Solace-masterclass-environment.json** from the location:
/home/ubuntu/GitHub/solace-masterclass-code/postman-collections
![Postman-environment-import.png](img/commons/Postman-environment-import.png)

- Once imported, you should be able to see a Postman environment as below :
![environment-imported.png](img/commons/environment-imported.png)

### Step 2 : Create Event Portal token

Follow the steps detailed in the link over
here: [Creating an API Token](https://docs.solace.com/Cloud/ght_api_tokens.htm#Create)
Make sure that you enable the following permissions during the process :

- Event Portal 2.0
- Designer - Read and Write
- Runtime Event Manager - Read and Write
- API Management / Dev Portal - Read and Write
- Event Portal—Read and Write
- Environments—Read and Write
- Account Management—Read and Write
Below are some screenshots of the required permissions :
![ep-token-rights-1.png](img/commons/ep-token-rights-1.png)
![ep-token-rights-2.png](img/commons/ep-token-rights-2.png)
![ep-token-rights-3.png](img/commons/ep-token-rights-3.png)

> aside negative **Keep this token safe as it will not be available again**
- From the Solace cloud account screen, click on the **Designer** button and enter the Event Portal's Designer page as
below : ![ep-designer-button.png](img/commons/ep-designer-button.png)
- Click on the **Import Application Domains** button by clicking on the three dots in the top right corner as below :
![ep-app-domain-import.png](img/commons/ep-app-domain-import.png)
- A file selector dialog box will be displayed so that you can select the application domain file of your choice.
- Navigate to the folder : `/home/ubuntu/GitHub/solace-masterclass-code/ep-app-domains`
- As described in **Section 2 - Use case introduction**, you can choose to implement from multiple industry domains.
Based on your choice, you can select one of the two domains files as below :
- Banking Industry : `Acme_Bank_App_Domain.json`
- Retail industry : `Acme_Retail_App_Domain`
![ep-app-domain-files.png](img/commons/ep-app-domain-files.png)
- Select on a file and click **Open**, this will result in the application domain being imported as below :
![ep-app-domain-imported.png](img/commons/ep-app-domain-imported.png)

### Step 3 : Import Event Portal design
> aside positive you can import as many application domains as you wish,
> but for time considerations its advisable to choose one example for implementation.

- Open the Postman **environment** that you had imported earlier.
- Paste the token created earlier into the Current value column of the **api_key** variable.
![ep-token-setup.png](img/commons/ep-token-setup.png)
- As described in **Section 2 - Use case introduction**, you can choose to implement from multiple industry domains.
Based on your choice, change the value of the variable
**epSampleDomain** to refer to the industry that you want to work with You can choose any of the below values :
- Retail Industry : `masterclass-retail`
- Banking industry : `acme-bank`

> aside negative **Please make sure to copy the above codes carefully**.

- Make sure to save the changes to the environment file by clicking on the **Save** button as shown :
![postman-env-save.png](img/commons/postman-env-save.png)
- Open the Postman **collection** that you had imported earlier (as marked by the red bubble numbered 1)
- Choose the **Training Environment Definition** from the dropdown (as marked by the red bubble numbered 2)
- Click on the **Runs** tab and then **Run Collection** button as below (as marked by the red bubble numbered 3)
![collection-execution.png](img/commons/collection-execution.png)
- Click on the **Run Establish Demo Environment** button on the right side without changing any of the scripts or order
as below :
![run-collection.png](img/commons/run-collection.png)
- Once the script has finished execution, switch over to the Solace Cloud Console and Open Event Portal. You should be
able to see the objects from your selected industry as below :
- Inside the application domain, you should be able to see the objects from your selected industry as below :
- Retail industry :
![retail-domain-ep.png](img/retail-domain-usecase/retail-domain-ep.png)
- Banking industry :
Expand Down Expand Up @@ -1012,7 +961,8 @@ stops all transactions on that account number immediately.
});
}
```
> aside positive This code snippet builds a handler for processing the events attracted to the queue **accounts-suspended**
> aside positive This code snippet builds a handler for processing the events attracted to the queue *
*accounts-suspended**

* Open the file **com.solace.acme.bank.corebanking.service.AccountsEventProcessor.java** in the same project :
* Add in the following method in the file :
Expand Down
Loading