Automated tests for Spring Boot WebSocket server

Developing WebSocket server for your Spring Boot app is fairly simple and well described and documented. However when it comes to making sure that it 'actually works' is done manually in most cases. Below I will show how I do the automated integration tests for Websocket server using Spring's StompClient. I assume that you are … Continue reading Automated tests for Spring Boot WebSocket server

Proxy configuration for Gradle

Are you using gradle behind corporate proxy? Here is how to configure proxy data for gradle (urls and credentials) gradle.properties file Gradle (and gradlew as well) is automatically reading gradle.properties file that is either in project directory or in USER_HOME/.gradle directory. Inside of gradle.properties file set properties: systemProp.http.proxyHost=http_proxy_ip_or_url systemProp.http.proxyPort=port systemProp.http.proxyUser=username systemProp.http.proxyPassword=pwd systemProp.https.proxyHost=https_proxy_ip_or_url systemProp.https.proxyPort=port systemProp.https.proxyUser=username systemProp.https.proxyPassword=password … Continue reading Proxy configuration for Gradle

New Technology Radar – what’s new for me

Here is the new analysis of trends in Technology, Tools, Platforms and Languages & Frameworks. ThoughtWorks is sharing their experiences from projects they support or build in a periodic Tech Radar publications. The pdf version for Nov 2016 is here and the newest edition is always here. In this post I'm going to share remarks … Continue reading New Technology Radar – what’s new for me

Online ‘learning-by-doing’ courses I attended – was it worth the money?

Jacek Milewski

There are more and more online courses available. The 'Learning by doing' are in my particular interest. Here I want to: - list the courses or sites I attended and write a short summary - know the same from your side - feel free to add your thoughts on online courses.   Where I have … Continue reading Online ‘learning-by-doing’ courses I attended – was it worth the money?

Spring: Securing REST API with BasicAuth

The simpliest, yet effective way to secure Spring REST API is to use Basic Auth. I'm going to show how to do it with Spring Security. Note Basic Auth is stateless (no need to manage sessions) and simple to implement. However it should be used with https only if outside of a trusted network. Also … Continue reading Spring: Securing REST API with BasicAuth

Spring JMX: Manage beans in runtime

JMX (Java Management Extensions) allows to change the bean field values or invoke bean methods on the fly at runtime. It is in opposite to DI where you configure application when it starts, using profiles or classpath. With JMX you can tune, monitor or configure your application anytime when it is running. At the heart … Continue reading Spring JMX: Manage beans in runtime

Aspect Oriented Spring

Aspect Oriented Programming is a powerful technique to separate cross-cutting concerns (aspects) in your application apart from your logic. Where is it used? Spring uses it widely. Popular use case is Spring Security where each controller needs to have restricted access. It would make no sense to embed the security logic in each controller method. … Continue reading Aspect Oriented Spring