Skip to main content

FAQ


Q: Is there a simple sample project 🤗 ?

A: Of course! Click to go Sample Project

Q: 😕 Why aren't the logs printing?

A: Windward is not configured with a default logging implementation, built-in SLF4J facade mode adaptation, you need to add your own logging implementation

Q: What is WindwardContext? How does it work?

A: The WindwardContext is the only parameter of the routing function, and the request and response operations revolve around the WindwardContext

There are currently two commonly used

SimpleWindwardContext for HTTP routing

JsonWindwardContext is also used for HTTP routing, but automatically serialises the return value and responds as JSON

WebSocketWindwardContext for WebSocket routing

Q: 😕 How to customize the 404 return value?

A: When a request 404 occurs, Windward will throw HandlerNotFoundException exception, you can implement ExceptionHandler to customize the handling, currently the default implementation is DefaultNotFoundHandler (lowest priority)

Q: How to customize the plugin behavior?

A: The Windward plug-in is card-slot based and currently supports the following plug-ins

/** Slot for json. */
JSON(JsonPlugin.class),
/** Slot for groovy template. */
GROOVY_VIEW(GroovyView.class),
/** Slot for thymeleaf template. */
THYMELEAF_VIEW(ThymeleafView.class),
/** Slot for freemarker template. */
FREEMARKER_VIEW(FreemarkerView.class),
/** Slot for websocket. */
WEBSOCKET(ExtensionalWebSocketPlugin.class),
/** Slot for static resource. */
RESOURCE(ResourcePlugin.class);

If you want to customize it, you can just override the already populated slot to achieve it, like this

windward.registerPlugin(PluginSlot.JSON, new MyJacksonPlugin());