Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/UOC/java-lti-1.3-provider-example
https://github.com/UOC/java-lti-1.3-provider-example
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/UOC/java-lti-1.3-provider-example
- Owner: UOC
- License: mit
- Created: 2019-12-04T10:52:32.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2022-11-18T14:38:54.000Z (about 2 years ago)
- Last Synced: 2024-08-03T18:19:53.452Z (6 months ago)
- Language: Java
- Size: 337 KB
- Stars: 9
- Watchers: 8
- Forks: 12
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-lti - Sample Tool Provider in Spring Boot
- awesome-lti - Sample Tool Provider in Spring Boot
README
# Java LTI 1.3 Example
This is an working example webapp for a LTI Advantage Tool using the LTI related libraries of UOC.
It has a main controller, which displays general info about the LTI launch:
* User
* Context
* Which services are available
* List of names and roles of the context if the NameRoleService is available
* Access to Assignment and Grade service (see below)Also has a DeepLink controller (`edu.uoc.elearn.lti.provider.controller.DeepLinkController`) for managing
DeepLinking launches.Last but not least, it has an Assignment and Grade Service client for managing LineItems, viewing LineItems
results and Score users to line items.## About
The application is very simple. Controllers are in the `edu.uoc.elearn.lti.provider.controller` package.
Configuration of the LTI Tool is made as follows:* Beans with tool's implementations are defined in the `edu.uoc.elearn.lti.provider.config.LTIConfig`
class (See https://github.com/UOC/java-lti-1.3-core and https://github.com/UOC/java-lti-1.3-jwt for more info)* Tool definition is made using parameters from `application.properties` and `application-profile.yml` (for each
spring profile).You'll notice that these files has values. It has values for [IMS reference implementation](https://lti-ri.imsglobal.org)
and [IMS Certification](https://ltiadvantagevalidator.imsglobal.org/ltiadv/index.html).
Keys defined in `application.properties` refers to the UOC's tool and platform in [IMS reference implementation](https://lti-ri.imsglobal.org)
and can be used.## Install
You'll need to set your maven installation to work with Github packages, following https://help.github.com/en/packages/using-github-packages-with-your-projects-ecosystem/configuring-apache-maven-for-use-with-github-packages#authenticating-to-github-packages
Repository info:
```xml
github-uoc-lti-core
GitHub UOC Apache Maven Packages
https://maven.pkg.github.com/uoc/java-lti-1.3-core
github-uoc-lti-jwt
GitHub UOC Apache Maven Packages
https://maven.pkg.github.com/uoc/java-lti-1.3-jwt
github-uoc-lti
GitHub UOC Apache Maven Packages
https://maven.pkg.github.com/uoc/java-lti-1.3
github-uoc-lti-springboot
GitHub UOC Apache Maven Packages
https://maven.pkg.github.com/uoc/spring-boot-lti-advantage
```Once set, install it using maven:
```bash
./mvnw install
```Or run using:
```bash
./mvnw spring-boot:run
```## See also
* https://github.com/UOC/java-lti-1.3-core
* https://github.com/UOC/java-lti-1.3-jwt
* https://github.com/UOC/java-lti-1.3
* https://github.com/UOC/spring-boot-lti-advantage