Articles of spring

No se puede crear un oyente de events de datos de spring en Kotlin

Intenté crear un oyente de events como este: @Bean open fun beforeSaveEventApplicationListener(): ApplicationListener<BeforeSaveEvent> { return ApplicationListener<BeforeSaveEvent>() { fun onApplicationEvent(event: BeforeSaveEvent) { //Do something with event } } } . . . pero no comstackrá Donde se especifica el tipo genérico, el comstackdor devuelve: Type argument expected ¿Qué estoy haciendo mal?

El mismo extremo de reposo con diferentes PathVariable

Estoy tratando de hacer dos extremos de reposo con el mismo uri pero diferentes types. El primero searchía por EAN (Int) el segundo searchía por id (String). ¿Podría sobrecargar de alguna manera el punto final? Uso Spring Boot con Kotlin @GetMapping("/book/{ean}") fun getABookByEan(@PathVariable ean: Int) : ResponseEntity<*> { repository.getByEan(ean)?.let { return ResponseEntity.status(HttpStatus.OK).body(it) } throw ItemNotFoundException() […]

Por qué la class Kotlin ya no necesita abrirse en Spring Boot

En un último video sobre Kotlin y Spring Boot: Spring Tips: Bootiful Kotlin Redux . La class de Application de Spring Boot se ve así: class SpringBootKotlinApplication fun main(args: Array<String>) { } Recuerdo que un Kotlin tiene que estar anotado como open en Spring Boot. open class SpringBootKotlinApplication Mira este video Entonces, ¿por qué no […]

Exception Handler no funciona con `spring-boot-starter-data-rest`

Mi última experiencia en Java / Spring fue hace cuatro años. Empecé a aprender Spring Boot con Kotlin. He creado un service web RESTful (en Kotlin) de esta manera, y funciona bien: @RequestMapping("/authorization") public fun authorization(@RequestParam(value = "network-type", defaultValue = "Facebook") name: String, @RequestParam(value = "oauth-token") oauthToken: String, @RequestParam(value = "oauth-token-secret", requinetworking = false) oauthTokenSecret: […]

El uso de Spring HATEOAS ControllerLinkBuilder y Kotlin arroja IllegalArgumentException

Estoy haciendo una pequeña aplicación de arranque de spring HATEOAS usando Kotlin. Quiero usar ControllerLinkBuilder para crear automáticamente mis enlaces de respuesta HAL de la class que los trata, así: user.add(linkTo(methodOn(UserController::class.java).findByName(userName)).withSelfRel()) pero esto arroja: java.lang.IllegalArgumentException: Cannot subclass final class UserController porque todas las classs en Kotlin son definitivas por defecto. No estoy interesado (y no […]

La ruta funcional Spring Web Flux (reactiva) no funciona como se esperaba con Kotlin

Hola buena gente interesada en escribir aplicaciones de spring en Kotlin. Estoy jugando con Spring Boot 2.0.0 snapshot y spring-webflux . Este pedazo de código: @Component class TestRouter() : RouterFunction<ServerResponse> { override fun route(request: ServerRequest) = route(request) { "/".route { GET("/hello") { ServerResponse.ok().body(BodyInserters.fromObject("World")) } "/{id}".route { GET("/hello") { ServerResponse.ok().body(BodyInserters.fromObject("World ${request.pathVariable("id")}")) } } } } } […]

¿Cómo inyectar con IoC en las funciones de nivel superior de Kotlin? ¿Incluso uso contenedores de IoC?

Estoy teniendo problemas para seguir FP. Cuando la gente dice "estilo más idiomático", debo entender que: el 99% de las libs de Java no son aplicables para el estilo idiomático de FP para Kotlin y Scala, ¿verdad? Bueno, necesito Spring Boot para un arranque rápido con Vaadin. Entonces necesito inyectar algunos frijoles. package com.x.ui import […]

Cómo inyectar el context DSL de JOOQ en la class Kotlin

Estoy usando JOOQ con Kotlin, Spring y PostgreSQL. Puedo ejecutar el generador de JOOQ y los datos de consulta. El problema es que no puedo inyectar DSLcontext en el constructor de class de repository. Lanza la siguiente exception: El campo dslContext en someRepository requería un bean de tipo org.jooq.DSLContext que no se pudo encontrar. La […]

Spring Boot con la aplicación Single Page en AWS Elastic Beanstalk requiere una networkingirección adicional

Tengo una aplicación Spring Boot con una sola página de la aplicación React (usando React Router v4) alojada por Spring Boot. Al ejecutarlo localmente, funciona perfectamente. Está configurado para ejecutarse en el puerto 5000 por lo que va a localhost:5000 networkingirige a mi index.html Si actualizo la página, la refresca y muestra la misma página. […]

Cómo crear consultas HQL usando campos de class extendida

Tengo esas dos classs: Locatable y Device de modo que Locatable Extends Device: Locatable: @Entity @Table(name = Locatable.TABLE_NAME) @PrimaryKeyJoinColumn(name = "device_id", referencedColumnName = "id") open class Locatable: Device() { @Basic @Column(name = NAME_COLUMN) var name: String? = null } Dispositivo: @Entity @Table(name = Device.TABLE_NAME) @Inheritance(strategy = InheritanceType.JOINED) abstract class Device { @Id @GeneratedValue(strategy = GenerationType.SEQUENCE, […]