<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Information Centre &#187; Web</title>
	<atom:link href="http://my.center-of.info/tag/web/feed/" rel="self" type="application/rss+xml" />
	<link>http://my.center-of.info</link>
	<description>“Wenn etwas schon da war, wie kann man es dann patentieren?” D.E.Knuth, 2002</description>
	<lastBuildDate>Sat, 22 Oct 2011 11:09:02 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Nodejs HTTP-Server</title>
		<link>http://my.center-of.info/2011/05/14/nodejs-http-server/</link>
		<comments>http://my.center-of.info/2011/05/14/nodejs-http-server/#comments</comments>
		<pubDate>Sat, 14 May 2011 17:00:10 +0000</pubDate>
		<dc:creator>Haf</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[test]]></category>

		<guid isPermaLink="false">http://my.center-of.info/?p=187</guid>
		<description><![CDATA[Schreibt man eine Client-Anwendung, die mit einem Server kommunizieren soll, weclhes zum Testing nicht zur Verfügung steht, muss man schauen, wie man die Kommunikation simulieren kann. Am besten wäre eine Test-Implementierung des Servers, der die Spezifikation/API unterstützt. Bevor die Spezifikation zum Test implementiert werden kann, muss jedoch die Grundfunktionalität (HTTP) des Server implementiert werden. Um [...]]]></description>
			<content:encoded><![CDATA[<p>Schreibt man eine Client-Anwendung, die mit einem Server kommunizieren soll, weclhes zum Testing nicht zur Verfügung steht, muss man schauen, wie man die Kommunikation simulieren kann.<br />
Am besten wäre eine Test-Implementierung des Servers, der die Spezifikation/API unterstützt. Bevor die Spezifikation zum Test implementiert werden kann, muss jedoch die Grundfunktionalität (HTTP) des Server implementiert werden.<br />
Um sich das zu ersparen, kann man z.B. <a href="http://nodejs.org">nodejs</a> verwenden.<br />
<span id="more-187"></span></p>
<pre class="brush: js">
var http = require(&#039;http&#039;),
	url = require(&#039;url&#039;);

var results = [&quot;status=OK&amp;desc=Alles paletti&amp;url=http://www.heise.de/&quot;,
			   &quot;status=NOK&amp;desc=Oh, problem&amp;url=&quot;];

var httpServer = http.createServer();

httpServer.on(&#039;request&#039;, function(request, response) {
	// Parse the entire URI to get just the query
	var query = url.parse(request.url, true).query;
	// parse the query parameters
	var param1 	= query[&#039;p1&#039;];
	var param2	= query[&#039;p2&#039;];
	var param3	= query[&#039;p3&#039;];

	// Do something with the parameters to generate the response.....

	// return random response
	response.writeHead(200, {&#039;Content-Type&#039;: &#039;text/plain&#039;});
	var rnd = Math.floor(Math.random() * results.length)
	response.end(results[rnd]);
});

httpServer.listen(1337, &#039;127.0.0.1&#039;);

console.log(&#039;- Server running at http://127.0.0.1:1337/&#039;);
</pre>
<p>Wie man sehen kann, wird in wenigen Zeilen JavaScript ein HTTP-Server geschrieben, der auf den &#8220;request&#8221;-Event horcht. Bei jedem Request werden die Parameter ermittelt und die Response generiert.<br />
Nodejs bietet verschiedene Events an, für die ein Callback-Funktion registriert werden kann.<br />
Beim HTTP-Server sind das z.B.: request, connection, close. Weitere Details sind in der <a href="http://nodejs.org/docs/v0.4.7/api/all.html">Docu</a> zu finden.</p>
<p>Links:</p>
<ul>
<li>Nodejs API: <a href="http://nodejs.org/docs/v0.4.7/api/all.html">http://nodejs.org/docs/v0.4.7/api/all.html</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://my.center-of.info/2011/05/14/nodejs-http-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JavaFX 1.0</title>
		<link>http://my.center-of.info/2008/12/07/javafx-10/</link>
		<comments>http://my.center-of.info/2008/12/07/javafx-10/#comments</comments>
		<pubDate>Sun, 07 Dec 2008 11:11:59 +0000</pubDate>
		<dc:creator>Haf</dc:creator>
				<category><![CDATA[JEE]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[javafx]]></category>
		<category><![CDATA[ria]]></category>
		<category><![CDATA[web development]]></category>

		<guid isPermaLink="false">http://my.center-of.info/?p=82</guid>
		<description><![CDATA[Seit dem 04.12.2008 gibt es nun endlich die Version 1.0 von JavaFX. JavaFX ist eine Plattform um Rich Internet Applications für verschiedene End-Geräte zu erstellen. Im Idealfall realisiert man eine Anwendung, die dann später im Browser, auf dem Desktop und auf dem mobilen Gerät läuft. Für weitere Details sei auf die JavaFX-Seiten verwiesen [1] und [...]]]></description>
			<content:encoded><![CDATA[<p>Seit dem 04.12.2008 gibt es nun endlich die Version 1.0 von <a title="SUN JavaFX" href="http://www.javafx.com/" target="_blank">JavaFX</a>. JavaFX ist eine Plattform um Rich Internet Applications für verschiedene End-Geräte zu erstellen. Im Idealfall realisiert man eine Anwendung, die dann später im Browser, auf dem Desktop und auf dem mobilen Gerät läuft. Für weitere Details sei auf die JavaFX-Seiten verwiesen [1] und [2].</p>
<p><span id="more-82"></span></p>
<p><strong>Überblick</strong></p>
<p>Um JavaFX-Anwendung zu nutzen, braucht man standardmäßig nur die aktuelle Java Version. Hier ist Java 1.6.0_11 [3] passend, da diese Version die Fähigkeit anbietet, Applets auf den Desktop zu ziehen. Beim ersten Aufruf einer JavaFX-Anwendung werden die Runtime-Bibliotheken beim ersten Mal runtergeladen, wenn sie nicht vorhanden sind. Bei entsprechender Implimentierung der JavaFX-Anwendung (was ja ein Applet ist), kann man sich das Applet auf den Desktop ziehen. Schließt man dann den Browser, bekommt man die Möglichkeit ein Verweis auf den Desktop zu erstellen, um später das Applet &#8211; und nur das Applet, nicht auch den Browser &#8211; wieder zu nutzen.</p>
<p>JavaFX kommt auch mit einer neuen Script-Sprache, dem JavaFX Script. JavaFX Script ist eine deklarative kompilierbare Scriptsprache, was auch type inference &#8211; und somit implizit auch statische Typen &#8211; anbietet.</p>
<p><strong>Entwicklung</strong></p>
<p>Zur Entwicklung. Sun setzt ja bekanntlich auf Netbeans. Das bedeutet in dem Fall, es gibt ein Netbeans-Version [4] mit integriertem JavaFX. Diese Version beinhaltet das JavaFX Software Development Kit, Beispiele und bei Windows noch den JavaFX Mobile Emulator.</p>
<p>Zusätzlich gibt es Plugins für Photoshop und Adobe Illustrator. Mit JavaFX sollen ja auch schöne GUIs erstellt werden und hierfür bietet man Grafikern eine einfache Möglichkeit dies in ihren bekannten Umgebungen zu erstellen. Wie gut diese Plugins funktionieren, kann ich leider nicht sagen.</p>
<p>Für Eclipse-Nutzer gibt es ein veraltetes Plugin [5], hier ist zu hoffen, dass demnächst eine aktuellere Version veröffentlich wird.</p>
<p>Mit Netbeans kann man jedenfalls recht einfach erste JavaFX Anwendungen realisieren. Für die grafische Darstellung kann man eine Palette von vorhandenen Mustern, Transformationen etc nutzen. Jedoch gibt es hier keinen visuellen Designer. Die Palette beinhaltet nur Code-Fragmente, die in den existierenden Code eingefügt werden können. Ob es hier einen Designer geben wird, ist fraglich, da entsprechen Photoshop/Illustrator Plugins existieren.</p>
<p><strong>Features</strong></p>
<p>Die Features dürfen nun auch nicht vergessen werden:</p>
<ul>
<li>RIA Plattform für verschiedene Endgeräte</li>
<li>Einfache Integration für Grafiker</li>
<li>Gute Unterstützung von Grafiken, 2D, 3D, Video, Audio</li>
<li>Zugang zu Java-Bibliotheken</li>
</ul>
<p>Für weitere Details sei auf die Überblicks-Seite in [1] verwiesen.</p>
<p>Links:<br />
[1] JavaFX Überblick: <a title="SUN JavaFX Überblick" href="http://javafx.com/about/overview/" target="_blank">http://javafx.com/about/overview/ </a><br />
[2] JavaFX Getting Started with the Technology: <a title="Getting Started with JavaFX Technology" href="http://javafx.com/docs/gettingstarted/javafx/" target="_blank">http://javafx.com/docs/gettingstarted/javafx/</a><br />
[3] Java SE 6 Update Release Notes: <a title="SUN Java6 Changelogs" href="http://java.sun.com/javase/6/webnotes/6u11.html" target="_blank">http://java.sun.com/javase/6/webnotes/6u11.html</a><br />
[4] JavaFX Download (for Windows): <a title="SUN JavaFX Download page" href="http://javafx.com/downloads/windows.jsp" target="_blank">http://javafx.com/downloads/windows.jsp</a><br />
[5] OpenJFX Eclipse Plugin v0.0.2: <a title="Altes Eclipse JavaFX Plugin" href="http://download.java.net/general/openjfx/plugins/eclipse/" target="_blank">http://download.java.net/general/openjfx/plugins/eclipse/</a><br />
[6] JavaFX API: <a title="SUN JavaFX API" href="http://java.sun.com/javafx/1/docs/api/index.html" target="_blank">http://java.sun.com/javafx/1/docs/api/index.html</a><br />
[7] JavaFX Script Language: <a title="SUN JavaFX Script Language" href="http://java.sun.com/javafx/1/tutorials/core/" target="_blank">http://java.sun.com/javafx/1/tutorials/core/</a><br />
[8] JavaFX Language Reference: <a title="Openjfx: JavaFX Language Reference" href="http://openjfx.java.sun.com/current-build/doc/reference/JavaFXReference.html" target="_blank">http://openjfx.java.sun.com/current-build/doc/reference/JavaFXReference.html</a><br />
[9] JavaFX Blog: <a title="SUN JavaFX Blog" href="http://blogs.sun.com/javafx/" target="_blank">http://blogs.sun.com/javafx/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://my.center-of.info/2008/12/07/javafx-10/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

