├── 07-jta ├── 0701-jta-xml-config │ ├── infinitest.filters │ └── src │ │ ├── main │ │ └── resources │ │ │ └── logback.xml │ │ └── test │ │ └── resources │ │ └── hornetq │ │ └── hornetq-users.xml ├── 0702-jta-java-config │ ├── infinitest.filters │ └── src │ │ ├── main │ │ └── resources │ │ │ └── logback.xml │ │ └── test │ │ └── resources │ │ └── hornetq │ │ └── hornetq-users.xml └── 0703-jta-spring-boot │ └── src │ └── main │ ├── resources │ ├── application.properties │ └── logback.xml │ └── java │ └── net │ └── lkrnac │ └── book │ └── eiws │ └── chapter07 │ └── JtaApplication.java ├── 05-jms ├── 0506-async-jms-java-config │ ├── infinitest.filters │ └── src │ │ ├── main │ │ ├── resources │ │ │ └── logback.xml │ │ └── java │ │ │ └── net │ │ │ └── lkrnac │ │ │ └── book │ │ │ └── eiws │ │ │ └── chapter05 │ │ │ └── text │ │ │ └── JavaConfigJmsAsyncApplication.java │ │ └── test │ │ ├── resources │ │ └── hornetq │ │ │ └── hornetq-users.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter05 │ │ └── text │ │ └── JavaConfigJmsAsyncApplicationIT.java ├── 0515-publish-subscribe-java-config │ └── src │ │ ├── main │ │ ├── resources │ │ │ ├── application.properties │ │ │ └── logback.xml │ │ └── java │ │ │ └── net │ │ │ └── lkrnac │ │ │ └── book │ │ │ └── eiws │ │ │ └── chapter05 │ │ │ └── pubsub │ │ │ ├── PubSubService.java │ │ │ └── JmsApplication.java │ │ └── test │ │ └── resources │ │ └── hornetq │ │ └── hornetq-users.xml ├── 0516-publish-subscribe-spring-boot │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter05 │ │ └── pubsub │ │ ├── PubSubService.java │ │ └── JmsApplication.java ├── 0501-jms11-jndi │ ├── infinitest.filters │ └── src │ │ └── test │ │ └── resources │ │ └── hornetq │ │ ├── hornetq-users.xml │ │ └── hornetq-jms.xml ├── 0502-jms2-jndi │ ├── infinitest.filters │ └── src │ │ ├── test │ │ └── resources │ │ │ └── hornetq │ │ │ └── hornetq-users.xml │ │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter05 │ │ └── jms2jndi │ │ └── SimpleMessageSender.java ├── 0503-async-jndi │ ├── infinitest.filters │ └── src │ │ ├── test │ │ └── resources │ │ │ └── hornetq │ │ │ └── hornetq-users.xml │ │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter05 │ │ └── asyncjndi │ │ └── SimpleMessageSender.java ├── 0504-async-jms-namespace │ ├── infinitest.filters │ └── src │ │ ├── main │ │ └── resources │ │ │ └── logback.xml │ │ └── test │ │ └── resources │ │ └── hornetq │ │ └── hornetq-users.xml ├── 0507-sync-jms-java-config │ └── src │ │ ├── main │ │ ├── resources │ │ │ ├── application.properties │ │ │ └── logback.xml │ │ └── java │ │ │ └── net │ │ │ └── lkrnac │ │ │ └── book │ │ │ └── eiws │ │ │ └── chapter05 │ │ │ └── text │ │ │ └── JavaConfigJmsSyncApplication.java │ │ └── test │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter05 │ │ └── text │ │ └── JavaConfigJmsSyncApplicationTests.java ├── 0510-jms-custom-converter │ └── src │ │ ├── main │ │ └── resources │ │ │ ├── application.properties │ │ │ └── logback.xml │ │ └── test │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter05 │ │ └── user │ │ └── JmsCustomConverterApplicationTests.java ├── 0512-jms-message-creator │ └── src │ │ ├── main │ │ └── resources │ │ │ ├── application.properties │ │ │ └── logback.xml │ │ └── test │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter05 │ │ └── text │ │ └── JmsMessageCreatorApplicationTests.java ├── 0513-jms-messaging-template │ └── src │ │ └── main │ │ └── resources │ │ ├── application.properties │ │ └── logback.xml ├── 0514-jms-message-annotations │ └── src │ │ └── main │ │ └── resources │ │ ├── application.properties │ │ └── logback.xml ├── 0508-async-listener-annotation │ └── src │ │ ├── main │ │ └── resources │ │ │ ├── application.properties │ │ │ └── logback.xml │ │ └── test │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter05 │ │ └── text │ │ └── ListenerAnnotationJmsAsyncApplicationTests.java ├── 0509-jms-message-converter │ └── src │ │ ├── main │ │ └── resources │ │ │ ├── application.properties │ │ │ └── logback.xml │ │ └── test │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter05 │ │ └── user │ │ └── JmsMessageConverterApplicationTests.java ├── 0500-jms-common │ └── src │ │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter05 │ │ ├── user │ │ ├── User.java │ │ └── UserService.java │ │ ├── text │ │ └── SimpleService.java │ │ └── userwithrole │ │ └── UserWithRoleService.java ├── 0505-async-jms-xml │ └── src │ │ ├── main │ │ └── resources │ │ │ └── logback.xml │ │ └── test │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter05 │ │ └── text │ │ └── JmsXmlAsyncApplicationTests.java └── 0511-jms-caching-connection-factory │ └── src │ └── main │ └── resources │ └── logback.xml ├── 09-batch ├── 0929-skip-xml │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ ├── BatchApplication.java │ │ └── BatchConfiguration.java ├── 0931-retry-xml │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ ├── BatchApplication.java │ │ └── BatchConfiguration.java ├── 0904-tasklet-step-xml │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ ├── BatchApplication.java │ │ └── BatchConfiguration.java ├── 0906-job-launcher-xml │ └── src │ │ └── main │ │ └── resources │ │ ├── application.properties │ │ └── logback.xml ├── 0917-job-listener-xml │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ ├── BatchApplication.java │ │ └── BatchConfiguration.java ├── 0919-step-listener-xml │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ ├── BatchApplication.java │ │ └── BatchConfiguration.java ├── 0923-item-stream-xml │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ ├── BatchApplication.java │ │ └── BatchConfiguration.java ├── 0925-job-inheritance │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ ├── BatchApplication.java │ │ └── BatchConfiguration.java ├── 0930-skip-javaconfig │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ └── BatchApplication.java ├── 0932-retry-javaconfig │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ └── BatchApplication.java ├── 0908-job-launcher-async │ └── src │ │ └── main │ │ └── resources │ │ ├── application.properties │ │ └── logback.xml ├── 0910-job-parameters-cli │ ├── src │ │ └── main │ │ │ ├── resources │ │ │ ├── application.properties │ │ │ └── logback.xml │ │ │ └── java │ │ │ └── net │ │ │ └── lkrnac │ │ │ └── book │ │ │ └── eiws │ │ │ └── chapter09 │ │ │ └── BatchApplication.java │ ├── runFromCli.sh │ └── runOneJobFromCli.sh ├── 0911-job-repository-xml │ └── src │ │ └── main │ │ └── resources │ │ ├── application.properties │ │ └── logback.xml ├── 0921-chunk-listener-xml │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ ├── BatchApplication.java │ │ └── BatchConfiguration.java ├── 0924-item-stream-javaconfig │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ └── BatchApplication.java ├── 0937-parallel-steps-xml │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ ├── BatchApplication.java │ │ └── BatchConfiguration.java ├── 0939-remote-chunking-master │ ├── src │ │ ├── main │ │ │ └── resources │ │ │ │ └── application.properties │ │ └── test │ │ │ └── resources │ │ │ └── hornetq │ │ │ └── hornetq-users.xml │ └── infinitest.filters ├── 0939-remote-chunking-slave │ └── src │ │ └── main │ │ └── resources │ │ └── application.properties ├── 0905-tasklet-step-javaconfig │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ └── BatchApplication.java ├── 0907-job-launcher-javaconfig │ ├── src │ │ └── main │ │ │ └── resources │ │ │ ├── application.properties │ │ │ └── logback.xml │ └── runFromCli.sh ├── 0912-job-repository-javaconfig │ └── src │ │ └── main │ │ └── resources │ │ ├── application.properties │ │ └── logback.xml ├── 0913-execution-context-tasklet │ └── src │ │ └── main │ │ └── resources │ │ ├── application.properties │ │ └── logback.xml ├── 0918-job-listener-javaconfig │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ └── BatchApplication.java ├── 0920-step-listener-javaconfig │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ └── BatchApplication.java ├── 0922-chunk-listener-javaconfig │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ └── BatchApplication.java ├── 0935-multi-threaded-step-xml │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ ├── BatchApplication.java │ │ └── BatchConfiguration.java ├── 0938-parallel-steps-javaconfig │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ └── BatchApplication.java ├── 0940-remote-partitioning-master │ ├── src │ │ ├── main │ │ │ └── resources │ │ │ │ └── application.properties │ │ └── test │ │ │ └── resources │ │ │ └── hornetq │ │ │ └── hornetq-users.xml │ └── infinitest.filters ├── 0901-chunk-processing-generic-xml │ ├── src │ │ └── main │ │ │ ├── resources │ │ │ └── application.properties │ │ │ └── java │ │ │ └── net │ │ │ └── lkrnac │ │ │ └── book │ │ │ └── eiws │ │ │ └── chapter09 │ │ │ ├── BatchApplication.java │ │ │ └── BatchConfiguration.java │ └── runFromCli.sh ├── 0903-chunk-processing-non-generic │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── users.txt │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ ├── model │ │ └── User.java │ │ └── BatchApplication.java ├── 0936-multi-threaded-step-javaconfig │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ └── BatchApplication.java ├── 0940-remote-partitioning-sql-server │ └── src │ │ └── main │ │ └── resources │ │ ├── application.properties │ │ └── h2-purge.sql ├── 0902-chunk-processing-generic-javaconfig │ ├── src │ │ └── main │ │ │ ├── resources │ │ │ └── application.properties │ │ │ └── java │ │ │ └── net │ │ │ └── lkrnac │ │ │ └── book │ │ │ └── eiws │ │ │ └── chapter09 │ │ │ └── BatchApplication.java │ └── runFromCli.sh ├── 0914-execution-context-chunk-processing │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ └── BatchApplication.java ├── 0928-repeat │ └── src │ │ └── main │ │ └── resources │ │ └── application.properties ├── 0926-restart-xml │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ └── BatchConfiguration.java ├── 0933-decision-xml │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ └── BatchConfiguration.java ├── 0915-batch-scopes-xml │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ ├── WrittenRecordsCounter.java │ │ └── ReadCountRestricter.java ├── 0909-job-parameters │ └── src │ │ └── main │ │ └── resources │ │ ├── application.properties │ │ └── logback.xml ├── 0927-restart-javaconfig │ └── src │ │ └── main │ │ └── resources │ │ └── application.properties ├── 0934-decision-javaconfig │ └── src │ │ └── main │ │ └── resources │ │ ├── application.properties │ │ └── logback.xml ├── 0916-batch-scopes-javaconfig │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter09 │ │ └── ProcessedRecordsCounter.java ├── 0940-remote-partitioning-slave │ └── src │ │ └── main │ │ └── resources │ │ └── application.properties └── 0900-batch-common │ └── src │ └── main │ └── java │ └── net │ └── lkrnac │ └── book │ └── eiws │ └── chapter09 │ ├── step │ └── SimpleExecutablePoint.java │ ├── process │ └── SimpleRecordProcessor.java │ └── write │ └── WriteRepository.java ├── 08-integration ├── 0821-bridge-xml │ └── src │ │ └── main │ │ └── resources │ │ └── application.properties ├── 0824-chain-xml │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── SimpleHeaderEnricher.java ├── 0802-parsing-headers │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── in │ │ └── SiWrapperServiceMessage.java ├── 0815-filter-xml-ref │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── SimpleFilter.java ├── 0817-filter-xml-spel │ └── src │ │ └── main │ │ └── resources │ │ └── application.properties ├── 0827-aggregator-xml │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── in │ │ └── SiWrapperServiceFuture.java ├── 08xx-channel-null-xml │ └── src │ │ └── main │ │ └── resources │ │ └── application.properties ├── 08xx-long-polling-xml │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── SimpleMessageComparator.java ├── 0806-service-activator-xml │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ ├── in │ │ └── ReadService.java │ │ └── SiApplication.java ├── 0808-gateway-generic-xml │ └── src │ │ └── main │ │ └── resources │ │ ├── application.properties │ │ └── logback.xml ├── 0814-header-enricher-xml │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── SimpleHeaderEnricher.java ├── 0816-filter-javaconfig │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ ├── in │ │ └── SiWrapperServiceVoidAnnotated.java │ │ └── SimpleFilter.java ├── 0818-router-xml-generic │ └── src │ │ └── main │ │ └── resources │ │ ├── application.properties │ │ └── logback.xml ├── 0819-router-javaconfig │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── in │ │ └── SiWrapperServiceAnnotated.java ├── 0823-bridge-to-javaconfig │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── in │ │ └── SiWrapperServiceAnnotated.java ├── 0826-splitter-javaconfig │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── in │ │ └── SiWrapperServiceAnnoated.java ├── 0828-aggregator-javaconfig │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── in │ │ └── SiWrapperServiceFuture.java ├── 0830-channel-priority-xml │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── SimpleMessageComparator.java ├── 0832-channel-executor-xml │ └── src │ │ └── main │ │ └── resources │ │ └── application.properties ├── 0833-channel-pub-sub-xml │ └── src │ │ └── main │ │ └── resources │ │ └── application.properties ├── 0835-channel-wire-tap-xml │ └── src │ │ └── main │ │ └── resources │ │ └── application.properties ├── 0836-error-handling-sync │ └── src │ │ └── main │ │ └── resources │ │ ├── application.properties │ │ └── logback.xml ├── 0839-error-channel-global │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── out │ │ └── ErrorHandler.java ├── 0840-error-channel-async │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── out │ │ └── ErrorHandler.java ├── 0842-transacted-polling │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── out │ │ └── ServiceWithError.java ├── 0843-messaging-template │ └── src │ │ └── main │ │ └── resources │ │ ├── application.properties │ │ └── logback.xml ├── 0809-gateway-generic-javaconfig │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── in │ │ └── SiWrapperServiceAnnotated.java ├── 0820-router-xml-message-type │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── in │ │ └── SiWrapperService.java ├── 0822-bridge-from-javaconfig │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── in │ │ └── SiWrapperServiceAnnotated.java ├── 0825-splitter-delimiters-xml │ └── src │ │ └── main │ │ └── resources │ │ ├── application.properties │ │ └── logback.xml ├── 0829-aggregator-default-headers │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ ├── in │ │ └── SiWrapperServiceFutureAnnotated.java │ │ └── SimpleAggregator.java ├── 0831-channel-rendezvuous-xml │ └── src │ │ └── main │ │ └── resources │ │ └── application.properties ├── 0834-channel-interceptor-xml │ └── src │ │ └── main │ │ └── resources │ │ └── application.properties ├── 0837-error-propagated-async │ └── src │ │ └── main │ │ └── resources │ │ ├── application.properties │ │ └── logback.xml ├── 0838-error-not-propagated-async │ └── src │ │ └── main │ │ └── resources │ │ ├── application.properties │ │ └── logback.xml ├── 0841-transaction-propagation │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ ├── in │ │ └── SiWrapperServiceTransacted.java │ │ └── out │ │ └── ServiceWithError.java ├── 0801-programmatic-message-creation │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ ├── in │ │ └── SiWrapperServiceMessage.java │ │ └── out │ │ └── WriteRepositoryWithHeaders.java ├── 0803-channel-adapter-generic-xml │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ ├── in │ │ └── ReadService.java │ │ └── SiApplication.java ├── 0807-service-activator-javaconfig │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ ├── SiApplication.java │ │ └── SiConfiguration.java ├── 0804-channel-adapter-generic-javaconfig │ └── src │ │ └── main │ │ └── resources │ │ ├── application.properties │ │ └── logback.xml ├── 0810-gateway-non-generic │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── SiApplication.java ├── 0813-transformer-json │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ ├── model │ │ └── User.java │ │ ├── out │ │ └── UserRepository.java │ │ └── SiApplication.java ├── 0811-transformer-generic-xml │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── SimpleMessageTransformer.java ├── 0805-channel-adapter-non-generic │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ └── SiApplication.java ├── 0812-transformer-generic-javaconfig │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter08 │ │ ├── in │ │ └── SiWrapperServiceAnnotated.java │ │ └── SimpleMessageTransformer.java └── 0800-integration-common │ └── src │ └── main │ └── java │ └── net │ └── lkrnac │ └── book │ └── eiws │ └── chapter08 │ ├── in │ ├── SiWrapperService.java │ └── SiWrapperServiceVoid.java │ └── out │ ├── WriteRepository.java │ └── WriteServiceWithError.java ├── 02-remoting ├── 0207-http-invoker-simple-client │ ├── src │ │ └── main │ │ │ ├── resources │ │ │ └── application.properties │ │ │ └── java │ │ │ └── net │ │ │ └── lkrnac │ │ │ └── book │ │ │ └── eiws │ │ │ └── chapter02 │ │ │ └── httpinvoker │ │ │ └── simple │ │ │ └── shared │ │ │ └── BarService.java │ └── infinitest.filters ├── 0207-http-invoker-simple-service │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter02 │ │ └── httpinvoker │ │ └── simple │ │ ├── shared │ │ └── BarService.java │ │ └── server │ │ └── BarServiceImpl.java ├── 0210-hessian-dispatcher-servlet │ ├── infinitest.filters │ └── src │ │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter02 │ │ └── hessian │ │ └── dispatcherservlet │ │ ├── shared │ │ └── BarService.java │ │ └── server │ │ └── BarServiceImpl.java ├── 0202-spring-rmi-java-config-client │ ├── infinitest.filters │ └── src │ │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter02 │ │ └── rmi │ │ └── spring │ │ └── javaconfig │ │ └── BarService.java ├── 0203-spring-rmi-xml-config-client │ ├── infinitest.filters │ └── src │ │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter02 │ │ └── rmi │ │ └── spring │ │ └── xmlconfig │ │ └── BarService.java ├── 0206-http-invoker-dispatcher-servlet │ ├── infinitest.filters │ └── src │ │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter02 │ │ └── httpinvoker │ │ └── dispatcherservlet │ │ ├── shared │ │ └── BarService.java │ │ └── server │ │ └── BarServiceImpl.java ├── 0208-hessian-handler-servlet-java-config │ ├── infinitest.filters │ └── src │ │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter02 │ │ └── hessian │ │ └── handlerservlet │ │ └── javaconfig │ │ ├── shared │ │ └── BarService.java │ │ └── server │ │ └── BarServiceImpl.java ├── 0209-burlap-handler-servlet-xml-config │ ├── infinitest.filters │ └── src │ │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter02 │ │ └── burlap │ │ └── handlerservlet │ │ └── xmlconfig │ │ └── shared │ │ └── BarService.java ├── 0204-http-invoker-handler-servlet-java-config │ ├── infinitest.filters │ └── src │ │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter02 │ │ └── httpinvoker │ │ └── handlerservlet │ │ └── javaconfig │ │ ├── shared │ │ └── BarService.java │ │ └── server │ │ └── BarServiceImpl.java ├── 0205-http-invoker-handler-servlet-xml-config │ ├── infinitest.filters │ └── src │ │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter02 │ │ └── httpinvoker │ │ └── handlerservlet │ │ └── xmlconfig │ │ └── shared │ │ └── BarService.java ├── 0202-spring-rmi-java-config-service │ └── src │ │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter02 │ │ └── rmi │ │ └── spring │ │ └── javaconfig │ │ ├── BarService.java │ │ └── service │ │ ├── Application.java │ │ └── BarServiceImpl.java ├── 0203-spring-rmi-xml-config-service │ └── src │ │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter02 │ │ └── rmi │ │ └── spring │ │ └── xmlconfig │ │ ├── BarService.java │ │ ├── Application.java │ │ └── service │ │ └── BarServiceImpl.java ├── 0201-java-rmi-client │ └── src │ │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter02 │ │ └── rmi │ │ └── java │ │ └── BarService.java └── 0201-java-rmi-service │ ├── src │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter02 │ │ └── rmi │ │ └── java │ │ └── BarService.java │ └── pom.xml ├── 03-ws ├── 0303-ws-boot-service │ └── src │ │ ├── main │ │ ├── resources │ │ │ ├── application.properties │ │ │ └── logback.xml │ │ └── java │ │ │ └── net │ │ │ └── lkrnac │ │ │ └── book │ │ │ └── eiws │ │ │ └── chapter03 │ │ │ └── ws │ │ │ └── boot │ │ │ └── server │ │ │ └── WsBootServerApplication.java │ │ └── test │ │ └── resources │ │ ├── testRequest.xml │ │ └── testResponse.xml ├── 0306-ws-error-service │ └── src │ │ ├── main │ │ ├── resources │ │ │ ├── application.properties │ │ │ └── logback.xml │ │ └── java │ │ │ └── net │ │ │ └── lkrnac │ │ │ └── book │ │ │ └── eiws │ │ │ └── chapter03 │ │ │ └── ws │ │ │ └── error │ │ │ └── server │ │ │ ├── WsErrorServerApplication.java │ │ │ └── CustomErrorException.java │ │ └── test │ │ └── resources │ │ ├── testRequest-server-error.xml │ │ ├── testRequest-success.xml │ │ ├── testRequest-generic-client-error.xml │ │ ├── testRequest-specific-client-error.xml │ │ ├── testResponse-success.xml │ │ ├── testResponse-server-error.xml │ │ ├── testResponse-generic-client-error.xml │ │ └── testResponse-specific-client-error.xml ├── 0305-ws-interceptor-service │ └── src │ │ ├── main │ │ ├── resources │ │ │ ├── application.properties │ │ │ └── logback.xml │ │ └── java │ │ │ └── net │ │ │ └── lkrnac │ │ │ └── book │ │ │ └── eiws │ │ │ └── chapter03 │ │ │ └── ws │ │ │ └── interceptor │ │ │ └── server │ │ │ ├── SimpleLogger.java │ │ │ └── WsInterceptorServerApplication.java │ │ └── test │ │ ├── resources │ │ ├── testRequest-fail.xml │ │ ├── testRequest-success.xml │ │ ├── testRequest-validation-fail.xml │ │ ├── testResponse.xml │ │ └── testResponse-validation-fail.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter03 │ │ └── ws │ │ └── interceptor │ │ └── server │ │ └── SimpleLoggerSpy.java ├── 0307-ws-soapaction-service │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter03 │ │ └── ws │ │ └── soapaction │ │ └── server │ │ └── WsSoapactionServerApplication.java ├── 0308-ws-objectfactory-service │ └── src │ │ ├── main │ │ ├── resources │ │ │ ├── application.properties │ │ │ └── logback.xml │ │ └── java │ │ │ └── net │ │ │ └── lkrnac │ │ │ └── book │ │ │ └── eiws │ │ │ └── chapter03 │ │ │ └── ws │ │ │ └── objectfactory │ │ │ └── server │ │ │ └── WsObjectFactoryServerApplication.java │ │ └── test │ │ └── resources │ │ ├── testRequest.xml │ │ └── testResponse.xml ├── not-finished │ ├── 0304-ws-xmpp-service │ │ └── src │ │ │ └── main │ │ │ ├── resources │ │ │ ├── application.properties │ │ │ └── logback.xml │ │ │ └── java │ │ │ ├── net │ │ │ └── lkrnac │ │ │ │ └── book │ │ │ │ └── eiws │ │ │ │ └── chapter03 │ │ │ │ └── ws │ │ │ │ └── xmpp │ │ │ │ └── server │ │ │ │ └── WsXmppServerApplication.java │ │ │ └── xmpp │ │ │ └── eiws_blah │ │ │ └── package-info.java │ └── 0304-ws-xmpp-client │ │ ├── src │ │ ├── test │ │ │ └── resources │ │ │ │ ├── testRequest.xml │ │ │ │ └── testResponse.xml │ │ └── main │ │ │ └── resources │ │ │ └── logback.xml │ │ └── infinitest.filters ├── 0301-ws-xmlconfig-service │ └── src │ │ ├── test │ │ ├── resources │ │ │ ├── testRequest-fail.xml │ │ │ ├── testRequest-success.xml │ │ │ └── testResponse.xml │ │ └── java │ │ │ └── net │ │ │ └── lkrnac │ │ │ └── book │ │ │ └── eiws │ │ │ └── chapter03 │ │ │ └── ws │ │ │ └── xmlconfig │ │ │ └── server │ │ │ └── SimpleLoggerSpy.java │ │ └── main │ │ ├── resources │ │ └── manual │ │ │ ├── user-request.xml │ │ │ ├── user-details.xml │ │ │ ├── user-request-generated.xsd.off │ │ │ └── user-details-generated.xsd.off │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter03 │ │ └── ws │ │ └── xmlconfig │ │ └── server │ │ └── SimpleLogger.java ├── 0303-ws-boot-client │ ├── src │ │ ├── test │ │ │ └── resources │ │ │ │ ├── testRequest.xml │ │ │ │ └── testResponse.xml │ │ └── main │ │ │ └── resources │ │ │ └── logback.xml │ └── infinitest.filters ├── 0306-ws-error-client │ ├── infinitest.filters │ └── src │ │ ├── test │ │ └── resources │ │ │ ├── testRequest.xml │ │ │ └── testResponse.xml │ │ └── main │ │ └── resources │ │ └── logback.xml ├── 0301-ws-xmlconfig-client │ ├── infinitest.filters │ └── src │ │ ├── test │ │ └── resources │ │ │ ├── testRequest.xml │ │ │ └── testResponse.xml │ │ └── main │ │ ├── java │ │ └── net │ │ │ └── lkrnac │ │ │ └── book │ │ │ └── eiws │ │ │ └── chapter03 │ │ │ └── ws │ │ │ └── xmlconfig │ │ │ └── config │ │ │ └── SimpleLogger.java │ │ └── resources │ │ └── logback.xml ├── 0305-ws-interceptor-client │ ├── infinitest.filters │ └── src │ │ ├── test │ │ ├── resources │ │ │ ├── testRequest.xml │ │ │ └── testResponse.xml │ │ └── java │ │ │ └── net │ │ │ └── lkrnac │ │ │ └── book │ │ │ └── eiws │ │ │ └── chapter03 │ │ │ └── ws │ │ │ └── interceptor │ │ │ └── client │ │ │ └── SimpleLoggerSpy.java │ │ └── main │ │ ├── java │ │ └── net │ │ │ └── lkrnac │ │ │ └── book │ │ │ └── eiws │ │ │ └── chapter03 │ │ │ └── ws │ │ │ └── interceptor │ │ │ └── client │ │ │ └── SimpleLogger.java │ │ └── resources │ │ └── logback.xml ├── 0307-ws-soapaction-client │ ├── infinitest.filters │ └── src │ │ ├── test │ │ └── resources │ │ │ ├── testRequest.xml │ │ │ └── testResponse.xml │ │ └── main │ │ └── resources │ │ └── logback.xml ├── 0302-ws-javaconfig-client │ └── src │ │ ├── test │ │ └── resources │ │ │ ├── testRequest.xml │ │ │ └── testResponse.xml │ │ └── main │ │ └── resources │ │ └── logback.xml ├── 0302-ws-javaconfig-service │ └── src │ │ └── test │ │ └── resources │ │ ├── testRequest.xml │ │ └── testResponse.xml └── 0308-ws-objectfactory-client │ └── src │ ├── test │ └── resources │ │ ├── testRequest.xml │ │ └── testResponse.xml │ └── main │ └── resources │ └── logback.xml ├── 04-rest ├── 0404-rest-boot-server │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter04 │ │ ├── UrlConstants.java │ │ └── RestBootApplication.java ├── 0403-rest-java-config-server │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter04 │ │ ├── UrlConstants.java │ │ └── RestJavaConfigConfiguration.java ├── 0405-rest-restcontroller-server │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter04 │ │ ├── UrlConstants.java │ │ └── RestRestcontrollerApplication.java ├── 0406-rest-parameters-server │ └── src │ │ └── main │ │ ├── resources │ │ └── application.properties │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter04 │ │ ├── UrlConstants.java │ │ └── RestParametersApplication.java ├── 0401-rest-jax-rs-server │ ├── src │ │ └── main │ │ │ ├── resources │ │ │ ├── application.properties │ │ │ └── logback.xml │ │ │ └── java │ │ │ └── net │ │ │ └── lkrnac │ │ │ └── book │ │ │ └── eiws │ │ │ └── chapter04 │ │ │ ├── UrlConstants.java │ │ │ ├── jaxrs │ │ │ └── EndpointRegister.java │ │ │ └── RestJaxrsApplication.java │ └── infinitest.filters ├── 0402-rest-xml-config-server │ └── src │ │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter04 │ │ └── UrlConstants.java ├── 0405-rest-async-client │ └── src │ │ └── main │ │ ├── java │ │ └── net │ │ │ └── lkrnac │ │ │ └── book │ │ │ └── eiws │ │ │ └── chapter04 │ │ │ ├── model │ │ │ └── UserInfo.java │ │ │ └── client │ │ │ └── UserActionsRepository.java │ │ └── resources │ │ └── logback.xml ├── 0400-rest-common │ └── src │ │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter04 │ │ └── model │ │ └── User.java ├── 0406-rest-errorhandler-client │ └── src │ │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter04 │ │ └── client │ │ ├── CustomException.java │ │ └── RestClientErrorhandlerApplication.java └── 0404-rest-boot-client │ └── src │ └── main │ ├── java │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter04 │ │ └── client │ │ ├── ClientConfiguration.java │ │ └── RestClientBootApplication.java │ └── resources │ └── logback.xml ├── 06-jms-tx ├── 0601-java-jms11-sync-tx │ ├── infinitest.filters │ └── src │ │ └── test │ │ └── resources │ │ └── hornetq │ │ ├── hornetq-users.xml │ │ └── hornetq-jms.xml ├── 0602-java-jms20-async-tx │ ├── infinitest.filters │ └── src │ │ └── test │ │ └── resources │ │ └── hornetq │ │ └── hornetq-users.xml ├── 0612-transacted-xml │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter06 │ │ └── text │ │ └── JmsApplication.java ├── 0609-dups-ok-acknowledge │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter06 │ │ └── text │ │ └── JmsApplication.java ├── 0613-jms-transaction-manager │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter06 │ │ └── text │ │ └── JmsApplication.java ├── 0605-auto-acknowledge-listener-lost │ ├── src │ │ └── main │ │ │ ├── resources │ │ │ ├── application.properties │ │ │ └── logback.xml │ │ │ └── java │ │ │ └── net │ │ │ └── lkrnac │ │ │ └── book │ │ │ └── eiws │ │ │ └── chapter06 │ │ │ └── text │ │ │ └── JmsApplication.java │ └── uml-diagrams │ │ └── sequence.uml ├── 0606-auto-acknowledge-sync-lost │ ├── src │ │ └── main │ │ │ ├── resources │ │ │ ├── application.properties │ │ │ └── logback.xml │ │ │ └── java │ │ │ └── net │ │ │ └── lkrnac │ │ │ └── book │ │ │ └── eiws │ │ │ └── chapter06 │ │ │ └── text │ │ │ └── JmsApplication.java │ └── uml-diagrams │ │ └── sequence.uml ├── 0610-transacted-listener-success │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter06 │ │ └── text │ │ └── JmsApplication.java ├── 0611-transacted-listener-duplicate │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter06 │ │ └── text │ │ └── JmsApplication.java ├── 0614-handle-duplicates-error-after │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter06 │ │ └── text │ │ └── JmsApplication.java ├── 0615-handle-duplicates-error-before │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter06 │ │ └── text │ │ └── JmsApplication.java ├── 0603-auto-acknowledge-listener-success │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter06 │ │ └── text │ │ └── JmsApplication.java ├── 0607-client-acknowledge-listener-success │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter06 │ │ └── text │ │ └── JmsApplication.java ├── 06xx-auto-acknowledge-listener-duplicate │ └── src │ │ └── main │ │ ├── resources │ │ ├── application.properties │ │ └── logback.xml │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter06 │ │ └── text │ │ └── JmsApplication.java └── 0608-client-acknowledge-listener-duplicate │ └── src │ └── main │ ├── resources │ ├── application.properties │ └── logback.xml │ └── java │ └── net │ └── lkrnac │ └── book │ └── eiws │ └── chapter06 │ └── text │ └── JmsApplication.java ├── .travis.yml ├── 01-async ├── 0101-java-concurrency │ └── src │ │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter01 │ │ └── javaconcurrency │ │ └── SimpleLogger.java ├── 0104-java-scheduling │ └── src │ │ └── main │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter01 │ │ └── javascheduling │ │ ├── SimpleLogger.java │ │ └── Application.java ├── 0102-async-job │ └── src │ │ ├── main │ │ ├── java │ │ │ └── net │ │ │ │ └── lkrnac │ │ │ │ └── book │ │ │ │ └── eiws │ │ │ │ └── chapter01 │ │ │ │ └── async │ │ │ │ └── task │ │ │ │ └── SimpleLogger.java │ │ └── resources │ │ │ └── logback.xml │ │ └── test │ │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter01 │ │ └── async │ │ └── task │ │ └── SimpleLoggerSpy.java └── 0103-scheduled-job │ └── src │ ├── main │ └── java │ │ └── net │ │ └── lkrnac │ │ └── book │ │ └── eiws │ │ └── chapter01 │ │ └── scheduling │ │ └── task │ │ └── SimpleLogger.java │ └── test │ └── java │ └── net │ └── lkrnac │ └── book │ └── eiws │ └── chapter01 │ └── scheduling │ └── task │ └── SimpleLoggerSpy.java └── 0000-common-library └── pom.xml /07-jta/0701-jta-xml-config/infinitest.filters: -------------------------------------------------------------------------------- 1 | .*IT -------------------------------------------------------------------------------- /07-jta/0702-jta-java-config/infinitest.filters: -------------------------------------------------------------------------------- 1 | .*IT -------------------------------------------------------------------------------- /05-jms/0506-async-jms-java-config/infinitest.filters: -------------------------------------------------------------------------------- 1 | .*IT -------------------------------------------------------------------------------- /09-batch/0929-skip-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0931-retry-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0821-bridge-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0824-chain-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0904-tasklet-step-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0906-job-launcher-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0917-job-listener-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0919-step-listener-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0923-item-stream-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0925-job-inheritance/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0930-skip-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0932-retry-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0802-parsing-headers/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0815-filter-xml-ref/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0817-filter-xml-spel/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0827-aggregator-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/08xx-channel-null-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/08xx-long-polling-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0908-job-launcher-async/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0910-job-parameters-cli/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0911-job-repository-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0921-chunk-listener-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0924-item-stream-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0937-parallel-steps-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0939-remote-chunking-master/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0939-remote-chunking-slave/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0806-service-activator-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0808-gateway-generic-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0814-header-enricher-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0816-filter-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0818-router-xml-generic/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0819-router-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0823-bridge-to-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0826-splitter-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0828-aggregator-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0830-channel-priority-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0832-channel-executor-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0833-channel-pub-sub-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0835-channel-wire-tap-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0836-error-handling-sync/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0839-error-channel-global/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0840-error-channel-async/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0842-transacted-polling/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0843-messaging-template/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0905-tasklet-step-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0907-job-launcher-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0912-job-repository-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0913-execution-context-tasklet/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0918-job-listener-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0920-step-listener-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0922-chunk-listener-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0935-multi-threaded-step-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0938-parallel-steps-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0940-remote-partitioning-master/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /02-remoting/0207-http-invoker-simple-client/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /02-remoting/0207-http-invoker-simple-service/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /03-ws/0303-ws-boot-service/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=10303 -------------------------------------------------------------------------------- /03-ws/0306-ws-error-service/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=10306 -------------------------------------------------------------------------------- /04-rest/0404-rest-boot-server/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=10404 -------------------------------------------------------------------------------- /08-integration/0809-gateway-generic-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0820-router-xml-message-type/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0822-bridge-from-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0825-splitter-delimiters-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0829-aggregator-default-headers/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0831-channel-rendezvuous-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0834-channel-interceptor-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0837-error-propagated-async/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0838-error-not-propagated-async/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0841-transaction-propagation/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0901-chunk-processing-generic-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0903-chunk-processing-non-generic/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0936-multi-threaded-step-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0940-remote-partitioning-sql-server/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /03-ws/0305-ws-interceptor-service/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=10305 -------------------------------------------------------------------------------- /03-ws/0307-ws-soapaction-service/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=10307 -------------------------------------------------------------------------------- /08-integration/0801-programmatic-message-creation/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0803-channel-adapter-generic-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /08-integration/0807-service-activator-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0902-chunk-processing-generic-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0914-execution-context-chunk-processing/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0928-repeat/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.batch.job.enabled=false -------------------------------------------------------------------------------- /03-ws/0308-ws-objectfactory-service/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=10308 -------------------------------------------------------------------------------- /03-ws/not-finished/0304-ws-xmpp-service/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=10304 -------------------------------------------------------------------------------- /04-rest/0403-rest-java-config-server/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=10403 -------------------------------------------------------------------------------- /04-rest/0405-rest-restcontroller-server/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=10405 -------------------------------------------------------------------------------- /04-rest/0406-rest-parameters-server/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=10405 -------------------------------------------------------------------------------- /08-integration/0804-channel-adapter-generic-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0926-restart-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.batch.job.enabled=false -------------------------------------------------------------------------------- /09-batch/0933-decision-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.batch.job.enabled=false -------------------------------------------------------------------------------- /09-batch/0940-remote-partitioning-sql-server/src/main/resources/h2-purge.sql: -------------------------------------------------------------------------------- 1 | DROP ALL OBJECTS 2 | -------------------------------------------------------------------------------- /08-integration/0810-gateway-non-generic/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=18080 2 | -------------------------------------------------------------------------------- /08-integration/0813-transformer-json/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=18080 2 | -------------------------------------------------------------------------------- /09-batch/0915-batch-scopes-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.batch.job.enabled=false -------------------------------------------------------------------------------- /08-integration/0811-transformer-generic-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=18080 2 | -------------------------------------------------------------------------------- /09-batch/0909-job-parameters/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.batch.job.enabled=false 2 | -------------------------------------------------------------------------------- /09-batch/0927-restart-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.batch.job.enabled=false -------------------------------------------------------------------------------- /09-batch/0934-decision-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.batch.job.enabled=false -------------------------------------------------------------------------------- /08-integration/0805-channel-adapter-non-generic/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=18080 2 | -------------------------------------------------------------------------------- /09-batch/0916-batch-scopes-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.batch.job.enabled=false -------------------------------------------------------------------------------- /05-jms/0515-publish-subscribe-java-config/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.jms.pub-sub-domain=true 2 | -------------------------------------------------------------------------------- /05-jms/0516-publish-subscribe-spring-boot/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.jms.pub-sub-domain=true 2 | -------------------------------------------------------------------------------- /08-integration/0812-transformer-generic-javaconfig/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=18080 2 | -------------------------------------------------------------------------------- /09-batch/0940-remote-partitioning-slave/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.batch.job.enabled=false 2 | -------------------------------------------------------------------------------- /04-rest/0401-rest-jax-rs-server/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | server.port=10401 2 | spring.jersey.type=servlet -------------------------------------------------------------------------------- /09-batch/0910-job-parameters-cli/runFromCli.sh: -------------------------------------------------------------------------------- 1 | java -jar target/0910-job-parameters-cli-0.0.2-SNAPSHOT.jar sugarAmount="no sugar" 2 | -------------------------------------------------------------------------------- /03-ws/0301-ws-xmlconfig-service/src/test/resources/testRequest-fail.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-batch/0902-chunk-processing-generic-javaconfig/runFromCli.sh: -------------------------------------------------------------------------------- 1 | java -jar target/0902-chunk-processing-generic-javaconfig-0.0.2-SNAPSHOT.jar 2 | 3 | -------------------------------------------------------------------------------- /03-ws/0301-ws-xmlconfig-service/src/main/resources/manual/user-request.xml: -------------------------------------------------------------------------------- 1 | 2 | lubos.krnac@gmail.com 3 | 4 | -------------------------------------------------------------------------------- /03-ws/0305-ws-interceptor-service/src/test/resources/testRequest-fail.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /03-ws/not-finished/0304-ws-xmpp-client/src/test/resources/testRequest.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /03-ws/0303-ws-boot-client/src/test/resources/testRequest.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /05-jms/0501-jms11-jndi/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /05-jms/0502-jms2-jndi/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /05-jms/0503-async-jndi/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /03-ws/0303-ws-boot-client/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /03-ws/0303-ws-boot-service/src/test/resources/testRequest.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /03-ws/0306-ws-error-client/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /03-ws/0306-ws-error-client/src/test/resources/testRequest.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /03-ws/0301-ws-xmlconfig-client/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /03-ws/0301-ws-xmlconfig-client/src/test/resources/testRequest.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /03-ws/0305-ws-interceptor-client/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /03-ws/0306-ws-error-service/src/test/resources/testRequest-server-error.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /03-ws/0307-ws-soapaction-client/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /04-rest/0401-rest-jax-rs-server/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /06-jms-tx/0601-java-jms11-sync-tx/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /06-jms-tx/0602-java-jms20-async-tx/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /09-batch/0910-job-parameters-cli/runOneJobFromCli.sh: -------------------------------------------------------------------------------- 1 | java -Dspring.batch.job.names=prepareTeaJob -jar target/0910-job-parameters-cli-0.0.2-SNAPSHOT.jar sugarAmount="no sugar" 2 | -------------------------------------------------------------------------------- /03-ws/0302-ws-javaconfig-client/src/test/resources/testRequest.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /03-ws/0302-ws-javaconfig-service/src/test/resources/testRequest.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /03-ws/0305-ws-interceptor-client/src/test/resources/testRequest.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /03-ws/0306-ws-error-service/src/test/resources/testRequest-success.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /03-ws/0307-ws-soapaction-client/src/test/resources/testRequest.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /03-ws/not-finished/0304-ws-xmpp-client/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: java 2 | jdk: 3 | - oraclejdk8 4 | script: 5 | - cd 0000-examples-parent 6 | - mvn clean install 7 | - cd ../0000-examples 8 | - mvn clean install 9 | -------------------------------------------------------------------------------- /02-remoting/0207-http-invoker-simple-client/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /02-remoting/0210-hessian-dispatcher-servlet/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /03-ws/0301-ws-xmlconfig-service/src/test/resources/testRequest-success.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /03-ws/0308-ws-objectfactory-client/src/test/resources/testRequest.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /03-ws/0308-ws-objectfactory-service/src/test/resources/testRequest.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /05-jms/0504-async-jms-namespace/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests 4 | 5 | .* -------------------------------------------------------------------------------- /06-jms-tx/0612-transacted-xml/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /07-jta/0703-jta-spring-boot/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /02-remoting/0202-spring-rmi-java-config-client/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /02-remoting/0203-spring-rmi-xml-config-client/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /02-remoting/0206-http-invoker-dispatcher-servlet/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /03-ws/0301-ws-xmlconfig-service/src/main/resources/manual/user-details.xml: -------------------------------------------------------------------------------- 1 | 2 | Lubos 3 | Krnac 4 | 5 | -------------------------------------------------------------------------------- /03-ws/0305-ws-interceptor-service/src/test/resources/testRequest-success.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /03-ws/0306-ws-error-service/src/test/resources/testRequest-generic-client-error.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /03-ws/0306-ws-error-service/src/test/resources/testRequest-specific-client-error.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /05-jms/0507-sync-jms-java-config/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /05-jms/0510-jms-custom-converter/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /05-jms/0512-jms-message-creator/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /05-jms/0513-jms-messaging-template/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /05-jms/0514-jms-message-annotations/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /06-jms-tx/0609-dups-ok-acknowledge/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /09-batch/0939-remote-chunking-master/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests 4 | 5 | .* -------------------------------------------------------------------------------- /02-remoting/0208-hessian-handler-servlet-java-config/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /02-remoting/0209-burlap-handler-servlet-xml-config/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /03-ws/0305-ws-interceptor-service/src/test/resources/testRequest-validation-fail.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /05-jms/0508-async-listener-annotation/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /05-jms/0509-jms-message-converter/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=queue/ExpiryQueue 4 | -------------------------------------------------------------------------------- /06-jms-tx/0613-jms-transaction-manager/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /09-batch/0940-remote-partitioning-master/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests 4 | 5 | .* -------------------------------------------------------------------------------- /02-remoting/0204-http-invoker-handler-servlet-java-config/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /02-remoting/0205-http-invoker-handler-servlet-xml-config/infinitest.filters: -------------------------------------------------------------------------------- 1 | ## TestNG Configuration 2 | # Tests with a group-annotation in excluded-groups are not executed: 3 | ## excluded-groups=maventests -------------------------------------------------------------------------------- /06-jms-tx/0605-auto-acknowledge-listener-lost/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /06-jms-tx/0606-auto-acknowledge-sync-lost/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /06-jms-tx/0610-transacted-listener-success/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /06-jms-tx/0611-transacted-listener-duplicate/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /06-jms-tx/0614-handle-duplicates-error-after/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /06-jms-tx/0615-handle-duplicates-error-before/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /06-jms-tx/0603-auto-acknowledge-listener-success/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /06-jms-tx/0607-client-acknowledge-listener-success/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /06-jms-tx/06xx-auto-acknowledge-listener-duplicate/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /06-jms-tx/0608-client-acknowledge-listener-duplicate/src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | spring.hornetq.mode=embedded 2 | spring.hornetq.embedded.enabled=true 3 | spring.hornetq.embedded.queues=ExpiryQueue 4 | -------------------------------------------------------------------------------- /08-integration/0800-integration-common/src/main/java/net/lkrnac/book/eiws/chapter08/in/SiWrapperService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.in; 2 | 3 | public interface SiWrapperService { 4 | boolean processText(String text); 5 | } 6 | -------------------------------------------------------------------------------- /08-integration/0800-integration-common/src/main/java/net/lkrnac/book/eiws/chapter08/in/SiWrapperServiceVoid.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.in; 2 | 3 | public interface SiWrapperServiceVoid { 4 | void processText(String text); 5 | } 6 | -------------------------------------------------------------------------------- /09-batch/0901-chunk-processing-generic-xml/runFromCli.sh: -------------------------------------------------------------------------------- 1 | java -Dloader.main=org.springframework.batch.core.launch.support.CommandLineJobRunner -jar target/0901-chunk-processing-generic-xml-0.0.2-SNAPSHOT.jar batch-config.xml simpleRecordsJob 2 | 3 | -------------------------------------------------------------------------------- /08-integration/0820-router-xml-message-type/src/main/java/net/lkrnac/book/eiws/chapter08/in/SiWrapperService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.in; 2 | 3 | public interface SiWrapperService { 4 | public boolean processMessage(Object message); 5 | } 6 | -------------------------------------------------------------------------------- /03-ws/not-finished/0304-ws-xmpp-client/src/test/resources/testResponse.xml: -------------------------------------------------------------------------------- 1 | 3 | Lubos 4 | Krnac 5 | 6 | 7 | -------------------------------------------------------------------------------- /05-jms/0500-jms-common/src/main/java/net/lkrnac/book/eiws/chapter05/user/User.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter05.user; 2 | 3 | import lombok.Data; 4 | 5 | @Data 6 | public class User { 7 | private String email; 8 | private String name; 9 | } 10 | -------------------------------------------------------------------------------- /09-batch/0907-job-launcher-javaconfig/runFromCli.sh: -------------------------------------------------------------------------------- 1 | java -cp "target/dependency-jars/*:target/0907-job-launcher-javaconfig-0.0.2-SNAPSHOT.jar" org.springframework.batch.core.launch.support.CommandLineJobRunner net.lkrnac.book.eiws.chapter09.BatchApplication prepareTeaJob -------------------------------------------------------------------------------- /09-batch/0915-batch-scopes-xml/src/main/java/net/lkrnac/book/eiws/chapter09/WrittenRecordsCounter.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import lombok.Data; 4 | 5 | @Data 6 | public class WrittenRecordsCounter { 7 | private int processedCount; 8 | } 9 | -------------------------------------------------------------------------------- /02-remoting/0202-spring-rmi-java-config-client/src/main/java/net/lkrnac/book/eiws/chapter02/rmi/spring/javaconfig/BarService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.rmi.spring.javaconfig; 2 | 3 | public interface BarService { 4 | String serveBar(String param); 5 | } 6 | -------------------------------------------------------------------------------- /02-remoting/0202-spring-rmi-java-config-service/src/main/java/net/lkrnac/book/eiws/chapter02/rmi/spring/javaconfig/BarService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.rmi.spring.javaconfig; 2 | 3 | public interface BarService { 4 | String serveBar(String param); 5 | } 6 | -------------------------------------------------------------------------------- /02-remoting/0203-spring-rmi-xml-config-client/src/main/java/net/lkrnac/book/eiws/chapter02/rmi/spring/xmlconfig/BarService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.rmi.spring.xmlconfig; 2 | 3 | public interface BarService { 4 | String serveBar(String param); 5 | } 6 | -------------------------------------------------------------------------------- /02-remoting/0203-spring-rmi-xml-config-service/src/main/java/net/lkrnac/book/eiws/chapter02/rmi/spring/xmlconfig/BarService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.rmi.spring.xmlconfig; 2 | 3 | public interface BarService { 4 | String serveBar(String param); 5 | } 6 | -------------------------------------------------------------------------------- /02-remoting/0207-http-invoker-simple-client/src/main/java/net/lkrnac/book/eiws/chapter02/httpinvoker/simple/shared/BarService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.httpinvoker.simple.shared; 2 | 3 | public interface BarService { 4 | String serveBar(String param); 5 | } 6 | -------------------------------------------------------------------------------- /02-remoting/0207-http-invoker-simple-service/src/main/java/net/lkrnac/book/eiws/chapter02/httpinvoker/simple/shared/BarService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.httpinvoker.simple.shared; 2 | 3 | public interface BarService { 4 | String serveBar(String param); 5 | } 6 | -------------------------------------------------------------------------------- /03-ws/0303-ws-boot-client/src/test/resources/testResponse.xml: -------------------------------------------------------------------------------- 1 | 3 | Lubos 4 | Krnac 5 | 6 | 7 | -------------------------------------------------------------------------------- /03-ws/0303-ws-boot-service/src/test/resources/testResponse.xml: -------------------------------------------------------------------------------- 1 | 3 | Lubos 4 | Krnac 5 | 6 | 7 | -------------------------------------------------------------------------------- /03-ws/0306-ws-error-client/src/test/resources/testResponse.xml: -------------------------------------------------------------------------------- 1 | 3 | Lubos 4 | Krnac 5 | 6 | 7 | -------------------------------------------------------------------------------- /04-rest/0401-rest-jax-rs-server/src/main/java/net/lkrnac/book/eiws/chapter04/UrlConstants.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter04; 2 | 3 | public final class UrlConstants { 4 | public static final String USERS_URL = "/users"; 5 | 6 | private UrlConstants() { 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /04-rest/0404-rest-boot-server/src/main/java/net/lkrnac/book/eiws/chapter04/UrlConstants.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter04; 2 | 3 | public final class UrlConstants { 4 | private UrlConstants() { 5 | } 6 | 7 | public static final String USERS_URL = "/users"; 8 | } 9 | -------------------------------------------------------------------------------- /08-integration/0813-transformer-json/src/main/java/net/lkrnac/book/eiws/chapter08/model/User.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.model; 2 | 3 | import lombok.Data; 4 | 5 | @Data 6 | public class User { 7 | private String email; 8 | private String name; 9 | } 10 | -------------------------------------------------------------------------------- /03-ws/0301-ws-xmlconfig-client/src/test/resources/testResponse.xml: -------------------------------------------------------------------------------- 1 | 3 | Lubos 4 | Krnac 5 | 6 | 7 | -------------------------------------------------------------------------------- /04-rest/0402-rest-xml-config-server/src/main/java/net/lkrnac/book/eiws/chapter04/UrlConstants.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter04; 2 | 3 | public final class UrlConstants { 4 | private UrlConstants() { 5 | } 6 | 7 | public static final String USERS_URL = "/users"; 8 | } 9 | -------------------------------------------------------------------------------- /04-rest/0403-rest-java-config-server/src/main/java/net/lkrnac/book/eiws/chapter04/UrlConstants.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter04; 2 | 3 | public final class UrlConstants { 4 | private UrlConstants() { 5 | } 6 | 7 | public static final String USERS_URL = "/users"; 8 | } 9 | -------------------------------------------------------------------------------- /04-rest/0406-rest-parameters-server/src/main/java/net/lkrnac/book/eiws/chapter04/UrlConstants.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter04; 2 | 3 | public final class UrlConstants { 4 | private UrlConstants() { 5 | } 6 | 7 | public static final String USERS_URL = "/users"; 8 | } 9 | -------------------------------------------------------------------------------- /09-batch/0903-chunk-processing-non-generic/src/main/java/net/lkrnac/book/eiws/chapter09/model/User.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09.model; 2 | 3 | import lombok.Data; 4 | 5 | @Data 6 | public class User { 7 | private String email; 8 | private String name; 9 | } 10 | -------------------------------------------------------------------------------- /01-async/0101-java-concurrency/src/main/java/net/lkrnac/book/eiws/chapter01/javaconcurrency/SimpleLogger.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter01.javaconcurrency; 2 | 3 | public class SimpleLogger { 4 | public void log(String message) { 5 | System.out.println(message); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /01-async/0104-java-scheduling/src/main/java/net/lkrnac/book/eiws/chapter01/javascheduling/SimpleLogger.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter01.javascheduling; 2 | 3 | public class SimpleLogger { 4 | public void log(String message) { 5 | System.out.println(message); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /02-remoting/0210-hessian-dispatcher-servlet/src/main/java/net/lkrnac/book/eiws/chapter02/hessian/dispatcherservlet/shared/BarService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.hessian.dispatcherservlet.shared; 2 | 3 | public interface BarService { 4 | String serveBar(String param); 5 | } 6 | -------------------------------------------------------------------------------- /03-ws/0301-ws-xmlconfig-service/src/test/resources/testResponse.xml: -------------------------------------------------------------------------------- 1 | 3 | Lubos 4 | Krnac 5 | 6 | 7 | -------------------------------------------------------------------------------- /03-ws/0302-ws-javaconfig-client/src/test/resources/testResponse.xml: -------------------------------------------------------------------------------- 1 | 3 | Lubos 4 | Krnac 5 | 6 | 7 | -------------------------------------------------------------------------------- /03-ws/0302-ws-javaconfig-service/src/test/resources/testResponse.xml: -------------------------------------------------------------------------------- 1 | 3 | Lubos 4 | Krnac 5 | 6 | 7 | -------------------------------------------------------------------------------- /03-ws/0305-ws-interceptor-client/src/test/resources/testResponse.xml: -------------------------------------------------------------------------------- 1 | 3 | Lubos 4 | Krnac 5 | 6 | 7 | -------------------------------------------------------------------------------- /03-ws/0305-ws-interceptor-service/src/test/resources/testResponse.xml: -------------------------------------------------------------------------------- 1 | 3 | Lubos 4 | Krnac 5 | 6 | 7 | -------------------------------------------------------------------------------- /03-ws/0306-ws-error-service/src/test/resources/testResponse-success.xml: -------------------------------------------------------------------------------- 1 | 3 | Lubos 4 | Krnac 5 | 6 | 7 | -------------------------------------------------------------------------------- /03-ws/0307-ws-soapaction-client/src/test/resources/testResponse.xml: -------------------------------------------------------------------------------- 1 | 3 | Lubos 4 | Krnac 5 | 6 | 7 | -------------------------------------------------------------------------------- /04-rest/0405-rest-restcontroller-server/src/main/java/net/lkrnac/book/eiws/chapter04/UrlConstants.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter04; 2 | 3 | public final class UrlConstants { 4 | private UrlConstants() { 5 | } 6 | 7 | public static final String USERS_URL = "/users"; 8 | } 9 | -------------------------------------------------------------------------------- /03-ws/0306-ws-error-service/src/test/resources/testResponse-server-error.xml: -------------------------------------------------------------------------------- 1 | 2 | SOAP-ENV:Server 3 | Server error 4 | 5 | -------------------------------------------------------------------------------- /03-ws/0308-ws-objectfactory-client/src/test/resources/testResponse.xml: -------------------------------------------------------------------------------- 1 | 3 | Lubos 4 | Krnac 5 | 6 | 7 | -------------------------------------------------------------------------------- /03-ws/0308-ws-objectfactory-service/src/test/resources/testResponse.xml: -------------------------------------------------------------------------------- 1 | 3 | Lubos 4 | Krnac 5 | 6 | 7 | -------------------------------------------------------------------------------- /08-integration/0827-aggregator-xml/src/main/java/net/lkrnac/book/eiws/chapter08/in/SiWrapperServiceFuture.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.in; 2 | 3 | import java.util.concurrent.Future; 4 | 5 | public interface SiWrapperServiceFuture { 6 | Future processText(String text); 7 | } 8 | -------------------------------------------------------------------------------- /02-remoting/0206-http-invoker-dispatcher-servlet/src/main/java/net/lkrnac/book/eiws/chapter02/httpinvoker/dispatcherservlet/shared/BarService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.httpinvoker.dispatcherservlet.shared; 2 | 3 | public interface BarService { 4 | String serveBar(String param); 5 | } 6 | -------------------------------------------------------------------------------- /02-remoting/0209-burlap-handler-servlet-xml-config/src/main/java/net/lkrnac/book/eiws/chapter02/burlap/handlerservlet/xmlconfig/shared/BarService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.burlap.handlerservlet.xmlconfig.shared; 2 | 3 | public interface BarService { 4 | String serveBar(String param); 5 | } 6 | -------------------------------------------------------------------------------- /03-ws/0305-ws-interceptor-service/src/test/resources/testResponse-validation-fail.xml: -------------------------------------------------------------------------------- 1 | 3 | Lubos 4 | 12345 5 | 6 | 7 | -------------------------------------------------------------------------------- /03-ws/0306-ws-error-service/src/test/resources/testResponse-generic-client-error.xml: -------------------------------------------------------------------------------- 1 | 2 | SOAP-ENV:Client 3 | Generic client error 4 | 5 | -------------------------------------------------------------------------------- /03-ws/0306-ws-error-service/src/test/resources/testResponse-specific-client-error.xml: -------------------------------------------------------------------------------- 1 | 2 | SOAP-ENV:Client 3 | Specific client error 4 | 5 | -------------------------------------------------------------------------------- /08-integration/0828-aggregator-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter08/in/SiWrapperServiceFuture.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.in; 2 | 3 | import java.util.concurrent.Future; 4 | 5 | public interface SiWrapperServiceFuture { 6 | Future processText(String text); 7 | } 8 | -------------------------------------------------------------------------------- /02-remoting/0208-hessian-handler-servlet-java-config/src/main/java/net/lkrnac/book/eiws/chapter02/hessian/handlerservlet/javaconfig/shared/BarService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.hessian.handlerservlet.javaconfig.shared; 2 | 3 | public interface BarService { 4 | String serveBar(String param); 5 | } 6 | -------------------------------------------------------------------------------- /02-remoting/0205-http-invoker-handler-servlet-xml-config/src/main/java/net/lkrnac/book/eiws/chapter02/httpinvoker/handlerservlet/xmlconfig/shared/BarService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.httpinvoker.handlerservlet.xmlconfig.shared; 2 | 3 | public interface BarService { 4 | String serveBar(String param); 5 | } 6 | -------------------------------------------------------------------------------- /08-integration/0802-parsing-headers/src/main/java/net/lkrnac/book/eiws/chapter08/in/SiWrapperServiceMessage.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.in; 2 | 3 | import org.springframework.messaging.Message; 4 | 5 | public interface SiWrapperServiceMessage { 6 | public void processMessage(Message message); 7 | } 8 | -------------------------------------------------------------------------------- /08-integration/0811-transformer-generic-xml/src/main/java/net/lkrnac/book/eiws/chapter08/SimpleMessageTransformer.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08; 2 | 3 | public class SimpleMessageTransformer { 4 | public String transformMessage(String message) { 5 | return new String(message + " transformed"); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /09-batch/0903-chunk-processing-non-generic/src/main/resources/users.txt: -------------------------------------------------------------------------------- 1 | Lubos Krnac,lubos.krnac@gmail.com 2 | Cade Mckee,massa.rutrum@magnaNam.ca 3 | Melvin Boone,enim.Nunc@Sedcongue.co.uk 4 | Thane Flowers,vulputate.velit@dignissimlacus.org 5 | Mohammad Salas,convallis@malesuada.ca 6 | Upton Ewing,tincidunt.nibh@natoque.org 7 | -------------------------------------------------------------------------------- /02-remoting/0204-http-invoker-handler-servlet-java-config/src/main/java/net/lkrnac/book/eiws/chapter02/httpinvoker/handlerservlet/javaconfig/shared/BarService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.httpinvoker.handlerservlet.javaconfig.shared; 2 | 3 | public interface BarService { 4 | String serveBar(String param); 5 | } 6 | -------------------------------------------------------------------------------- /02-remoting/0201-java-rmi-client/src/main/java/net/lkrnac/book/eiws/chapter02/rmi/java/BarService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.rmi.java; 2 | 3 | import java.rmi.Remote; 4 | import java.rmi.RemoteException; 5 | 6 | public interface BarService extends Remote { 7 | String serveBar(String param) throws RemoteException; 8 | } 9 | -------------------------------------------------------------------------------- /02-remoting/0201-java-rmi-service/src/main/java/net/lkrnac/book/eiws/chapter02/rmi/java/BarService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.rmi.java; 2 | 3 | import java.rmi.Remote; 4 | import java.rmi.RemoteException; 5 | 6 | public interface BarService extends Remote { 7 | String serveBar(String param) throws RemoteException; 8 | } 9 | -------------------------------------------------------------------------------- /04-rest/0405-rest-async-client/src/main/java/net/lkrnac/book/eiws/chapter04/model/UserInfo.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter04.model; 2 | 3 | import java.util.Collection; 4 | 5 | import lombok.Value; 6 | 7 | @Value 8 | public class UserInfo { 9 | private User user; 10 | private Collection userActions; 11 | } 12 | -------------------------------------------------------------------------------- /08-integration/0801-programmatic-message-creation/src/main/java/net/lkrnac/book/eiws/chapter08/in/SiWrapperServiceMessage.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.in; 2 | 3 | import org.springframework.messaging.Message; 4 | 5 | public interface SiWrapperServiceMessage { 6 | public void processMessage(Message message); 7 | } 8 | -------------------------------------------------------------------------------- /08-integration/0806-service-activator-xml/src/main/java/net/lkrnac/book/eiws/chapter08/in/ReadService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.in; 2 | 3 | import org.springframework.stereotype.Service; 4 | 5 | @Service 6 | public class ReadService { 7 | public String read() { 8 | return "simple message"; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /08-integration/0803-channel-adapter-generic-xml/src/main/java/net/lkrnac/book/eiws/chapter08/in/ReadService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.in; 2 | 3 | import org.springframework.stereotype.Service; 4 | 5 | @Service 6 | public class ReadService { 7 | public String read() { 8 | return "simple message"; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /04-rest/0400-rest-common/src/main/java/net/lkrnac/book/eiws/chapter04/model/User.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter04.model; 2 | 3 | import lombok.Data; 4 | import lombok.EqualsAndHashCode; 5 | 6 | @Data 7 | @EqualsAndHashCode(of = { "email" }) 8 | public class User { 9 | private String email; 10 | private String name; 11 | } 12 | -------------------------------------------------------------------------------- /05-jms/0501-jms11-jndi/src/test/resources/hornetq/hornetq-users.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /05-jms/0505-async-jms-xml/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /01-async/0104-java-scheduling/src/main/java/net/lkrnac/book/eiws/chapter01/javascheduling/Application.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter01.javascheduling; 2 | 3 | public final class Application { 4 | public static void main(String... args) throws InterruptedException { 5 | new SimpleScheduler(new SimpleLogger()).scheduleTask(); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /05-jms/0504-async-jms-namespace/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /05-jms/0506-async-jms-java-config/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /05-jms/0507-sync-jms-java-config/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /05-jms/0509-jms-message-converter/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /05-jms/0510-jms-custom-converter/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /05-jms/0512-jms-message-creator/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /06-jms-tx/0612-transacted-xml/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /01-async/0102-async-job/src/main/java/net/lkrnac/book/eiws/chapter01/async/task/SimpleLogger.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter01.async.task; 2 | 3 | import org.springframework.stereotype.Component; 4 | 5 | @Component 6 | public class SimpleLogger { 7 | public void log(String message) { 8 | System.out.println(message); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /05-jms/0508-async-listener-annotation/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /05-jms/0513-jms-messaging-template/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /05-jms/0514-jms-message-annotations/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /06-jms-tx/0601-java-jms11-sync-tx/src/test/resources/hornetq/hornetq-users.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /08-integration/0841-transaction-propagation/src/main/java/net/lkrnac/book/eiws/chapter08/in/SiWrapperServiceTransacted.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.in; 2 | 3 | import org.springframework.transaction.annotation.Transactional; 4 | 5 | @Transactional 6 | public interface SiWrapperServiceTransacted { 7 | boolean processText(String text); 8 | } 9 | -------------------------------------------------------------------------------- /05-jms/0511-jms-caching-connection-factory/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /07-jta/0701-jta-xml-config/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /07-jta/0702-jta-java-config/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /07-jta/0703-jta-spring-boot/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /09-batch/0909-job-parameters/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /09-batch/0933-decision-xml/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /01-async/0103-scheduled-job/src/main/java/net/lkrnac/book/eiws/chapter01/scheduling/task/SimpleLogger.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter01.scheduling.task; 2 | 3 | import org.springframework.stereotype.Component; 4 | 5 | @Component 6 | public class SimpleLogger { 7 | public void log(String message) { 8 | System.out.println(message); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /09-batch/0910-job-parameters-cli/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /09-batch/0934-decision-javaconfig/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /04-rest/0406-rest-errorhandler-client/src/main/java/net/lkrnac/book/eiws/chapter04/client/CustomException.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter04.client; 2 | 3 | public class CustomException extends RuntimeException { 4 | private static final long serialVersionUID = 1L; 5 | 6 | public CustomException(String message) { 7 | super(message); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /06-jms-tx/0609-dups-ok-acknowledge/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /06-jms-tx/0613-jms-transaction-manager/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0813-transformer-json/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0818-router-xml-generic/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0819-router-javaconfig/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0827-aggregator-xml/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0842-transacted-polling/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0843-messaging-template/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /05-jms/0515-publish-subscribe-java-config/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /05-jms/0516-publish-subscribe-spring-boot/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /06-jms-tx/0606-auto-acknowledge-sync-lost/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /06-jms-tx/0610-transacted-listener-success/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0808-gateway-generic-xml/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0810-gateway-non-generic/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0811-transformer-generic-xml/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0820-router-xml-message-type/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0822-bridge-from-javaconfig/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0823-bridge-to-javaconfig/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0825-splitter-delimiters-xml/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0826-splitter-javaconfig/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0828-aggregator-javaconfig/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0836-error-handling-sync/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0837-error-propagated-async/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0839-error-channel-global/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0840-error-channel-async/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0841-transaction-propagation/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /03-ws/0301-ws-xmlconfig-client/src/main/java/net/lkrnac/book/eiws/chapter03/ws/xmlconfig/config/SimpleLogger.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter03.ws.xmlconfig.config; 2 | 3 | import org.springframework.stereotype.Component; 4 | 5 | @Component 6 | public class SimpleLogger { 7 | public void log(String message) { 8 | System.out.println(message); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /03-ws/0301-ws-xmlconfig-service/src/main/java/net/lkrnac/book/eiws/chapter03/ws/xmlconfig/server/SimpleLogger.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter03.ws.xmlconfig.server; 2 | 3 | import org.springframework.stereotype.Component; 4 | 5 | @Component 6 | public class SimpleLogger { 7 | public void log(String message) { 8 | System.out.println(message); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /06-jms-tx/0605-auto-acknowledge-listener-lost/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /06-jms-tx/0611-transacted-listener-duplicate/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /06-jms-tx/0614-handle-duplicates-error-after/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /06-jms-tx/0615-handle-duplicates-error-before/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0805-channel-adapter-non-generic/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0809-gateway-generic-javaconfig/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0829-aggregator-default-headers/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0838-error-not-propagated-async/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /03-ws/0305-ws-interceptor-client/src/main/java/net/lkrnac/book/eiws/chapter03/ws/interceptor/client/SimpleLogger.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter03.ws.interceptor.client; 2 | 3 | import org.springframework.stereotype.Component; 4 | 5 | @Component 6 | public class SimpleLogger { 7 | public void log(String message) { 8 | System.out.println(message); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /03-ws/0305-ws-interceptor-service/src/main/java/net/lkrnac/book/eiws/chapter03/ws/interceptor/server/SimpleLogger.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter03.ws.interceptor.server; 2 | 3 | import org.springframework.stereotype.Component; 4 | 5 | @Component 6 | public class SimpleLogger { 7 | public void log(String message) { 8 | System.out.println(message); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /06-jms-tx/0607-client-acknowledge-listener-success/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /06-jms-tx/0608-client-acknowledge-listener-duplicate/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0812-transformer-generic-javaconfig/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0824-chain-xml/src/main/java/net/lkrnac/book/eiws/chapter08/SimpleHeaderEnricher.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08; 2 | 3 | import org.springframework.stereotype.Component; 4 | 5 | @Component 6 | public class SimpleHeaderEnricher { 7 | public String addHeader(String message) { 8 | return message.contains("1") ? "header1" : "header2"; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /03-ws/0303-ws-boot-service/src/main/java/net/lkrnac/book/eiws/chapter03/ws/boot/server/WsBootServerApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter03.ws.boot.server; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | 5 | public class WsBootServerApplication { 6 | public static void main(String[] args) { 7 | SpringApplication.run(ServerConfiguration.class, args); 8 | } 9 | } -------------------------------------------------------------------------------- /03-ws/0306-ws-error-service/src/main/java/net/lkrnac/book/eiws/chapter03/ws/error/server/WsErrorServerApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter03.ws.error.server; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | 5 | public class WsErrorServerApplication { 6 | public static void main(String[] args) { 7 | SpringApplication.run(ServerConfiguration.class, args); 8 | } 9 | } -------------------------------------------------------------------------------- /08-integration/0814-header-enricher-xml/src/main/java/net/lkrnac/book/eiws/chapter08/SimpleHeaderEnricher.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08; 2 | 3 | import org.springframework.stereotype.Component; 4 | 5 | @Component 6 | public class SimpleHeaderEnricher { 7 | public String addHeader(String message) { 8 | return message.contains("1") ? "header1" : "header2"; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /03-ws/not-finished/0304-ws-xmpp-service/src/main/java/net/lkrnac/book/eiws/chapter03/ws/xmpp/server/WsXmppServerApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter03.ws.xmpp.server; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | 5 | public class WsXmppServerApplication { 6 | public static void main(String[] args) { 7 | SpringApplication.run(ServerConfiguration.class, args); 8 | } 9 | } -------------------------------------------------------------------------------- /05-jms/0500-jms-common/src/main/java/net/lkrnac/book/eiws/chapter05/user/UserService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter05.user; 2 | 3 | import lombok.extern.slf4j.Slf4j; 4 | 5 | import org.springframework.stereotype.Service; 6 | 7 | @Slf4j 8 | @Service 9 | public class UserService { 10 | public void processUser(User user) { 11 | log.info("User object Received: {}", user); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /08-integration/0801-programmatic-message-creation/src/main/java/net/lkrnac/book/eiws/chapter08/out/WriteRepositoryWithHeaders.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.out; 2 | 3 | import org.springframework.stereotype.Repository; 4 | 5 | @Repository 6 | public class WriteRepositoryWithHeaders { 7 | public int writeWithHeader(String message, String simpleHeader) { 8 | return 1; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /05-jms/0500-jms-common/src/main/java/net/lkrnac/book/eiws/chapter05/text/SimpleService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter05.text; 2 | 3 | import lombok.extern.slf4j.Slf4j; 4 | 5 | import org.springframework.stereotype.Service; 6 | 7 | @Slf4j 8 | @Service 9 | public class SimpleService { 10 | public void processText(String message) { 11 | log.info("Message received: {}", message); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /05-jms/0502-jms2-jndi/src/test/resources/hornetq/hornetq-users.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /05-jms/0503-async-jndi/src/test/resources/hornetq/hornetq-users.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /09-batch/0900-batch-common/src/main/java/net/lkrnac/book/eiws/chapter09/step/SimpleExecutablePoint.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09.step; 2 | 3 | import lombok.extern.slf4j.Slf4j; 4 | 5 | import org.springframework.stereotype.Component; 6 | 7 | @Slf4j 8 | @Component 9 | public class SimpleExecutablePoint { 10 | public void execute(String message) { 11 | log.info(message); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /03-ws/0307-ws-soapaction-service/src/main/java/net/lkrnac/book/eiws/chapter03/ws/soapaction/server/WsSoapactionServerApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter03.ws.soapaction.server; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | 5 | public class WsSoapactionServerApplication { 6 | public static void main(String[] args) { 7 | SpringApplication.run(ServerConfiguration.class, args); 8 | } 9 | } -------------------------------------------------------------------------------- /03-ws/0305-ws-interceptor-service/src/main/java/net/lkrnac/book/eiws/chapter03/ws/interceptor/server/WsInterceptorServerApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter03.ws.interceptor.server; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | 5 | public class WsInterceptorServerApplication { 6 | public static void main(String[] args) { 7 | SpringApplication.run(ServerConfiguration.class, args); 8 | } 9 | } -------------------------------------------------------------------------------- /05-jms/0504-async-jms-namespace/src/test/resources/hornetq/hornetq-users.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /06-jms-tx/0602-java-jms20-async-tx/src/test/resources/hornetq/hornetq-users.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /07-jta/0701-jta-xml-config/src/test/resources/hornetq/hornetq-users.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /07-jta/0702-jta-java-config/src/test/resources/hornetq/hornetq-users.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /05-jms/0506-async-jms-java-config/src/test/resources/hornetq/hornetq-users.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /09-batch/0939-remote-chunking-master/src/test/resources/hornetq/hornetq-users.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /02-remoting/0202-spring-rmi-java-config-service/src/main/java/net/lkrnac/book/eiws/chapter02/rmi/spring/javaconfig/service/Application.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.rmi.spring.javaconfig.service; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | 5 | public class Application { 6 | public static void main(String... args) { 7 | SpringApplication.run(ServiceConfiguration.class, args); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /03-ws/0308-ws-objectfactory-service/src/main/java/net/lkrnac/book/eiws/chapter03/ws/objectfactory/server/WsObjectFactoryServerApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter03.ws.objectfactory.server; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | 5 | public class WsObjectFactoryServerApplication { 6 | public static void main(String[] args) { 7 | SpringApplication.run(ServerConfiguration.class, args); 8 | } 9 | } -------------------------------------------------------------------------------- /09-batch/0940-remote-partitioning-master/src/test/resources/hornetq/hornetq-users.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /05-jms/0515-publish-subscribe-java-config/src/test/resources/hornetq/hornetq-users.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /09-batch/0906-job-launcher-xml/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 5 | utf8 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /09-batch/0908-job-launcher-async/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 5 | utf8 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /09-batch/0911-job-repository-xml/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 5 | utf8 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /04-rest/0401-rest-jax-rs-server/src/main/java/net/lkrnac/book/eiws/chapter04/jaxrs/EndpointRegister.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter04.jaxrs; 2 | 3 | import org.glassfish.jersey.server.ResourceConfig; 4 | import org.springframework.stereotype.Component; 5 | 6 | @Component 7 | public class EndpointRegister extends ResourceConfig { 8 | public EndpointRegister() { 9 | super(); 10 | register(UserResource.class); 11 | } 12 | } -------------------------------------------------------------------------------- /08-integration/0800-integration-common/src/main/java/net/lkrnac/book/eiws/chapter08/out/WriteRepository.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.out; 2 | 3 | import lombok.extern.slf4j.Slf4j; 4 | 5 | import org.springframework.stereotype.Repository; 6 | 7 | @Slf4j 8 | @Repository 9 | public class WriteRepository { 10 | public int persist(String text) { 11 | log.info("Text persisted: " + text); 12 | return 1; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /08-integration/0842-transacted-polling/src/main/java/net/lkrnac/book/eiws/chapter08/out/ServiceWithError.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.out; 2 | 3 | import java.util.Map; 4 | 5 | import org.springframework.stereotype.Service; 6 | 7 | @Service 8 | public class ServiceWithError { 9 | public boolean handleJdbcResult(Map jdbcResult) { 10 | throw new IllegalStateException("error occurred"); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /09-batch/0907-job-launcher-javaconfig/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 5 | utf8 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /08-integration/0841-transaction-propagation/src/main/java/net/lkrnac/book/eiws/chapter08/out/ServiceWithError.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.out; 2 | 3 | import java.util.Map; 4 | 5 | import org.springframework.stereotype.Service; 6 | 7 | @Service 8 | public class ServiceWithError { 9 | public boolean handleJdbcResult(Map jdbcResult) { 10 | throw new IllegalStateException("error occurred"); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /09-batch/0912-job-repository-javaconfig/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 5 | utf8 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /09-batch/0913-execution-context-tasklet/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 5 | utf8 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /09-batch/0916-batch-scopes-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter09/ProcessedRecordsCounter.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import lombok.Data; 4 | 5 | import org.springframework.batch.core.configuration.annotation.JobScope; 6 | import org.springframework.stereotype.Component; 7 | 8 | @Data 9 | @JobScope 10 | @Component 11 | public class ProcessedRecordsCounter { 12 | private int processedCount; 13 | } 14 | -------------------------------------------------------------------------------- /08-integration/0803-channel-adapter-generic-xml/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 5 | utf8 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /03-ws/0301-ws-xmlconfig-service/src/main/resources/manual/user-request-generated.xsd.off: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /08-integration/0804-channel-adapter-generic-javaconfig/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 5 | utf8 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /08-integration/0819-router-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter08/in/SiWrapperServiceAnnotated.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.in; 2 | 3 | import org.springframework.integration.annotation.Gateway; 4 | import org.springframework.integration.annotation.MessagingGateway; 5 | 6 | @MessagingGateway 7 | public interface SiWrapperServiceAnnotated { 8 | @Gateway(requestChannel = "inChannel") 9 | public boolean processText(String text); 10 | } 11 | -------------------------------------------------------------------------------- /08-integration/0826-splitter-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter08/in/SiWrapperServiceAnnoated.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.in; 2 | 3 | import org.springframework.integration.annotation.Gateway; 4 | import org.springframework.integration.annotation.MessagingGateway; 5 | 6 | @MessagingGateway 7 | public interface SiWrapperServiceAnnoated { 8 | @Gateway(requestChannel = "inChannel") 9 | public boolean processText(String text); 10 | } 11 | -------------------------------------------------------------------------------- /08-integration/0813-transformer-json/src/main/java/net/lkrnac/book/eiws/chapter08/out/UserRepository.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.out; 2 | 3 | import lombok.extern.slf4j.Slf4j; 4 | import net.lkrnac.book.eiws.chapter08.model.User; 5 | 6 | import org.springframework.stereotype.Repository; 7 | 8 | @Slf4j 9 | @Repository 10 | public class UserRepository { 11 | public void persistUser(User user) { 12 | log.info("Object received: " + user); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /08-integration/0816-filter-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter08/in/SiWrapperServiceVoidAnnotated.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.in; 2 | 3 | import org.springframework.integration.annotation.Gateway; 4 | import org.springframework.integration.annotation.MessagingGateway; 5 | 6 | @MessagingGateway 7 | public interface SiWrapperServiceVoidAnnotated { 8 | @Gateway(requestChannel = "inChannel") 9 | public void processText(String text); 10 | } 11 | -------------------------------------------------------------------------------- /08-integration/0822-bridge-from-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter08/in/SiWrapperServiceAnnotated.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.in; 2 | 3 | import org.springframework.integration.annotation.Gateway; 4 | import org.springframework.integration.annotation.MessagingGateway; 5 | 6 | @MessagingGateway 7 | public interface SiWrapperServiceAnnotated { 8 | @Gateway(requestChannel = "inChannel") 9 | public boolean processText(String text); 10 | } 11 | -------------------------------------------------------------------------------- /08-integration/0823-bridge-to-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter08/in/SiWrapperServiceAnnotated.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.in; 2 | 3 | import org.springframework.integration.annotation.Gateway; 4 | import org.springframework.integration.annotation.MessagingGateway; 5 | 6 | @MessagingGateway 7 | public interface SiWrapperServiceAnnotated { 8 | @Gateway(requestChannel = "inChannel") 9 | public boolean processText(String text); 10 | } 11 | -------------------------------------------------------------------------------- /09-batch/0929-skip-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0931-retry-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /04-rest/0403-rest-java-config-server/src/main/java/net/lkrnac/book/eiws/chapter04/RestJavaConfigConfiguration.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter04; 2 | 3 | import org.springframework.context.annotation.ComponentScan; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.web.servlet.config.annotation.EnableWebMvc; 6 | 7 | @Configuration 8 | @ComponentScan 9 | @EnableWebMvc 10 | public class RestJavaConfigConfiguration { 11 | } 12 | -------------------------------------------------------------------------------- /05-jms/0515-publish-subscribe-java-config/src/main/java/net/lkrnac/book/eiws/chapter05/pubsub/PubSubService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter05.pubsub; 2 | 3 | import lombok.extern.slf4j.Slf4j; 4 | 5 | import org.springframework.stereotype.Service; 6 | 7 | @Slf4j 8 | @Service 9 | public class PubSubService { 10 | public void processText(int listenerId, String message) { 11 | log.info("Message Received: {} via listener {}", message, listenerId); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /05-jms/0516-publish-subscribe-spring-boot/src/main/java/net/lkrnac/book/eiws/chapter05/pubsub/PubSubService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter05.pubsub; 2 | 3 | import lombok.extern.slf4j.Slf4j; 4 | 5 | import org.springframework.stereotype.Service; 6 | 7 | @Slf4j 8 | @Service 9 | public class PubSubService { 10 | public void processText(int listenerId, String message) { 11 | log.info("Message Received: {} via listener {}", message, listenerId); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /06-jms-tx/0606-auto-acknowledge-sync-lost/uml-diagrams/sequence.uml: -------------------------------------------------------------------------------- 1 | @startuml 2 | skinparam monochrome true 3 | 4 | participant "ExpiryQueue" as mq 5 | participant "SimpleMessageReader" as smr 6 | 7 | mq <- smr : readMessage 8 | activate smr 9 | mq <- smr : auto acknowledgement 10 | 11 | smr -> smr : preprocess 12 | activate smr 13 | 14 | smr <- smr : exception 15 | destroy smr 16 | 17 | deactivate smr 18 | note over smr 19 | Message is lost 20 | end note 21 | 22 | @enduml -------------------------------------------------------------------------------- /08-integration/0809-gateway-generic-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter08/in/SiWrapperServiceAnnotated.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.in; 2 | 3 | import org.springframework.integration.annotation.Gateway; 4 | import org.springframework.integration.annotation.MessagingGateway; 5 | 6 | @MessagingGateway 7 | public interface SiWrapperServiceAnnotated { 8 | @Gateway(requestChannel = "inChannel") 9 | public boolean processText(String text); 10 | } 11 | -------------------------------------------------------------------------------- /09-batch/0904-tasklet-step-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0910-job-parameters-cli/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws Exception { 9 | SpringApplication.run(BatchApplication.class, args); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0915-batch-scopes-xml/src/main/java/net/lkrnac/book/eiws/chapter09/ReadCountRestricter.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | @Getter 7 | public class ReadCountRestricter { 8 | private long countToProcess; 9 | 10 | @Setter 11 | private long readCount; 12 | 13 | public ReadCountRestricter(long countToProcess) { 14 | super(); 15 | this.countToProcess = countToProcess; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /09-batch/0917-job-listener-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0923-item-stream-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0925-job-inheritance/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0930-skip-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0932-retry-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /06-jms-tx/0605-auto-acknowledge-listener-lost/uml-diagrams/sequence.uml: -------------------------------------------------------------------------------- 1 | @startuml 2 | skinparam monochrome true 3 | 4 | participant "ExpiryQueue" as mq 5 | participant "SimpleMessageListener" as sml 6 | 7 | mq <- sml : readMessage 8 | activate sml 9 | mq <- sml : auto acknowledgement 10 | 11 | sml -> sml : preprocess 12 | activate sml 13 | 14 | sml <- sml : exception 15 | destroy sml 16 | 17 | deactivate sml 18 | note over sml 19 | Message is lost 20 | end note 21 | 22 | @enduml -------------------------------------------------------------------------------- /06-jms-tx/0609-dups-ok-acknowledge/src/main/java/net/lkrnac/book/eiws/chapter06/text/JmsApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter06.text; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class JmsApplication { 8 | public static void main(String[] args) throws Exception { 9 | SpringApplication.run(JmsApplication.class, args); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /08-integration/0812-transformer-generic-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter08/in/SiWrapperServiceAnnotated.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.in; 2 | 3 | import org.springframework.integration.annotation.Gateway; 4 | import org.springframework.integration.annotation.MessagingGateway; 5 | 6 | @MessagingGateway 7 | public interface SiWrapperServiceAnnotated { 8 | @Gateway(requestChannel = "inChannel") 9 | public boolean processText(String text); 10 | } 11 | -------------------------------------------------------------------------------- /09-batch/0919-step-listener-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0921-chunk-listener-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0937-parallel-steps-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /06-jms-tx/0606-auto-acknowledge-sync-lost/src/main/java/net/lkrnac/book/eiws/chapter06/text/JmsApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter06.text; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class JmsApplication { 8 | public static void main(String[] args) throws Exception { 9 | SpringApplication.run(JmsApplication.class, args); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /06-jms-tx/0613-jms-transaction-manager/src/main/java/net/lkrnac/book/eiws/chapter06/text/JmsApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter06.text; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class JmsApplication { 8 | public static void main(String[] args) throws Exception { 9 | SpringApplication.run(JmsApplication.class, args); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0905-tasklet-step-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0918-job-listener-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0920-step-listener-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0922-chunk-listener-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0924-item-stream-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0935-multi-threaded-step-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0938-parallel-steps-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /06-jms-tx/0605-auto-acknowledge-listener-lost/src/main/java/net/lkrnac/book/eiws/chapter06/text/JmsApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter06.text; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class JmsApplication { 8 | public static void main(String[] args) throws Exception { 9 | SpringApplication.run(JmsApplication.class, args); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /06-jms-tx/0610-transacted-listener-success/src/main/java/net/lkrnac/book/eiws/chapter06/text/JmsApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter06.text; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class JmsApplication { 8 | public static void main(String[] args) throws Exception { 9 | SpringApplication.run(JmsApplication.class, args); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /06-jms-tx/0611-transacted-listener-duplicate/src/main/java/net/lkrnac/book/eiws/chapter06/text/JmsApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter06.text; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class JmsApplication { 8 | public static void main(String[] args) throws Exception { 9 | SpringApplication.run(JmsApplication.class, args); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /06-jms-tx/0614-handle-duplicates-error-after/src/main/java/net/lkrnac/book/eiws/chapter06/text/JmsApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter06.text; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class JmsApplication { 8 | public static void main(String[] args) throws Exception { 9 | SpringApplication.run(JmsApplication.class, args); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /06-jms-tx/0615-handle-duplicates-error-before/src/main/java/net/lkrnac/book/eiws/chapter06/text/JmsApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter06.text; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class JmsApplication { 8 | public static void main(String[] args) throws Exception { 9 | SpringApplication.run(JmsApplication.class, args); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /08-integration/0807-service-activator-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter08/SiApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class SiApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(SiApplication.class, args); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0901-chunk-processing-generic-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0903-chunk-processing-non-generic/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0936-multi-threaded-step-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /06-jms-tx/0603-auto-acknowledge-listener-success/src/main/java/net/lkrnac/book/eiws/chapter06/text/JmsApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter06.text; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class JmsApplication { 8 | public static void main(String[] args) throws Exception { 9 | SpringApplication.run(JmsApplication.class, args); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /06-jms-tx/0607-client-acknowledge-listener-success/src/main/java/net/lkrnac/book/eiws/chapter06/text/JmsApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter06.text; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class JmsApplication { 8 | public static void main(String[] args) throws Exception { 9 | SpringApplication.run(JmsApplication.class, args); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /06-jms-tx/06xx-auto-acknowledge-listener-duplicate/src/main/java/net/lkrnac/book/eiws/chapter06/text/JmsApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter06.text; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class JmsApplication { 8 | public static void main(String[] args) throws Exception { 9 | SpringApplication.run(JmsApplication.class, args); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /08-integration/0803-channel-adapter-generic-xml/src/main/java/net/lkrnac/book/eiws/chapter08/SiApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08; 2 | 3 | import org.springframework.context.support.GenericXmlApplicationContext; 4 | import org.springframework.core.io.ClassPathResource; 5 | 6 | public class SiApplication { 7 | public static void main(String[] args) throws InterruptedException { 8 | new GenericXmlApplicationContext(new ClassPathResource("si-config.xml")); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /09-batch/0900-batch-common/src/main/java/net/lkrnac/book/eiws/chapter09/process/SimpleRecordProcessor.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09.process; 2 | 3 | import org.springframework.batch.item.ItemProcessor; 4 | import org.springframework.stereotype.Component; 5 | 6 | @Component 7 | public class SimpleRecordProcessor implements ItemProcessor { 8 | @Override 9 | public String process(String item) throws Exception { 10 | return item + " processed"; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /09-batch/0902-chunk-processing-generic-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0914-execution-context-chunk-processing/src/main/java/net/lkrnac/book/eiws/chapter09/BatchApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class BatchApplication { 8 | public static void main(String[] args) throws InterruptedException { 9 | SpringApplication.run(BatchApplication.class); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0929-skip-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchConfiguration.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.context.annotation.ImportResource; 6 | 7 | @Configuration 8 | @EnableBatchProcessing 9 | @ImportResource("classpath:batch-config.xml") 10 | public class BatchConfiguration { 11 | } 12 | -------------------------------------------------------------------------------- /02-remoting/0203-spring-rmi-xml-config-service/src/main/java/net/lkrnac/book/eiws/chapter02/rmi/spring/xmlconfig/Application.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.rmi.spring.xmlconfig; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.core.io.ClassPathResource; 5 | 6 | public class Application { 7 | public static void main(String... args) { 8 | SpringApplication.run(new ClassPathResource("bar-service-context.xml"), 9 | args); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /05-jms/0506-async-jms-java-config/src/test/java/net/lkrnac/book/eiws/chapter05/text/JavaConfigJmsAsyncApplicationIT.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter05.text; 2 | 3 | import net.lkrnac.book.eiws.chapter05.text.test.CommonJmsSimpleMessageTest; 4 | 5 | import org.springframework.boot.test.SpringApplicationConfiguration; 6 | 7 | @SpringApplicationConfiguration(classes = JavaConfigJmsAsyncApplication.class) 8 | public class JavaConfigJmsAsyncApplicationIT extends CommonJmsSimpleMessageTest { 9 | } 10 | -------------------------------------------------------------------------------- /06-jms-tx/0608-client-acknowledge-listener-duplicate/src/main/java/net/lkrnac/book/eiws/chapter06/text/JmsApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter06.text; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class JmsApplication { 8 | public static void main(String[] args) throws Exception { 9 | SpringApplication.run(JmsApplication.class, args); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0926-restart-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchConfiguration.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.context.annotation.ImportResource; 6 | 7 | @Configuration 8 | @EnableBatchProcessing 9 | @ImportResource("classpath:batch-config.xml") 10 | public class BatchConfiguration { 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0931-retry-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchConfiguration.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.context.annotation.ImportResource; 6 | 7 | @Configuration 8 | @EnableBatchProcessing 9 | @ImportResource("classpath:batch-config.xml") 10 | public class BatchConfiguration { 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0933-decision-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchConfiguration.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.context.annotation.ImportResource; 6 | 7 | @Configuration 8 | @EnableBatchProcessing 9 | @ImportResource("classpath:batch-config.xml") 10 | public class BatchConfiguration { 11 | } 12 | -------------------------------------------------------------------------------- /04-rest/0405-rest-async-client/src/main/java/net/lkrnac/book/eiws/chapter04/client/UserActionsRepository.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter04.client; 2 | 3 | import java.util.Arrays; 4 | import java.util.Collection; 5 | 6 | import org.springframework.stereotype.Repository; 7 | 8 | @Repository 9 | public class UserActionsRepository { 10 | public Collection getUserActions(int identifier) { 11 | return Arrays.asList(new String[] { "dummy action 1", "dummy action 2", }); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /09-batch/0904-tasklet-step-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchConfiguration.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.context.annotation.ImportResource; 6 | 7 | @Configuration 8 | @EnableBatchProcessing 9 | @ImportResource("classpath:batch-config.xml") 10 | public class BatchConfiguration { 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0917-job-listener-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchConfiguration.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.context.annotation.ImportResource; 6 | 7 | @Configuration 8 | @EnableBatchProcessing 9 | @ImportResource("classpath:batch-config.xml") 10 | public class BatchConfiguration { 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0919-step-listener-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchConfiguration.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.context.annotation.ImportResource; 6 | 7 | @Configuration 8 | @EnableBatchProcessing 9 | @ImportResource("classpath:batch-config.xml") 10 | public class BatchConfiguration { 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0921-chunk-listener-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchConfiguration.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.context.annotation.ImportResource; 6 | 7 | @Configuration 8 | @EnableBatchProcessing 9 | @ImportResource("classpath:batch-config.xml") 10 | public class BatchConfiguration { 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0923-item-stream-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchConfiguration.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.context.annotation.ImportResource; 6 | 7 | @Configuration 8 | @EnableBatchProcessing 9 | @ImportResource("classpath:batch-config.xml") 10 | public class BatchConfiguration { 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0925-job-inheritance/src/main/java/net/lkrnac/book/eiws/chapter09/BatchConfiguration.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.context.annotation.ImportResource; 6 | 7 | @Configuration 8 | @EnableBatchProcessing 9 | @ImportResource("classpath:batch-config.xml") 10 | public class BatchConfiguration { 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0937-parallel-steps-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchConfiguration.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.context.annotation.ImportResource; 6 | 7 | @Configuration 8 | @EnableBatchProcessing 9 | @ImportResource("classpath:batch-config.xml") 10 | public class BatchConfiguration { 11 | } 12 | -------------------------------------------------------------------------------- /09-batch/0935-multi-threaded-step-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchConfiguration.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.context.annotation.ImportResource; 6 | 7 | @Configuration 8 | @EnableBatchProcessing 9 | @ImportResource("classpath:batch-config.xml") 10 | public class BatchConfiguration { 11 | } 12 | -------------------------------------------------------------------------------- /05-jms/0500-jms-common/src/main/java/net/lkrnac/book/eiws/chapter05/userwithrole/UserWithRoleService.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter05.userwithrole; 2 | 3 | import lombok.extern.slf4j.Slf4j; 4 | import net.lkrnac.book.eiws.chapter05.user.User; 5 | 6 | import org.springframework.stereotype.Service; 7 | 8 | @Slf4j 9 | @Service 10 | public class UserWithRoleService { 11 | public void processUser(User user, String role) { 12 | log.info("User object Received: {} with role {}", user, role); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /08-integration/0816-filter-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter08/SimpleFilter.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08; 2 | 3 | import org.springframework.integration.annotation.Filter; 4 | import org.springframework.integration.annotation.MessageEndpoint; 5 | 6 | @MessageEndpoint 7 | public class SimpleFilter { 8 | @Filter(inputChannel = "inChannel", outputChannel = "filteredChannel") 9 | public boolean accept(String message) { 10 | return !message.contains("corrupt"); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /09-batch/0901-chunk-processing-generic-xml/src/main/java/net/lkrnac/book/eiws/chapter09/BatchConfiguration.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09; 2 | 3 | import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.context.annotation.ImportResource; 6 | 7 | @Configuration 8 | @EnableBatchProcessing 9 | @ImportResource("classpath:batch-config.xml") 10 | public class BatchConfiguration { 11 | } 12 | -------------------------------------------------------------------------------- /08-integration/0800-integration-common/src/main/java/net/lkrnac/book/eiws/chapter08/out/WriteServiceWithError.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.out; 2 | 3 | import org.springframework.stereotype.Service; 4 | 5 | @Service 6 | public class WriteServiceWithError { 7 | public boolean writeAndIndicateSuccess(String message) { 8 | throw new IllegalStateException("error occurred"); 9 | } 10 | 11 | public void write(String message) { 12 | throw new IllegalStateException("error occurred"); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /03-ws/0301-ws-xmlconfig-service/src/main/resources/manual/user-details-generated.xsd.off: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /09-batch/0900-batch-common/src/main/java/net/lkrnac/book/eiws/chapter09/write/WriteRepository.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter09.write; 2 | 3 | import java.util.List; 4 | 5 | import lombok.extern.slf4j.Slf4j; 6 | 7 | import org.springframework.stereotype.Repository; 8 | 9 | @Slf4j 10 | @Repository 11 | public class WriteRepository { 12 | public void writeRecords(List records) { 13 | records.stream() 14 | .map(record -> "Writing record: " + record) 15 | .forEach(log::info); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /05-jms/0508-async-listener-annotation/src/test/java/net/lkrnac/book/eiws/chapter05/text/ListenerAnnotationJmsAsyncApplicationTests.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter05.text; 2 | 3 | import net.lkrnac.book.eiws.chapter05.text.test.CommonJmsSimpleMessageTest; 4 | 5 | import org.springframework.boot.test.SpringApplicationConfiguration; 6 | 7 | @SpringApplicationConfiguration(classes = ListenerAnnotationJmsAsyncApplication.class) 8 | public class ListenerAnnotationJmsAsyncApplicationTests extends 9 | CommonJmsSimpleMessageTest { 10 | } 11 | -------------------------------------------------------------------------------- /05-jms/0505-async-jms-xml/src/test/java/net/lkrnac/book/eiws/chapter05/text/JmsXmlAsyncApplicationTests.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter05.text; 2 | 3 | import net.lkrnac.book.eiws.chapter05.text.JmsXmlAsyncApplication; 4 | import net.lkrnac.book.eiws.chapter05.text.test.CommonJmsSimpleMessageTest; 5 | 6 | import org.springframework.boot.test.SpringApplicationConfiguration; 7 | 8 | @SpringApplicationConfiguration(classes = JmsXmlAsyncApplication.class) 9 | public class JmsXmlAsyncApplicationTests extends CommonJmsSimpleMessageTest { 10 | } 11 | -------------------------------------------------------------------------------- /02-remoting/0207-http-invoker-simple-service/src/main/java/net/lkrnac/book/eiws/chapter02/httpinvoker/simple/server/BarServiceImpl.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.httpinvoker.simple.server; 2 | 3 | import net.lkrnac.book.eiws.chapter02.httpinvoker.simple.shared.BarService; 4 | 5 | import org.springframework.stereotype.Service; 6 | 7 | @Service 8 | public class BarServiceImpl implements BarService { 9 | @Override 10 | public String serveBar(String param) { 11 | return "Bar service 0207 response to parameter: " + param; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /02-remoting/0202-spring-rmi-java-config-service/src/main/java/net/lkrnac/book/eiws/chapter02/rmi/spring/javaconfig/service/BarServiceImpl.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.rmi.spring.javaconfig.service; 2 | 3 | import net.lkrnac.book.eiws.chapter02.rmi.spring.javaconfig.BarService; 4 | 5 | import org.springframework.stereotype.Service; 6 | 7 | @Service 8 | public class BarServiceImpl implements BarService { 9 | @Override 10 | public String serveBar(String param) { 11 | return "Bar service 0202 response to parameter: " + param; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /02-remoting/0203-spring-rmi-xml-config-service/src/main/java/net/lkrnac/book/eiws/chapter02/rmi/spring/xmlconfig/service/BarServiceImpl.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.rmi.spring.xmlconfig.service; 2 | 3 | import net.lkrnac.book.eiws.chapter02.rmi.spring.xmlconfig.BarService; 4 | 5 | import org.springframework.stereotype.Service; 6 | 7 | @Service 8 | public class BarServiceImpl implements BarService { 9 | @Override 10 | public String serveBar(String param) { 11 | return "Bar service 0203 response to parameter: " + param; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /07-jta/0703-jta-spring-boot/src/main/java/net/lkrnac/book/eiws/chapter07/JtaApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter07; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.scheduling.annotation.EnableScheduling; 6 | 7 | @SpringBootApplication 8 | @EnableScheduling 9 | public class JtaApplication { 10 | public static void main(String[] args) throws Exception { 11 | SpringApplication.run(JtaApplication.class, args); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /08-integration/0830-channel-priority-xml/src/main/java/net/lkrnac/book/eiws/chapter08/SimpleMessageComparator.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08; 2 | 3 | import java.util.Comparator; 4 | 5 | import org.springframework.messaging.Message; 6 | import org.springframework.stereotype.Component; 7 | 8 | @Component 9 | public class SimpleMessageComparator implements Comparator> { 10 | @Override 11 | public int compare(Message o1, Message o2) { 12 | return -1 * o1.getPayload().compareTo(o2.getPayload()); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /08-integration/0839-error-channel-global/src/main/java/net/lkrnac/book/eiws/chapter08/out/ErrorHandler.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.out; 2 | 3 | import lombok.extern.slf4j.Slf4j; 4 | 5 | import org.springframework.integration.annotation.ServiceActivator; 6 | import org.springframework.stereotype.Component; 7 | 8 | @Slf4j 9 | @Component 10 | public class ErrorHandler { 11 | @ServiceActivator(inputChannel = "errorChannel") 12 | public void handleException(Throwable throwable) { 13 | log.error("Error occurred: ", throwable); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /08-integration/0807-service-activator-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter08/SiConfiguration.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08; 2 | 3 | import org.springframework.context.annotation.Bean; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.integration.channel.DirectChannel; 6 | import org.springframework.messaging.MessageChannel; 7 | 8 | @Configuration 9 | public class SiConfiguration { 10 | @Bean 11 | public MessageChannel inChannel() { 12 | return new DirectChannel(); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /08-integration/0840-error-channel-async/src/main/java/net/lkrnac/book/eiws/chapter08/out/ErrorHandler.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.out; 2 | 3 | import lombok.extern.slf4j.Slf4j; 4 | 5 | import org.springframework.integration.annotation.ServiceActivator; 6 | import org.springframework.stereotype.Component; 7 | 8 | @Slf4j 9 | @Component 10 | public class ErrorHandler { 11 | @ServiceActivator(inputChannel = "customErrorChannel") 12 | public void handleException(Throwable throwable) { 13 | log.error("Error occurred: ", throwable); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /02-remoting/0201-java-rmi-service/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 4.0.0 3 | 0201-java-rmi-service 4 | ${project.artifactId} 5 | 6 | 7 | net.lkrnac.book.eiws 8 | 0000-examples-parent 9 | 0.0.2-SNAPSHOT 10 | 11 | 12 | -------------------------------------------------------------------------------- /08-integration/08xx-long-polling-xml/src/main/java/net/lkrnac/book/eiws/chapter08/SimpleMessageComparator.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08; 2 | 3 | import java.util.Comparator; 4 | 5 | import org.springframework.messaging.Message; 6 | import org.springframework.stereotype.Component; 7 | 8 | @Component 9 | public class SimpleMessageComparator implements Comparator> { 10 | 11 | @Override 12 | public int compare(Message o1, Message o2) { 13 | return -1 * o1.getPayload().compareTo(o2.getPayload()); 14 | } 15 | 16 | } 17 | -------------------------------------------------------------------------------- /02-remoting/0210-hessian-dispatcher-servlet/src/main/java/net/lkrnac/book/eiws/chapter02/hessian/dispatcherservlet/server/BarServiceImpl.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.hessian.dispatcherservlet.server; 2 | 3 | import net.lkrnac.book.eiws.chapter02.hessian.dispatcherservlet.shared.BarService; 4 | 5 | import org.springframework.stereotype.Service; 6 | 7 | @Service 8 | public class BarServiceImpl implements BarService { 9 | @Override 10 | public String serveBar(String param) { 11 | return "Bar service 0210 response to parameter: " + param; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /06-jms-tx/0603-auto-acknowledge-listener-success/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /06-jms-tx/06xx-auto-acknowledge-listener-duplicate/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /01-async/0102-async-job/src/test/java/net/lkrnac/book/eiws/chapter01/async/task/SimpleLoggerSpy.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter01.async.task; 2 | 3 | import static org.mockito.Mockito.spy; 4 | 5 | import org.springframework.context.annotation.Bean; 6 | import org.springframework.context.annotation.Configuration; 7 | import org.springframework.context.annotation.Primary; 8 | 9 | @Configuration 10 | public class SimpleLoggerSpy { 11 | @Bean 12 | @Primary 13 | public SimpleLogger registersimpleLoggerSpy() { 14 | return spy(new SimpleLogger()); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /04-rest/0404-rest-boot-server/src/main/java/net/lkrnac/book/eiws/chapter04/RestBootApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter04; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.boot.context.web.SpringBootServletInitializer; 6 | 7 | @SpringBootApplication 8 | public class RestBootApplication extends SpringBootServletInitializer { 9 | public static void main(String... args) { 10 | SpringApplication.run(RestBootApplication.class, args); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /08-integration/0812-transformer-generic-javaconfig/src/main/java/net/lkrnac/book/eiws/chapter08/SimpleMessageTransformer.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08; 2 | 3 | import org.springframework.integration.annotation.MessageEndpoint; 4 | import org.springframework.integration.annotation.Transformer; 5 | 6 | @MessageEndpoint 7 | public class SimpleMessageTransformer { 8 | @Transformer(inputChannel = "inChannel", outputChannel = "transformedChannel") 9 | public String transformMessage(String message) { 10 | return new String(message + " transformed"); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /08-integration/0815-filter-xml-ref/src/main/java/net/lkrnac/book/eiws/chapter08/SimpleFilter.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08; 2 | 3 | import org.springframework.integration.core.MessageSelector; 4 | import org.springframework.messaging.Message; 5 | import org.springframework.stereotype.Component; 6 | 7 | @Component 8 | public class SimpleFilter implements MessageSelector { 9 | @Override 10 | public boolean accept(Message message) { 11 | String stringPayload = (String) message.getPayload(); 12 | return !stringPayload.contains("corrupt"); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /04-rest/0401-rest-jax-rs-server/src/main/java/net/lkrnac/book/eiws/chapter04/RestJaxrsApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter04; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.boot.context.web.SpringBootServletInitializer; 6 | 7 | @SpringBootApplication 8 | public class RestJaxrsApplication extends SpringBootServletInitializer { 9 | public static void main(String... args) { 10 | SpringApplication.run(RestJaxrsApplication.class, args); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /04-rest/0404-rest-boot-client/src/main/java/net/lkrnac/book/eiws/chapter04/client/ClientConfiguration.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter04.client; 2 | 3 | import org.springframework.context.annotation.Bean; 4 | import org.springframework.context.annotation.ComponentScan; 5 | import org.springframework.context.annotation.Configuration; 6 | import org.springframework.web.client.RestTemplate; 7 | 8 | @Configuration 9 | @ComponentScan 10 | public class ClientConfiguration { 11 | @Bean 12 | public RestTemplate restTemplate() { 13 | return new RestTemplate(); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /01-async/0103-scheduled-job/src/test/java/net/lkrnac/book/eiws/chapter01/scheduling/task/SimpleLoggerSpy.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter01.scheduling.task; 2 | 3 | import static org.mockito.Mockito.spy; 4 | 5 | import org.springframework.context.annotation.Bean; 6 | import org.springframework.context.annotation.Configuration; 7 | import org.springframework.context.annotation.Primary; 8 | 9 | @Configuration 10 | public class SimpleLoggerSpy { 11 | @Bean 12 | @Primary 13 | public SimpleLogger registersimpleLoggerSpy() { 14 | return spy(new SimpleLogger()); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /02-remoting/0206-http-invoker-dispatcher-servlet/src/main/java/net/lkrnac/book/eiws/chapter02/httpinvoker/dispatcherservlet/server/BarServiceImpl.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.httpinvoker.dispatcherservlet.server; 2 | 3 | import net.lkrnac.book.eiws.chapter02.httpinvoker.dispatcherservlet.shared.BarService; 4 | 5 | import org.springframework.stereotype.Service; 6 | 7 | @Service 8 | public class BarServiceImpl implements BarService { 9 | @Override 10 | public String serveBar(String param) { 11 | return "Bar service 0206 response to parameter: " + param; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /03-ws/0306-ws-error-service/src/main/java/net/lkrnac/book/eiws/chapter03/ws/error/server/CustomErrorException.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter03.ws.error.server; 2 | 3 | import org.springframework.ws.soap.server.endpoint.annotation.FaultCode; 4 | import org.springframework.ws.soap.server.endpoint.annotation.SoapFault; 5 | 6 | @SoapFault(faultCode = FaultCode.CLIENT) 7 | public class CustomErrorException extends RuntimeException { 8 | private static final long serialVersionUID = 1L; 9 | 10 | public CustomErrorException(String message) { 11 | super(message); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /05-jms/0507-sync-jms-java-config/src/test/java/net/lkrnac/book/eiws/chapter05/text/JavaConfigJmsSyncApplicationTests.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter05.text; 2 | 3 | import net.lkrnac.book.eiws.chapter05.text.JavaConfigJmsSyncApplication; 4 | import net.lkrnac.book.eiws.chapter05.text.test.CommonJmsSimpleMessageTest; 5 | 6 | import org.springframework.boot.test.SpringApplicationConfiguration; 7 | 8 | @SpringApplicationConfiguration(classes = JavaConfigJmsSyncApplication.class) 9 | public class JavaConfigJmsSyncApplicationTests extends 10 | CommonJmsSimpleMessageTest { 11 | } 12 | -------------------------------------------------------------------------------- /05-jms/0510-jms-custom-converter/src/test/java/net/lkrnac/book/eiws/chapter05/user/JmsCustomConverterApplicationTests.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter05.user; 2 | 3 | import net.lkrnac.book.eiws.chapter05.user.JmsCustomConverterApplication; 4 | import net.lkrnac.book.eiws.chapter05.user.test.CommonJmsUserMessageTest; 5 | 6 | import org.springframework.boot.test.SpringApplicationConfiguration; 7 | 8 | @SpringApplicationConfiguration(classes = JmsCustomConverterApplication.class) 9 | public class JmsCustomConverterApplicationTests extends 10 | CommonJmsUserMessageTest { 11 | } 12 | -------------------------------------------------------------------------------- /05-jms/0512-jms-message-creator/src/test/java/net/lkrnac/book/eiws/chapter05/text/JmsMessageCreatorApplicationTests.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter05.text; 2 | 3 | import net.lkrnac.book.eiws.chapter05.text.JmsMessageCreatorApplication; 4 | import net.lkrnac.book.eiws.chapter05.text.test.CommonJmsSimpleMessageTest; 5 | 6 | import org.springframework.boot.test.SpringApplicationConfiguration; 7 | 8 | @SpringApplicationConfiguration(classes = JmsMessageCreatorApplication.class) 9 | public class JmsMessageCreatorApplicationTests extends 10 | CommonJmsSimpleMessageTest { 11 | } 12 | -------------------------------------------------------------------------------- /03-ws/0303-ws-boot-client/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /03-ws/0303-ws-boot-service/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /03-ws/0306-ws-error-client/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /03-ws/0306-ws-error-service/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /04-rest/0404-rest-boot-client/src/main/java/net/lkrnac/book/eiws/chapter04/client/RestClientBootApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter04.client; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.context.annotation.Import; 6 | 7 | @SpringBootApplication 8 | @Import(ClientConfiguration.class) 9 | public class RestClientBootApplication { 10 | public static void main(String... args) { 11 | SpringApplication.run(RestClientBootApplication.class, args); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /05-jms/0509-jms-message-converter/src/test/java/net/lkrnac/book/eiws/chapter05/user/JmsMessageConverterApplicationTests.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter05.user; 2 | 3 | import net.lkrnac.book.eiws.chapter05.user.JmsMessageConverterApplication; 4 | import net.lkrnac.book.eiws.chapter05.user.test.CommonJmsUserMessageTest; 5 | 6 | import org.springframework.boot.test.SpringApplicationConfiguration; 7 | 8 | @SpringApplicationConfiguration(classes = JmsMessageConverterApplication.class) 9 | public class JmsMessageConverterApplicationTests extends 10 | CommonJmsUserMessageTest { 11 | } 12 | -------------------------------------------------------------------------------- /05-jms/0515-publish-subscribe-java-config/src/main/java/net/lkrnac/book/eiws/chapter05/pubsub/JmsApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter05.pubsub; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.scheduling.annotation.EnableScheduling; 6 | 7 | @EnableScheduling 8 | @SpringBootApplication 9 | public class JmsApplication { 10 | public static void main(String[] args) throws InterruptedException { 11 | SpringApplication.run(JmsApplication.class, args); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /05-jms/0516-publish-subscribe-spring-boot/src/main/java/net/lkrnac/book/eiws/chapter05/pubsub/JmsApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter05.pubsub; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.scheduling.annotation.EnableScheduling; 6 | 7 | @EnableScheduling 8 | @SpringBootApplication 9 | public class JmsApplication { 10 | public static void main(String[] args) throws InterruptedException { 11 | SpringApplication.run(JmsApplication.class, args); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /08-integration/0813-transformer-json/src/main/java/net/lkrnac/book/eiws/chapter08/SiApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.context.annotation.ImportResource; 6 | 7 | @SpringBootApplication 8 | @ImportResource("classpath:si-config.xml") 9 | public class SiApplication { 10 | public static void main(String[] args) throws InterruptedException { 11 | SpringApplication.run(SiApplication.class, args); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /08-integration/0829-aggregator-default-headers/src/main/java/net/lkrnac/book/eiws/chapter08/in/SiWrapperServiceFutureAnnotated.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08.in; 2 | 3 | import java.util.concurrent.Future; 4 | 5 | import org.springframework.integration.annotation.Gateway; 6 | import org.springframework.integration.annotation.MessagingGateway; 7 | import org.springframework.messaging.Message; 8 | 9 | @MessagingGateway 10 | public interface SiWrapperServiceFutureAnnotated { 11 | @Gateway(requestChannel = "inChannel") 12 | Future processText(Message text); 13 | } 14 | -------------------------------------------------------------------------------- /0000-common-library/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 4.0.0 5 | 6 | 0000-common-library 7 | jar 8 | 9 | 10 | net.lkrnac.book.eiws 11 | 0000-examples-parent 12 | 0.0.2-SNAPSHOT 13 | 14 | 15 | -------------------------------------------------------------------------------- /03-ws/0301-ws-xmlconfig-client/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /03-ws/0302-ws-javaconfig-client/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /03-ws/0305-ws-interceptor-client/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /03-ws/0305-ws-interceptor-service/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /03-ws/0307-ws-soapaction-client/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /03-ws/0307-ws-soapaction-service/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /05-jms/0502-jms2-jndi/src/main/java/net/lkrnac/book/eiws/chapter05/jms2jndi/SimpleMessageSender.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter05.jms2jndi; 2 | 3 | import javax.jms.JMSContext; 4 | import javax.jms.Queue; 5 | 6 | public class SimpleMessageSender { 7 | private JMSContext jmsContext; 8 | private Queue queue; 9 | 10 | public SimpleMessageSender(JMSContext jmsContext, Queue queue) { 11 | this.jmsContext = jmsContext; 12 | this.queue = queue; 13 | } 14 | 15 | public void sendMessage(String message) { 16 | jmsContext.createProducer().send(queue, message); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /06-jms-tx/0612-transacted-xml/src/main/java/net/lkrnac/book/eiws/chapter06/text/JmsApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter06.text; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.context.annotation.ImportResource; 6 | 7 | @SpringBootApplication 8 | @ImportResource("classpath:spring-jms-config.xml") 9 | public class JmsApplication { 10 | public static void main(String[] args) throws Exception { 11 | SpringApplication.run(JmsApplication.class, args); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /08-integration/0806-service-activator-xml/src/main/java/net/lkrnac/book/eiws/chapter08/SiApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.context.annotation.ImportResource; 6 | 7 | @SpringBootApplication 8 | @ImportResource("classpath:si-config.xml") 9 | public class SiApplication { 10 | public static void main(String[] args) throws InterruptedException { 11 | SpringApplication.run(SiApplication.class, args); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /08-integration/0810-gateway-non-generic/src/main/java/net/lkrnac/book/eiws/chapter08/SiApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.context.annotation.ImportResource; 6 | 7 | @SpringBootApplication 8 | @ImportResource("classpath:si-config.xml") 9 | public class SiApplication { 10 | public static void main(String[] args) throws InterruptedException { 11 | SpringApplication.run(SiApplication.class, args); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /03-ws/0301-ws-xmlconfig-service/src/test/java/net/lkrnac/book/eiws/chapter03/ws/xmlconfig/server/SimpleLoggerSpy.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter03.ws.xmlconfig.server; 2 | 3 | import static org.mockito.Mockito.spy; 4 | 5 | import org.springframework.context.annotation.Bean; 6 | import org.springframework.context.annotation.Configuration; 7 | import org.springframework.context.annotation.Primary; 8 | 9 | @Configuration 10 | public class SimpleLoggerSpy { 11 | @Bean 12 | @Primary 13 | public SimpleLogger registersimpleLoggerSpy() { 14 | return spy(new SimpleLogger()); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /03-ws/0308-ws-objectfactory-client/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /03-ws/0308-ws-objectfactory-service/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /03-ws/not-finished/0304-ws-xmpp-client/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /03-ws/not-finished/0304-ws-xmpp-service/src/main/java/xmpp/eiws_blah/package-info.java: -------------------------------------------------------------------------------- 1 | // 2 | // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.7 3 | // See http://java.sun.com/xml/jaxb 4 | // Any modifications to this file will be lost upon recompilation of the source schema. 5 | // Generated on: 2015.02.14 at 08:38:59 PM GMT 6 | // 7 | 8 | @javax.xml.bind.annotation.XmlSchema(namespace = "xmpp:eiws@blah.im", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) 9 | package xmpp.eiws_blah; 10 | -------------------------------------------------------------------------------- /04-rest/0406-rest-parameters-server/src/main/java/net/lkrnac/book/eiws/chapter04/RestParametersApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter04; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.boot.context.web.SpringBootServletInitializer; 6 | 7 | @SpringBootApplication 8 | public class RestParametersApplication extends SpringBootServletInitializer { 9 | public static void main(String... args) { 10 | SpringApplication.run(RestParametersApplication.class, args); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /05-jms/0501-jms11-jndi/src/test/resources/hornetq/hornetq-jms.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /05-jms/0506-async-jms-java-config/src/main/java/net/lkrnac/book/eiws/chapter05/text/JavaConfigJmsAsyncApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter05.text; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.context.annotation.ComponentScan; 5 | import org.springframework.scheduling.annotation.EnableScheduling; 6 | 7 | @ComponentScan 8 | @EnableScheduling 9 | public class JavaConfigJmsAsyncApplication { 10 | public static void main(String[] args) throws Exception { 11 | SpringApplication.run(JavaConfigJmsAsyncApplication.class, args); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /08-integration/0805-channel-adapter-non-generic/src/main/java/net/lkrnac/book/eiws/chapter08/SiApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.context.annotation.ImportResource; 6 | 7 | @SpringBootApplication 8 | @ImportResource("classpath:si-config.xml") 9 | public class SiApplication { 10 | public static void main(String[] args) throws InterruptedException { 11 | SpringApplication.run(SiApplication.class, args); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /01-async/0102-async-job/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /02-remoting/0208-hessian-handler-servlet-java-config/src/main/java/net/lkrnac/book/eiws/chapter02/hessian/handlerservlet/javaconfig/server/BarServiceImpl.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.hessian.handlerservlet.javaconfig.server; 2 | 3 | import net.lkrnac.book.eiws.chapter02.hessian.handlerservlet.javaconfig.shared.BarService; 4 | 5 | import org.springframework.stereotype.Service; 6 | 7 | @Service 8 | public class BarServiceImpl implements BarService { 9 | @Override 10 | public String serveBar(String param) { 11 | return "Bar service 0208 response to parameter: " + param; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /03-ws/0305-ws-interceptor-client/src/test/java/net/lkrnac/book/eiws/chapter03/ws/interceptor/client/SimpleLoggerSpy.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter03.ws.interceptor.client; 2 | 3 | import static org.mockito.Mockito.spy; 4 | 5 | import org.springframework.context.annotation.Bean; 6 | import org.springframework.context.annotation.Configuration; 7 | import org.springframework.context.annotation.Primary; 8 | 9 | @Configuration 10 | public class SimpleLoggerSpy { 11 | @Bean 12 | @Primary 13 | public SimpleLogger registersimpleLoggerSpy() { 14 | return spy(new SimpleLogger()); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /03-ws/0305-ws-interceptor-service/src/test/java/net/lkrnac/book/eiws/chapter03/ws/interceptor/server/SimpleLoggerSpy.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter03.ws.interceptor.server; 2 | 3 | import static org.mockito.Mockito.spy; 4 | 5 | import org.springframework.context.annotation.Bean; 6 | import org.springframework.context.annotation.Configuration; 7 | import org.springframework.context.annotation.Primary; 8 | 9 | @Configuration 10 | public class SimpleLoggerSpy { 11 | @Bean 12 | @Primary 13 | public SimpleLogger registersimpleLoggerSpy() { 14 | return spy(new SimpleLogger()); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /03-ws/not-finished/0304-ws-xmpp-service/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /06-jms-tx/0601-java-jms11-sync-tx/src/test/resources/hornetq/hornetq-jms.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /08-integration/0829-aggregator-default-headers/src/main/java/net/lkrnac/book/eiws/chapter08/SimpleAggregator.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter08; 2 | 3 | import java.util.List; 4 | 5 | import org.springframework.integration.annotation.Aggregator; 6 | import org.springframework.integration.annotation.MessageEndpoint; 7 | 8 | @MessageEndpoint 9 | public class SimpleAggregator { 10 | @Aggregator(inputChannel = "inChannel", outputChannel = "aggregatedChannel") 11 | public String aggregate(List messages) { 12 | return messages.stream().reduce((m1, m2) -> m1 + "," + m2).get(); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /04-rest/0404-rest-boot-client/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /04-rest/0404-rest-boot-server/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /04-rest/0405-rest-restcontroller-server/src/main/java/net/lkrnac/book/eiws/chapter04/RestRestcontrollerApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter04; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.boot.context.web.SpringBootServletInitializer; 6 | 7 | @SpringBootApplication 8 | public class RestRestcontrollerApplication extends SpringBootServletInitializer { 9 | public static void main(String... args) { 10 | SpringApplication.run(RestRestcontrollerApplication.class, args); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /05-jms/0503-async-jndi/src/main/java/net/lkrnac/book/eiws/chapter05/asyncjndi/SimpleMessageSender.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter05.asyncjndi; 2 | 3 | import javax.jms.JMSContext; 4 | import javax.jms.Queue; 5 | 6 | public class SimpleMessageSender { 7 | private JMSContext jmsContext; 8 | private Queue queue; 9 | 10 | public SimpleMessageSender(JMSContext jmsContext, Queue queue) { 11 | super(); 12 | this.jmsContext = jmsContext; 13 | this.queue = queue; 14 | } 15 | 16 | public void sendMessage(String message) { 17 | jmsContext.createProducer().send(queue, message); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /02-remoting/0204-http-invoker-handler-servlet-java-config/src/main/java/net/lkrnac/book/eiws/chapter02/httpinvoker/handlerservlet/javaconfig/server/BarServiceImpl.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter02.httpinvoker.handlerservlet.javaconfig.server; 2 | 3 | import net.lkrnac.book.eiws.chapter02.httpinvoker.handlerservlet.javaconfig.shared.BarService; 4 | 5 | import org.springframework.stereotype.Service; 6 | 7 | @Service 8 | public class BarServiceImpl implements BarService { 9 | @Override 10 | public String serveBar(String param) { 11 | return "Bar service 0204 response to parameter: " + param; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /04-rest/0401-rest-jax-rs-server/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /04-rest/0405-rest-async-client/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /04-rest/0406-rest-errorhandler-client/src/main/java/net/lkrnac/book/eiws/chapter04/client/RestClientErrorhandlerApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter04.client; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.context.annotation.Import; 6 | 7 | @SpringBootApplication 8 | @Import(ClientConfiguration.class) 9 | public class RestClientErrorhandlerApplication { 10 | public static void main(String... args) { 11 | SpringApplication.run(RestClientErrorhandlerApplication.class, args); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /05-jms/0507-sync-jms-java-config/src/main/java/net/lkrnac/book/eiws/chapter05/text/JavaConfigJmsSyncApplication.java: -------------------------------------------------------------------------------- 1 | package net.lkrnac.book.eiws.chapter05.text; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.scheduling.annotation.EnableScheduling; 6 | 7 | @EnableScheduling 8 | @SpringBootApplication 9 | public class JavaConfigJmsSyncApplication { 10 | public static void main(String[] args) throws InterruptedException { 11 | SpringApplication.run(JavaConfigJmsSyncApplication.class, args); 12 | } 13 | } 14 | --------------------------------------------------------------------------------