Pustike Web

Web Application development library

License

License

GroupId

GroupId

io.github.pustike
ArtifactId

ArtifactId

pustike-web
Last Version

Last Version

0.8.0
Release Date

Release Date

Type

Type

jar
Description

Description

Pustike Web
Web Application development library
Project URL

Project URL

https://github.com/pustike/pustike-web

Download pustike-web

How to add to project

<!-- https://jarcasting.com/artifacts/io.github.pustike/pustike-web/ -->
<dependency>
    <groupId>io.github.pustike</groupId>
    <artifactId>pustike-web</artifactId>
    <version>0.8.0</version>
</dependency>
// https://jarcasting.com/artifacts/io.github.pustike/pustike-web/
implementation 'io.github.pustike:pustike-web:0.8.0'
// https://jarcasting.com/artifacts/io.github.pustike/pustike-web/
implementation ("io.github.pustike:pustike-web:0.8.0")
'io.github.pustike:pustike-web:jar:0.8.0'
<dependency org="io.github.pustike" name="pustike-web" rev="0.8.0">
  <artifact name="pustike-web" type="jar" />
</dependency>
@Grapes(
@Grab(group='io.github.pustike', module='pustike-web', version='0.8.0')
)
libraryDependencies += "io.github.pustike" % "pustike-web" % "0.8.0"
[io.github.pustike/pustike-web "0.8.0"]

Dependencies

compile (4)

Group / Artifact Type Version
io.github.pustike : pustike-inject jar 2.0.0
io.github.pustike : pustike-json jar 0.2.0
org.eclipse.jetty.toolchain : jetty-jakarta-servlet-api jar 5.0.1
org.eclipse.jetty : jetty-servlet Optional jar 11.0.0

test (4)

Group / Artifact Type Version
org.slf4j : slf4j-simple jar 2.0.0-alpha1
org.glassfish : jakarta.json jar 2.0.0
org.junit.jupiter : junit-jupiter-api jar 5.7.0
org.junit.jupiter : junit-jupiter-engine jar 5.7.0

Project Modules

There are no modules declared in this project.

Pustike Web

Pustike Web provides API for creating application using RESTful Web Services with a central servlet DispatcherServlet, having an API similar to JAX-RS. Applications developed using this library can be deployed in any Servlet container like other web frameworks.

Following are some of its key features:

  • RESTful web services using a central servlet DispatcherServlet with an API similar to JAX-RS.
  • Provides resource class or method level annotation @Path to specify the relative path.
  • Specify the HTTP request method of a resource using: @GET, @PUT, @POST, @DELETE, @HEAD.
  • Specify the accepted request media type using @Consumes.
  • Specify the response media type with @Produces (used for content negotiation).
  • Annotation based method parameter to pull information out of the servlet request: @PathParam, @QueryParam, @BeanParam, @CookieParam, @FormParam, @HeaderParam, JsonParam. A default value can be specified using @DefaultValue which is used when the key is not found.
  • Integration with Pustike Inject during servlet context initialization.
  • Scopes: RequestScope that stores created instances as attributes in the request.
  • Static resource servlet to serve files or user defined static content.
  • Support for JSON - object mapping with option to output selected fields only, based on user defined context.
  • Requires Java 11 and it has dependencies to servlet-api and pustike inject, json libraries.

Documentation: Latest javadocs is available here.

Download

To add a dependency using Maven, use the following:

<dependency>
    <groupId>io.github.pustike</groupId>
    <artifactId>pustike-web</artifactId>
    <version>0.8.0</version>
</dependency>

Or, download the latest JAR(~60kB) from Maven Central.

License

This library is published under the Apache License, Version 2.0

io.github.pustike

Pustike

Versions

Version
0.8.0