Code Monkey home page Code Monkey logo

spring-boot-gwt's Introduction

spring-boot-gwt

A quickstart spring boot gwt application (Spring Boot 1.4.1, GWT 2.8)

GWT Developer Console

Use the GWT console with :

  • mvn gwt:run
  • mvn gwt:debug or simply use mvn install as useal

What's in the sources

Quick dive in the code :

  • fr.ekito.gwt.server for server side code
  • fr.ekito.gwt.client for GWT client side code
  • fr.ekito.gwt.client.controller contains Client Http Rest controller

The application is build uppon Google Gin

More details

More details about the project on Ekito's blog : http://www.ekito.fr/people/?p=4816

spring-boot-gwt's People

Contributors

joshlong avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

spring-boot-gwt's Issues

Gradle

Hello can you add such example with gradle?
I spend few days, but can't decide it =(

buildscript {
  dependencies {
    classpath "de.richsource.gradle.plugins:gwt-gradle-plugin:${gwtGradlePluginVersion}"
//    classpath "org.akhikhl.gretty:gretty:${grettyPluginVersion}"
  }
}

plugins {
  id "org.springframework.boot" version "1.5.9.RELEASE"
  id "net.ltgt.apt" version "0.13"
}

apply plugin: 'war'
apply plugin: 'gwt'
//apply plugin: "org.akhikhl.gretty"

sourceSets {
  main.java.srcDir "src/main/java"
  main.resources.srcDir "src/main/resources"
  test.java.srcDir "src/test/java"
  test.resources.srcDir "src/test/resources"
}

//configurations {
//  'vaadin-client' {
//    exclude module: 'spring-boot-starter-web'
//    exclude module: 'spring-boot-vaadin'
//  }
//}

configurations {
//  all*.exclude group: "ch.qos.logback"
  all*.exclude module: "spring-boot-starter-logging"
  all*.exclude module: "spring-boot-starter-tomcat"
//  gwtSdk.exclude group: 'org.eclipse.jetty'
}

//configurations.gwt {
//  resolutionStrategy {
//    force 'javax.validation:validation-api:1.0.0.GA'
//  }
//}

project.configurations.all { config ->
  config.resolutionStrategy.dependencySubstitution({
    it.substitute(
        it.module('javax.validation:validation-api')
    ).with(
        it.module('javax.validation:validation-api:1.0.0.GA')
    )
  } as Action<DependencySubstitutions>)
}

dependencies {
  compile("org.apache.httpcomponents:httpclient:$httpClientVersion")
  compile("org.apache.httpcomponents:httpmime:$httpMimeVersion")
  compile("org.apache.httpcomponents:httpcore:$httpCoreVersion")

  compile("javax.inject:javax.inject:$javaxInjectVersion")
  compile("com.google.guava:guava-gwt:$guavaVersion")
  compile("com.google.gwt.inject:gin:$ginVersion")
  compile("com.google.gwt:gwt-user:$gwtVersion")
  compile("com.google.gwt:gwt-dev:$gwtVersion")
  compile("com.gwtplatform:gwtp-mvp-client:$gwtpVersion")
  compile("com.googlecode.gwt-charts:gwt-charts:$gwtChartsVersion")
  compile("com.google.gwt.eventbinder:eventbinder:$eventBinderVersion")
  compile("org.fusesource.restygwt:restygwt:$restyGwtVersion")
  compile("org.realityforge.gwt.websockets:gwt-websockets:$gwtWebsocketsVersion")
  compile("de.knightsoft-net:gwt-commons-lang3:$gwtCommonsLang3Version")

  compile("com.github.gwtmaterialdesign:gwt-material:$gwtMaterialVersion")
  compile("com.github.gwtmaterialdesign:gwt-material-addins:$gwtMaterialAddinsVersion")
  compile("com.github.gwtmaterialdesign:gwt-material-themes:$gwtMaterialThemesVersion")
  compile("com.github.gwtmaterialdesign:gwt-material-table:$gwtMaterialTableVersion")

  compile("org.springframework.boot:spring-boot-starter-web:$springBootVersion")

  compile("org.projectlombok:lombok:$lombokVersion")
  apt("org.projectlombok:lombok:$lombokVersion")
}

gwt {
  gwtVersion = '2.8.2'
  maxHeapSize = "4G"
  minHeapSize = "2G";

  modules "com.softeq.verizon.DeviceManager"
  devModules "com.softeq.verizon.DeviceManager"

  compiler {
    strict = true;
    disableClassMetadata = false;
    disableCastChecking = false;
  }

  superDev {
    launcherDir = new File('build/inplaceWebapp')
  }

  logLevel = "INFO"
}

//gretty {
//  springBoot = true
//  springBootVersion = '1.5.9.RELEASE'
//  servletContainer = 'jetty9'
//  httpPort = 8081
//  fileLogEnabled = false
//  scanInterval = 5
//  managedClassReload = false
//}

// execute with "-x compileGwt -x war"
task gwtSuperDevDir(type: Copy) {
  into 'build/inplaceWebapp'
  with war
}

// copy war file to $rootDir/install folder
def installDir = "$rootDir" + "/install/"
task installWar(type: Copy) {
  delete installDir
  def sourceFolder = "$buildDir" + "/libs"
  from sourceFolder
  into installDir
}

clean.doFirst {
  delete "${projectDir}/build"
  delete "${projectDir}/out"
  delete "${projectDir}/war"
}

ext {
  slf4jVersion = "1.7.25"
  log4jVersion = "2.8.2"

  gwtGradlePluginVersion = "0.6"
  grettyPluginVersion = "2.0.0"

  guavaVersion = "23.5-jre"
  junitVersion = "4.12"
  lombokVersion = "1.16.18"
  httpClientVersion = "4.5.4"
  httpMimeVersion = "4.5.4"
  httpCoreVersion = "4.4.8"

  javaxInjectVersion = "1"
  springVersion = "4.3.13.RELEASE"
  springBootVersion = "1.5.9.RELEASE"

  gwtVersion = "2.8.2"
//  gwtMaterialVersion = "2.1-SNAPSHOT"
//  gwtMaterialAddinsVersion = "2.1-SNAPSHOT"
//  gwtMaterialThemesVersion = "2.0"
//  gwtMaterialTableVersion = "2.1-SNAPSHOT"
  gwtMaterialVersion = "2.0"
  gwtMaterialAddinsVersion = "2.0"
  gwtMaterialThemesVersion = "2.0"
  gwtMaterialTableVersion = "1.0-rc4"

  ginVersion = "2.1.2"
  gwtpVersion = "1.6"
  restyGwtVersion = "2.2.2"
  eventBinderVersion = "1.1.0"
  gwtChartsVersion = "0.9.10"
  gwtWebsocketsVersion = "1.2"
  gwtCommonsLang3Version = "3.7-0"
}

comment integrer spring-security ?

Bonjour,
Merci tout d'abord pour ce project tres interessant.
J'aurai voulu savoir si vous avez reussi a integrer Spring-Security a ce project ?
(j'ai essaye sans succes d'ajouter un filtre au fichier web.xml mais les choses se gatent rapidement a cas du ContextLoaderListener)
Merci d'avance.
kbjp

thanks!

thanks for the project! I got a lot of problems while self-crossing Spring and GWT, but it seems I found what I need! in the future, I would be happy to help you with this project)

Start application (jar)?

How can i start the application? I want to use spring boot with the provided tomcat and include gwt.
I want to start my application as a jar-file (java -jar). Is it possible and can you describe the process?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.