Middleware for ui5-server, delivering the content of JAR files.
npm install ui5-middleware-webjars --save-dev
-
classpathFile:
string
the file containing the classpath (list of files, separated with the path delimiter) which can be created via:
mvn clean dependency:build-classpath -Dmdep.cpFile=target/classpath
-
rootPath:
string
the root path to the static resources on your system
-
jarRootPath:
string
, default:META-INF/resources/
the root path in the JAR file containing the static resources
-
debug:
boolean
, default:false
- Define the dependency in
$yourapp/package.json
:
"devDependencies": {
// ...
"ui5-middleware-webjars": "*"
// ...
},
"ui5": {
"dependencies": [
// ...
"ui5-middleware-webjars",
// ...
]
}
As the devDependencies are not recognized by the UI5 tooling, they need to be listed in the
ui5 > dependencies
array. In addition, once using theui5 > dependencies
array you need to list all UI5 tooling relevant dependencies.
- configure it in
$yourapp/ui5.yaml
:
server:
customMiddleware:
- name: ui5-middleware-webjars
afterMiddleware: compression
configuration:
rootPath: "jars"
jarRootPath: "META-INF/"
The middleware searches for JAR files in the rootPath
, loads them and serves the content from JAR files following the web static resources concept of Servlet 3.0 (WebJARs). By default, this allows to consume static resources from the JAR files from within the META-INF/resources/
path. When using JAR files following a derived web static resources concept it is possible to override the JAR root path with the configuration jarRootPath
.
jarRootPath: "META-INF/resources/"
META-INF/resources/my/resource/path/Resource.js => http://localhost:8080/my/resource/path/Resource.js
---
jarRootPath: "META-INF/"
META-INF/resources/my/resource/path/Resource.js => http://localhost:8080/resources/my/resource/path/Resource.js
If you want to contribute to ui5-middleware-webjars
, please use Prettier
for code formatting/style and apply the rules from ./.prettierrc
. Thanks 🙏!
This work is dual-licensed under Apache 2.0 and the Derived Beer-ware License. The official license will be Apache 2.0 but finally you can choose between one of them if you use this work.
When you like this stuff, you may buy @vobu a beer or @pmuessig a coke.