diff --git a/bootique/dependency-reduced-pom.xml b/bootique/dependency-reduced-pom.xml
index ed18f4e42a..ab09cfb7b1 100644
--- a/bootique/dependency-reduced-pom.xml
+++ b/bootique/dependency-reduced-pom.xml
@@ -28,8 +28,14 @@
junit
junit
- 3.8.1
+ 4.12
test
+
+
+ hamcrest-core
+ org.hamcrest
+
+
diff --git a/libraries-data/file.dat b/libraries-data/file.dat
new file mode 100644
index 0000000000..70177cef97
Binary files /dev/null and b/libraries-data/file.dat differ
diff --git a/libraries/helloWorld.docx b/libraries/helloWorld.docx
new file mode 100644
index 0000000000..a58ff2d80a
Binary files /dev/null and b/libraries/helloWorld.docx differ
diff --git a/spring-cloud/spring-cloud-consul/pom.xml b/spring-cloud/spring-cloud-consul/pom.xml
new file mode 100644
index 0000000000..0a0650ec8b
--- /dev/null
+++ b/spring-cloud/spring-cloud-consul/pom.xml
@@ -0,0 +1,58 @@
+
+
+ 4.0.0
+
+ org.baeldung
+ spring-cloud-consul
+ jar
+
+ spring-cloud-consul
+
+
+ com.baeldung.spring.cloud
+ spring-cloud
+ 1.0.0-SNAPSHOT
+
+
+
+ UTF-8
+ 3.6.0
+
+
+
+
+ org.springframework.cloud
+ spring-cloud-starter-consul-all
+ 1.3.0.RELEASE
+
+
+
+ org.springframework.cloud
+ spring-cloud-starter-consul-config
+ 1.3.0.RELEASE
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ ${maven-compiler-plugin.version}
+
+ 1.8
+ 1.8
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+ ${spring-boot-maven-plugin.version}
+
+
+
+
+
diff --git a/spring-cloud/spring-cloud-consul/src/main/java/com/baeldung/spring/cloud/consul/DiscoveryClientApplication.java b/spring-cloud/spring-cloud-consul/src/main/java/com/baeldung/spring/cloud/consul/DiscoveryClientApplication.java
new file mode 100644
index 0000000000..e5e18d71ff
--- /dev/null
+++ b/spring-cloud/spring-cloud-consul/src/main/java/com/baeldung/spring/cloud/consul/DiscoveryClientApplication.java
@@ -0,0 +1,53 @@
+package com.baeldung.spring.cloud.consul;
+
+import java.net.URI;
+import java.util.List;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.builder.SpringApplicationBuilder;
+import org.springframework.cloud.client.ServiceInstance;
+import org.springframework.cloud.client.discovery.DiscoveryClient;
+import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
+import org.springframework.context.annotation.Bean;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.client.RestTemplate;
+
+@SpringBootApplication
+@EnableDiscoveryClient
+@RestController
+public class DiscoveryClientApplication {
+
+ @Bean
+ public RestTemplate restTemplate() {
+ return new RestTemplate();
+ }
+
+ @Autowired
+ private RestTemplate restTemplate;
+
+ @Autowired
+ private DiscoveryClient discoveryClient;
+
+ @RequestMapping("/discoveryClient")
+ public String home() {
+ return this.restTemplate.getForEntity(serviceUrl().resolve("/ping"), String.class)
+ .getBody();
+ }
+
+ public URI serviceUrl() {
+ List list = discoveryClient.getInstances("myApp");
+ if (list != null && list.size() > 0) {
+ return list.get(0)
+ .getUri();
+ }
+
+ return null;
+ }
+
+ public static void main(String[] args) {
+ new SpringApplicationBuilder(DiscoveryClientApplication.class).web(true)
+ .run(args);
+ }
+}
diff --git a/spring-cloud/spring-cloud-consul/src/main/java/com/baeldung/spring/cloud/consul/DistributedPropertiesApplication.java b/spring-cloud/spring-cloud-consul/src/main/java/com/baeldung/spring/cloud/consul/DistributedPropertiesApplication.java
new file mode 100644
index 0000000000..12ecd96b26
--- /dev/null
+++ b/spring-cloud/spring-cloud-consul/src/main/java/com/baeldung/spring/cloud/consul/DistributedPropertiesApplication.java
@@ -0,0 +1,36 @@
+package com.baeldung.spring.cloud.consul;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.builder.SpringApplicationBuilder;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import com.baeldung.spring.cloud.consul.properties.MyProperties;
+
+@SpringBootApplication
+@RestController
+public class DistributedPropertiesApplication {
+
+ @Value("${my.prop}")
+ String value;
+
+ @Autowired
+ private MyProperties properties;
+
+ @RequestMapping("/getConfigFromValue")
+ public String getConfigFromValue() {
+ return value;
+ }
+
+ @RequestMapping("/getConfigFromProperty")
+ public String getConfigFromProperty() {
+ return properties.getProp();
+ }
+
+ public static void main(String[] args) {
+ new SpringApplicationBuilder(DistributedPropertiesApplication.class).web(true)
+ .run(args);
+ }
+}
diff --git a/spring-cloud/spring-cloud-consul/src/main/java/com/baeldung/spring/cloud/consul/RibbonClientApplication.java b/spring-cloud/spring-cloud-consul/src/main/java/com/baeldung/spring/cloud/consul/RibbonClientApplication.java
new file mode 100644
index 0000000000..620c3553ba
--- /dev/null
+++ b/spring-cloud/spring-cloud-consul/src/main/java/com/baeldung/spring/cloud/consul/RibbonClientApplication.java
@@ -0,0 +1,34 @@
+package com.baeldung.spring.cloud.consul;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.builder.SpringApplicationBuilder;
+import org.springframework.cloud.client.loadbalancer.LoadBalanced;
+import org.springframework.context.annotation.Bean;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.client.RestTemplate;
+
+@SpringBootApplication
+@RestController
+public class RibbonClientApplication {
+
+ @LoadBalanced
+ @Bean
+ public RestTemplate loadbalancedRestTemplate() {
+ return new RestTemplate();
+ }
+
+ @Autowired
+ RestTemplate restTemplate;
+
+ @RequestMapping("/ribbonClient")
+ public String home() {
+ return this.restTemplate.getForObject("http://myApp/ping", String.class);
+ }
+
+ public static void main(String[] args) {
+ new SpringApplicationBuilder(RibbonClientApplication.class).web(true)
+ .run(args);
+ }
+}
diff --git a/spring-cloud/spring-cloud-consul/src/main/java/com/baeldung/spring/cloud/consul/ServiceDiscoveryApplication.java b/spring-cloud/spring-cloud-consul/src/main/java/com/baeldung/spring/cloud/consul/ServiceDiscoveryApplication.java
new file mode 100644
index 0000000000..5da8105d01
--- /dev/null
+++ b/spring-cloud/spring-cloud-consul/src/main/java/com/baeldung/spring/cloud/consul/ServiceDiscoveryApplication.java
@@ -0,0 +1,29 @@
+package com.baeldung.spring.cloud.consul;
+
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.builder.SpringApplicationBuilder;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@SpringBootApplication
+@RestController
+public class ServiceDiscoveryApplication {
+ @RequestMapping("/my-health-check")
+ public ResponseEntity myCustomCheck() {
+ String message = "Testing my healh check function";
+ return new ResponseEntity<>(message, HttpStatus.FORBIDDEN);
+ }
+
+ @RequestMapping("/ping")
+ public String ping() {
+ return "pong";
+ }
+
+ public static void main(String[] args) {
+ new SpringApplicationBuilder(ServiceDiscoveryApplication.class).web(true)
+ .run(args);
+ }
+
+}
\ No newline at end of file
diff --git a/spring-cloud/spring-cloud-consul/src/main/java/com/baeldung/spring/cloud/consul/properties/MyProperties.java b/spring-cloud/spring-cloud-consul/src/main/java/com/baeldung/spring/cloud/consul/properties/MyProperties.java
new file mode 100644
index 0000000000..7accac168d
--- /dev/null
+++ b/spring-cloud/spring-cloud-consul/src/main/java/com/baeldung/spring/cloud/consul/properties/MyProperties.java
@@ -0,0 +1,20 @@
+package com.baeldung.spring.cloud.consul.properties;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.cloud.context.config.annotation.RefreshScope;
+import org.springframework.context.annotation.Configuration;
+
+@RefreshScope
+@Configuration
+@ConfigurationProperties("my")
+public class MyProperties {
+ private String prop;
+
+ public String getProp() {
+ return prop;
+ }
+
+ public void setProp(String prop) {
+ this.prop = prop;
+ }
+}
diff --git a/spring-cloud/spring-cloud-consul/src/main/resources/application.yml b/spring-cloud/spring-cloud-consul/src/main/resources/application.yml
new file mode 100644
index 0000000000..ccdc3fdeee
--- /dev/null
+++ b/spring-cloud/spring-cloud-consul/src/main/resources/application.yml
@@ -0,0 +1,14 @@
+spring:
+ application:
+ name: myApp
+ cloud:
+ consul:
+ host: localhost
+ port: 8500
+ discovery:
+ healthCheckPath: /my-health-check
+ healthCheckInterval: 20s
+ enabled: true
+ instanceId: ${spring.application.name}:${random.value}
+server:
+ port: 0
\ No newline at end of file
diff --git a/spring-cloud/spring-cloud-consul/src/main/resources/bootstrap.yml b/spring-cloud/spring-cloud-consul/src/main/resources/bootstrap.yml
new file mode 100644
index 0000000000..6318170135
--- /dev/null
+++ b/spring-cloud/spring-cloud-consul/src/main/resources/bootstrap.yml
@@ -0,0 +1,9 @@
+spring:
+ application:
+ name: myApp
+ cloud:
+ consul:
+ host: localhost
+ port: 8500
+ config:
+ enabled: true
\ No newline at end of file
diff --git a/undertow/dependency-reduced-pom.xml b/undertow/dependency-reduced-pom.xml
new file mode 100644
index 0000000000..f3bb8b78ed
--- /dev/null
+++ b/undertow/dependency-reduced-pom.xml
@@ -0,0 +1,40 @@
+
+
+ 4.0.0
+ com.baeldung.undertow
+ undertow
+ undertow
+ 1.0-SNAPSHOT
+ http://maven.apache.org
+
+ ${project.artifactId}
+
+
+ maven-shade-plugin
+
+
+ package
+
+ shade
+
+
+
+
+
+ maven-jar-plugin
+
+
+
+ com.baeldung.undertow.SimpleServer
+
+
+
+
+
+
+
+ 1.8
+ 1.8
+
+
+
diff --git a/xml/src/test/resources/example_dom4j_new.xml b/xml/src/test/resources/example_dom4j_new.xml
new file mode 100644
index 0000000000..020760fdd3
--- /dev/null
+++ b/xml/src/test/resources/example_dom4j_new.xml
@@ -0,0 +1,10 @@
+
+
+
+
+ XML with Dom4J
+ XML handling with Dom4J
+ 14/06/2016
+ Dom4J tech writer
+
+
diff --git a/xml/src/test/resources/example_jaxb_new.xml b/xml/src/test/resources/example_jaxb_new.xml
new file mode 100644
index 0000000000..646d938869
--- /dev/null
+++ b/xml/src/test/resources/example_jaxb_new.xml
@@ -0,0 +1,9 @@
+
+
+
+ Jaxb author
+ 04/02/2015
+ XML Binding with Jaxb
+ XML with Jaxb
+
+