<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Autobahn-Java on Felix Seifert</title>
		<link>https://felix-seifert.com/blog/tags/autobahn-java/</link>
		<description>Recent content in Autobahn-Java on Felix Seifert</description>
		<generator>Hugo</generator>
		<language>en-gb</language>
		
		
		
			<copyright>Felix Seifert</copyright>
		
		
			<lastBuildDate>Sun, 27 Jan 2019 16:24:36 +0000</lastBuildDate>
		
			<atom:link href="https://felix-seifert.com/blog/tags/autobahn-java/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>autobahn-spring: Autobahn|Java and Spring</title>
				<link>https://felix-seifert.com/blog/integrate-autobahnjava-and-spring/</link>
				<pubDate>Sun, 27 Jan 2019 16:24:36 +0000</pubDate>
				<guid>https://felix-seifert.com/blog/integrate-autobahnjava-and-spring/</guid>
				<description>&lt;p&gt;Are you an enthusiastic user of Spring and do you also want to benefit from the &lt;a href=&#34;https://felix-seifert.com/blog/web-application-messaging-protocol/&#34;&gt;Web Application Messaging Protocol&lt;/a&gt;? Even though &lt;a href=&#34;https://felix-seifert.com/blog/wamp2spring-router-topics-procedures/&#34;&gt;wamp2spring&lt;/a&gt; mainly serves as a router, Spring users often want to create several microservices communicating with each other. A comfortable solution is using the WAMP library &lt;a href=&#34;https://felix-seifert.com/blog/autobahnjava-wamp-library-crossbar/&#34;&gt;Autobahn|Java&lt;/a&gt;. This article will describe how to combine Spring and Autobahn|Java.&lt;/p&gt;&#xA;&lt;h2 id=&#34;create-a-controller-for-wamp&#34;&gt;Create a Controller for WAMP&lt;/h2&gt;&#xA;&lt;p&gt;Autobahn|Java could be implemented as a controller. Therefore, the bean of Spring should be created with the annotation &lt;code&gt;@Controller&lt;/code&gt;. &lt;a href=&#34;https://felix-seifert.com/blog/web-application-messaging-protocol/&#34;&gt;Topics and procedures&lt;/a&gt; could be handled exactly as described in the article about &lt;a href=&#34;https://felix-seifert.com/blog/autobahnjava-wamp-library-crossbar/&#34;&gt;Autobahn|Java&lt;/a&gt;. The methods implementing this should be registered as listeners. This could be achieved in the constructor of the controller.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Autobahn|Java - WAMP Library of Crossbar.io</title>
				<link>https://felix-seifert.com/blog/autobahnjava-wamp-library-crossbar/</link>
				<pubDate>Sat, 13 Oct 2018 19:35:04 +0000</pubDate>
				<guid>https://felix-seifert.com/blog/autobahnjava-wamp-library-crossbar/</guid>
				<description>&lt;figure&gt;&#xA;  &lt;img src=&#34;https://felix-seifert.com/images/posts/autobahn-java_hu_ed506ddbfb5517c2.webp&#34;&#xA;       &#xA;       srcset=&#34;https://felix-seifert.com/images/posts/autobahn-java_hu_5210dabd870c812d.webp 640w, https://felix-seifert.com/images/posts/autobahn-java_hu_ed506ddbfb5517c2.webp 1000w&#34;&#xA;       sizes=&#34;(min-width: 42rem) 40rem, 100vw&#34;&#xA;       width=&#34;1000&#34; height=&#34;333&#34;&#xA;       alt=&#34;This article describes how to implement a WAMP client using the library Autobahn|Java.&#34;&#xA;       loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;You have already learned &lt;a href=&#34;https://felix-seifert.com/blog/local-crossbar-router-wamp/&#34;&gt;how to set up a local Web Application Messaging Protocol (WAMP) router&lt;/a&gt;. This article would describe how to make the first step in programming a microservice in Java using the library Autobahn|Java and, thus, how to use a WAMP router.&lt;/p&gt;&#xA;&lt;h2 id=&#34;idea-of-autobahnjava&#34;&gt;Idea of Autobahn|Java&lt;/h2&gt;&#xA;&lt;p&gt;A WAMP network usually consists of a router and multiple clients. The clients are often microservices which are part of, at least, one bigger service. While being connected with the router, these microservices can communicate with each other. The &lt;a href=&#34;https://felix-seifert.com/blog/web-application-messaging-protocol/&#34;&gt;article about WAMP&lt;/a&gt; describes the different ways of communicating via this protocol.&#xA;It is not relevant in which programming language the clients are being implemented, &lt;a href=&#34;https://github.com/crossbario/autobahn-java&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Autobahn|Java&lt;/a&gt; is the library of Crossbar.io to implement a client for a WAMP network specifically in Java. It is based on the framework &lt;a href=&#34;https://netty.io/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Netty&lt;/a&gt;, which is used for asynchronous programming.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Fiction2Science: WAMP and Microservices</title>
				<link>https://felix-seifert.com/blog/fiction2science-wamp-microservices/</link>
				<pubDate>Fri, 05 Oct 2018 13:35:49 +0000</pubDate>
				<guid>https://felix-seifert.com/blog/fiction2science-wamp-microservices/</guid>
				<description>&lt;figure&gt;&#xA;  &lt;img src=&#34;https://felix-seifert.com/images/posts/fiction2science-hack-area_hu_3e46d0d44211610d.webp&#34;&#xA;       &#xA;       srcset=&#34;https://felix-seifert.com/images/posts/fiction2science-hack-area_hu_df3862ceeee65093.webp 640w, https://felix-seifert.com/images/posts/fiction2science-hack-area_hu_3e46d0d44211610d.webp 1000w&#34;&#xA;       sizes=&#34;(min-width: 42rem) 40rem, 100vw&#34;&#xA;       width=&#34;1000&#34; height=&#34;364&#34;&#xA;       alt=&#34;Part of the hack area of the Fiction2Science Hackathon of Continental in Regensburg&#34;&#xA;       fetchpriority=&#34;high&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;Last weekend, I attended the hackathon Fiction2Science of Continental. I was assigned to the Cloud Challenge where we dealt with the communication between microservices in the cloud.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-cloud-challenge&#34;&gt;The Cloud Challenge&lt;/h2&gt;&#xA;&lt;p&gt;After the official welcome, we gathered at our challenge areas with around 20 people participating in each challenge (total of 7 different challenges). Each participant indicated what his focus area is (frontend, backend or design). Based on this indication, we autonomously formed teams of four to five participants. Eventually, our team consisted of only three participants: one person focusing on design and frontend development, one developer who engaged in both frontend and backend development and me. In the beginning, I dealt mainly with backend development but eventually, I was also responsible for the presentation.&#xA;At first, we learned the technique how our developed microservices would communicate. To help with this, we had a simple tutorial with some tasks that we had to solve. Then, we tried to understand how to use our programming language to publish and subscribe to topics and how to register remote procedures and call them. We continued to solve tasks to understand these required techniques a little bit more. Having learnt these techniques, we then developed our own service by combining several microservices.&#xA;Finally, we had to present our own service in front of a panel consisting of professional Software Engineers and Innovation Managers.&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
