From 78138a13ca6f403df944f3ccf29928a6d466b341 Mon Sep 17 00:00:00 2001 From: abdu <abdukiran@gmail.com> Date: Sun, 10 Nov 2024 18:53:28 +0100 Subject: [PATCH] add controller for routing in vue history mode, update Dockerfile --- Dockerfile.backend => Dockerfile | 4 ++-- .../todo/controller/FallbackController.java | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) rename Dockerfile.backend => Dockerfile (90%) create mode 100644 src/main/java/com/cloudcomputing/todo/controller/FallbackController.java diff --git a/Dockerfile.backend b/Dockerfile similarity index 90% rename from Dockerfile.backend rename to Dockerfile index 8e43db1..aca4911 100644 --- a/Dockerfile.backend +++ b/Dockerfile @@ -1,5 +1,5 @@ # need node/npm to run "npm run build" for our vue frontend -FROM node:20-alpine as build-frontend +FROM node:20-alpine AS build-frontend # working directory for our frontend WORKDIR /app @@ -22,7 +22,7 @@ FROM eclipse-temurin:17-jre-alpine as build-backend WORKDIR /app # copying frontend to static folder so spring can serve it -COPY --from build-frontend /app/dist /app/src/main/resources/static +COPY --from=build-frontend /app/dist /app/src/main/resources/static # copying backend to root folder in container COPY . . diff --git a/src/main/java/com/cloudcomputing/todo/controller/FallbackController.java b/src/main/java/com/cloudcomputing/todo/controller/FallbackController.java new file mode 100644 index 0000000..cd60186 --- /dev/null +++ b/src/main/java/com/cloudcomputing/todo/controller/FallbackController.java @@ -0,0 +1,14 @@ +package com.cloudcomputing.todo.controller; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; + +@Controller +public class FallbackController { + + @RequestMapping(value = "/**/{path:[^\\.]*}") + public String redirect(){ + return "forward:/index.html"; + } +} -- GitLab