<?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>3spin &#187; zend</title>
	<atom:link href="http://blog.3spin.de/tag/zend/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.3spin.de</link>
	<description>Trends, Techniken &#38; Projekte</description>
	<lastBuildDate>Wed, 21 Dec 2011 09:35:59 +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>Einladung zur 3spin Geschenkeschlacht</title>
		<link>http://blog.3spin.de/2010/12/einladung-zur-3spin-geschenkeschlacht/</link>
		<comments>http://blog.3spin.de/2010/12/einladung-zur-3spin-geschenkeschlacht/#comments</comments>
		<pubDate>Fri, 03 Dec 2010 13:15:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Projekte]]></category>
		<category><![CDATA[2010]]></category>
		<category><![CDATA[as3]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[weihnachten]]></category>
		<category><![CDATA[zend]]></category>

		<guid isPermaLink="false">http://blog.3spin.de/?p=1087</guid>
		<description><![CDATA[Auch dieses Jahr setzen wir unsere Tradition fort und überraschen unsere Kunden mit einer kleinen Weihnachtsaktion. Nach der Lochkarte 2008 und dem Augmented Weihnachtsbaum 2009 gibt es diesmal ein Weihnachtsspiel: Du bist Weihnachtsmann, auf deinem Weg, Geschenke zu verteilen. Duelliere dich mit deinen Freunden und zeige, dass du der bessere Weihnachtsmann bist. Bewerfe sie mit [...]]]></description>
			<content:encoded><![CDATA[<p><a style="border: 0;" href="www.geschenke-schlacht.de" target="_blank"><img class="alignnone size-full wp-image-1088" title="Die 3spin Geschenkeschlacht" src="http://blog.3spin.de/wp-content/uploads/2010/12/blog_geschenkeschlacht_0.jpg" alt="" width="500" height="94" /></a></p>
<p>Auch dieses Jahr setzen wir unsere Tradition fort und überraschen unsere Kunden mit einer kleinen Weihnachtsaktion. Nach der <a href="http://blog.3spin.de/2008/12/weihnachts-und-neujahrsaktion/" target="_blank">Lochkarte</a> 2008 und dem <a href="http://blog.3spin.de/2010/01/3spin-weihnachtsgruesse/" target="_blank">Augmented Weihnachtsbaum</a> 2009 gibt es diesmal ein Weihnachtsspiel:</p>
<p>Du bist Weihnachtsmann, auf deinem Weg, Geschenke zu verteilen. Duelliere dich mit deinen Freunden und zeige, dass du der bessere Weihnachtsmann bist. Bewerfe sie mit Geschenken und verteidige dich mit Zuckerstangen.</p>
<p><strong>Hier geht&#8217;s zum Spiel: <a href="http://www.geschenke-schlacht.de" target="_blank">http://www.geschenke-schlacht.de</a></strong> </p>
<p>Wir danken für die tolle Zusammenarbeit in diesem Jahr und wünschen eine frohe Weihnachtszeit sowie einen guten Start ins neue Jahr!</p>
<p><img class="alignnone size-full wp-image-1093" title="Die 3spin Geschenkeschlacht" src="http://blog.3spin.de/wp-content/uploads/2010/12/blog_geschenkeschlacht_31.jpg" alt="" width="500" height="375" /><br />
<span id="more-1087"></span><br />
<img class="alignnone size-full wp-image-1090" title="Die 3spin Geschenkeschlacht" src="http://blog.3spin.de/wp-content/uploads/2010/12/blog_geschenkeschlacht_1.jpg" alt="" width="500" height="375" /></p>
<p><img class="alignnone size-full wp-image-1090" title="Die 3spin Geschenkeschlacht" src="http://blog.3spin.de/wp-content/uploads/2010/12/blog_geschenkeschlacht_2.jpg" alt="" width="500" height="375" /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.3spin.de/2010/12/einladung-zur-3spin-geschenkeschlacht/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Zend AMF: Referenceerror bei Arrays und Objekten</title>
		<link>http://blog.3spin.de/2010/11/zend-amf-mit-arrays-objekten/</link>
		<comments>http://blog.3spin.de/2010/11/zend-amf-mit-arrays-objekten/#comments</comments>
		<pubDate>Fri, 19 Nov 2010 14:51:56 +0000</pubDate>
		<dc:creator>og</dc:creator>
				<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[amf]]></category>
		<category><![CDATA[as3]]></category>
		<category><![CDATA[dev]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[zend]]></category>

		<guid isPermaLink="false">http://blog.3spin.de/?p=1048</guid>
		<description><![CDATA[Ausgangssituation Bei Zend AMF kann es bei der Übermittlung von Arrays und Objekten zu Reference-Fehlern kommen, die zu unerwarteten Ergebnissen auf der Client-Seite führen können (z.B. RangeError: Error #2006). Im Rahmen eines Projekts sind wir auf diesen schwer auffindbaren Fehler gestoßen. Direkt zur Lösung Beispiel ActionScript: public class NetConnectionTest &#123; &#160; private var _service:NetConnection; &#160; [...]]]></description>
			<content:encoded><![CDATA[<h3>Ausgangssituation</h3>
<p>Bei Zend AMF kann es bei der Übermittlung von Arrays und Objekten zu Reference-Fehlern kommen, die zu unerwarteten Ergebnissen auf der Client-Seite führen können (z.B. <strong>RangeError: Error #2006</strong>). Im Rahmen eines Projekts sind wir auf diesen schwer auffindbaren Fehler gestoßen.</p>
<p><strong><a href="http://blog.3spin.de/?p=1048#solution">Direkt zur Lösung</a></strong><br />
<span id="more-1048"></span></p>
<h3>Beispiel</h3>
<p><strong>ActionScript:</strong></p>

<div class="wp_syntax"><div class="code"><pre class="actionscript" style="font-family:monospace;"><span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">class</span> NetConnectionTest
<span style="color: #66cc66;">&#123;</span>
&nbsp;
<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">var</span> _service:<span style="color: #0066CC;">NetConnection</span>;
&nbsp;
<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> NetConnectionTest<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#123;</span>
	_service = <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #0066CC;">NetConnection</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
	_service.<span style="color: #0066CC;">connect</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;http://domain.example/amf/&quot;</span><span style="color: #66cc66;">&#41;</span>;
	_service.<span style="color: #0066CC;">call</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;TestService.hello&quot;</span>, <span style="color: #000000; font-weight: bold;">new</span> Responder<span style="color: #66cc66;">&#40;</span>resultHandler, errorHandler<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #66cc66;">&#125;</span>
&nbsp;
<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> resultHandler<span style="color: #66cc66;">&#40;</span>result:<span style="color: #66cc66;">*</span><span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
<span style="color: #66cc66;">&#123;</span>
	<span style="color: #0066CC;">trace</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;resultHandler&quot;</span>, result<span style="color: #66cc66;">&#41;</span>;
<span style="color: #66cc66;">&#125;</span>
&nbsp;
<span style="color: #66cc66;">&#125;</span></pre></div></div>

<p><strong>PHP AMF Service Klasse</strong></p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">class</span> Testservice<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> hello<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #000088;">$arrayA</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$arrayB</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$arrayC</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">// Beispiel 1</span>
	<span style="color: #b1b100;">return</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$arrayA</span><span style="color: #339933;">,</span> <span style="color: #000088;">$arrayB</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// Error</span>
	<span style="color: #b1b100;">return</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$arrayA</span><span style="color: #339933;">,</span> <span style="color: #000088;">$arrayC</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// OK</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">// Beispiel 2</span>
	<span style="color: #000088;">$testClass</span> <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> SomeClass<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$testClass</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">value1</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$arrayA</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$testClass</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">value2</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$arrayB</span><span style="color: #339933;">;</span>
	<span style="color: #b1b100;">return</span> <span style="color: #000088;">$testClass</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// Error</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p><strong>Beispiel-Fehler:</strong></p>
<p><img class="alignnone size-full wp-image-1058" title="blog_zendamferror" src="http://blog.3spin.de/wp-content/uploads/2010/11/blog_zendamferror1.jpg" alt="" width="500" height="266" /></p>
<h3>Ursache</h3>
<p>Die Serialisierung in Zend AMF unterstützt Referenzen, damit identische Objekte als Referenzen verwendet werden und nicht mehrfach übertragen werden. Da Arrays im Gegensatz zu Objekten nicht über eine interne ID verfügen, die in PHP abrufbar ist, vergleicht die Serialisierungs-Klasse die Inhalte des Arrays, um festzustellen, ob sie identisch sind. Im Beispiel sind $arrayA und $arrayB vom Inhalt gleich, daher wird bei der Serialiserung von $arrayB eine Referenz auf $arrayA übertragen. Dadurch kann es zu unvorhersehbaren Fehlern auf dem Client kommen.</p>
<h3 id="solution">Lösung</h3>
<p>Das Problem konnte gelöst werden, wenn in der AMF0 Serialisierungsklasse (Zend/Amf/Parse/Amf0/Serializer.php) der Referenz-Vergleich auskommentiert wird:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">protected</span> <span style="color: #000000; font-weight: bold;">function</span> writeObjectReference<span style="color: #009900;">&#40;</span><span style="color: #339933;">&amp;</span><span style="color: #000088;">$object</span><span style="color: #339933;">,</span> <span style="color: #000088;">$markerType</span><span style="color: #339933;">,</span> <span style="color: #000088;">$objectByVal</span> <span style="color: #339933;">=</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        <span style="color: #666666; font-style: italic;">// Workaround for PHP5 with E_STRICT enabled complaining about &quot;Only</span>
        <span style="color: #666666; font-style: italic;">// variables should be passed by reference&quot;</span>
        <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #009900; font-weight: bold;">null</span> <span style="color: #339933;">===</span> <span style="color: #000088;">$object</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$objectByVal</span> <span style="color: #339933;">!==</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
            <span style="color: #000088;">$object</span> <span style="color: #339933;">=</span> <span style="color: #339933;">&amp;</span><span style="color: #000088;">$objectByVal</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span>
&nbsp;
        <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$markerType</span> <span style="color: #339933;">==</span> Zend_Amf_Constants<span style="color: #339933;">::</span><span style="color: #004000;">AMF0_OBJECT</span>
            <span style="color: #339933;">||</span> <span style="color: #000088;">$markerType</span> <span style="color: #339933;">==</span> Zend_Amf_Constants<span style="color: #339933;">::</span><span style="color: #004000;">AMF0_MIXEDARRAY</span>
            <span style="color: #339933;">||</span> <span style="color: #000088;">$markerType</span> <span style="color: #339933;">==</span> Zend_Amf_Constants<span style="color: #339933;">::</span><span style="color: #004000;">AMF0_ARRAY</span>
            <span style="color: #339933;">||</span> <span style="color: #000088;">$markerType</span> <span style="color: #339933;">==</span> Zend_Amf_Constants<span style="color: #339933;">::</span><span style="color: #004000;">AMF0_TYPEDOBJECT</span>
        <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
            <span style="color: #000088;">$ref</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array_search</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$object</span><span style="color: #339933;">,</span> <span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span>_referenceObjects<span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            <span style="color: #666666; font-style: italic;">//handle object reference</span>
&nbsp;
            <span style="color: #666666; font-style: italic;">// FOLGENDE ZEILEN AUSKOMMENTIEREN</span>
            <span style="color: #666666; font-style: italic;">/*
            if($ref !== false){
                $this-&gt;writeTypeMarker($ref,Zend_Amf_Constants::AMF0_REFERENCE);
                return true;
            }
            */</span>
&nbsp;
            <span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span>_referenceObjects<span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$object</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span></pre></div></div>

<p>Hier gibt es noch einen Patch zum herunterladen: <a href="http://blog.3spin.de/wp-content/uploads/2010/11/zend-amf-reference.patch">AMF Reference Patch</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.3spin.de/2010/11/zend-amf-mit-arrays-objekten/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>BASF – Diversity + Inclusion Trainer</title>
		<link>http://blog.3spin.de/2009/11/basf-%e2%80%93-diversity-inclusion-trainer/</link>
		<comments>http://blog.3spin.de/2009/11/basf-%e2%80%93-diversity-inclusion-trainer/#comments</comments>
		<pubDate>Thu, 12 Nov 2009 10:49:40 +0000</pubDate>
		<dc:creator>gs</dc:creator>
				<category><![CDATA[Projekte]]></category>
		<category><![CDATA[2009]]></category>
		<category><![CDATA[as3]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[prototyping]]></category>
		<category><![CDATA[zend]]></category>

		<guid isPermaLink="false">http://blog.3spin.de/?p=770</guid>
		<description><![CDATA[Für die Agentur Neuland+Herzer aus Frankfurt haben wir die Umsetzung des Diversity + Inclusion Trainer für das BASF-Intranet übernommen. Bei dem Thema Diversity + Inclusion geht es darum, dass Mitarbeiter in verschiedenen Gebieten ihr Wissen erweitern und durch regelmäßiges Training ihren Horizont erweitern. Neben der Vermittlung von Sozial- und Problemlösungskompetenzen macht der Diversity + Inclusion [...]]]></description>
			<content:encoded><![CDATA[<p>Für die Agentur <a href="http://www.neuland-herzer.com/">Neuland+Herzer</a> aus Frankfurt haben wir die Umsetzung des<br />
Diversity + Inclusion Trainer für das BASF-Intranet übernommen.</p>
<p>Bei dem Thema Diversity + Inclusion geht es darum, dass Mitarbeiter in verschiedenen Gebieten ihr Wissen erweitern und durch regelmäßiges Training ihren Horizont erweitern. Neben der Vermittlung von Sozial- und Problemlösungskompetenzen macht der<br />
Diversity + Inclusion Trainer verständlich, wie die Vielfältigkeit der Mitarbeiter das Unternehmen voranbringen kann. Die Anwendung besteht dazu aus elf Spielen, die einfach pfleg- und erweiterbar sind und die dem Spieler zum Trainieren zur Verfügung stehen. Für Tests können einzelne Aufgaben der verschiedenen Spiele flexibel kombiniert werden.</p>
<p>Die erste Phase des Projekts wurde von uns durch die Umsetzung eines Prototyps unterstützt, während weitere Teile des Konzepts verfeinert wurden. Anschließend übernahmen wir die Umsetzung der finalen Anwendung. Diese besteht aus einem Frontend auf Basis von Adobe Flash und einem Backend, das mit PHP und dem Zend-Framework umgesetzt wurde. Die Umsetzung der Flash-Frontends erfolgte in purem ActionScript 3.0-Code, wobei auch hier das Framework  spinOne für  eine erhebliche Zeitersparnis bei verbesserter Performance sorgte. </p>
<p>Folgende weitere Features wurden umgesetzt:</p>
<ul>
<li>Mehrsprachigkeit: Deutsch/Englisch</li>
<li>Pflege der Daten</li>
<li>Benutzerregistrierung/-anmeldung</li>
<li>Komplexe Statistikabfragen</li>
<li>Performance-Optimierung</li>
<li>DB Request-Caching</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.3spin.de/2009/11/basf-%e2%80%93-diversity-inclusion-trainer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>neckermann.de</title>
		<link>http://blog.3spin.de/2009/03/neckermannde/</link>
		<comments>http://blog.3spin.de/2009/03/neckermannde/#comments</comments>
		<pubDate>Tue, 24 Mar 2009 16:31:10 +0000</pubDate>
		<dc:creator>Philipp Reinstädtler</dc:creator>
				<category><![CDATA[Projekte]]></category>
		<category><![CDATA[2009]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[neckermann.de]]></category>
		<category><![CDATA[zend]]></category>

		<guid isPermaLink="false">http://blog.3spin.de/?p=252</guid>
		<description><![CDATA[3spin freut sich neckermann.de als Kunden gewonnen zu haben. Wir unterstützen bei der Entwicklung einer 3rd-Party-Application und setzen hierbei Flash &#38; Ajax Module um. Vielen Dank für das Vertrauen und die sehr gute Zusammenarbeit.]]></description>
			<content:encoded><![CDATA[<p>3spin freut sich neckermann.de als Kunden gewonnen zu haben. Wir unterstützen bei der Entwicklung einer 3rd-Party-Application und setzen hierbei Flash &amp; Ajax Module um.</p>
<p>Vielen Dank für das Vertrauen und die sehr gute Zusammenarbeit.</p>
<p><a href="http://www.neckermann.de/link_go.mb1?link_id=I3a0zz_SKR5W7Hp6i7BOq_sjDzLQQ7" target="blank"><br />
</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.3spin.de/2009/03/neckermannde/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Plattform für virtuelle Events der SAP AG geschaffen</title>
		<link>http://blog.3spin.de/2008/12/plattform-fur-virtuelle-events-der-sap-ag-geschaffen/</link>
		<comments>http://blog.3spin.de/2008/12/plattform-fur-virtuelle-events-der-sap-ag-geschaffen/#comments</comments>
		<pubDate>Thu, 11 Dec 2008 16:57:15 +0000</pubDate>
		<dc:creator>og</dc:creator>
				<category><![CDATA[Projekte]]></category>
		<category><![CDATA[2008]]></category>
		<category><![CDATA[air]]></category>
		<category><![CDATA[as3]]></category>
		<category><![CDATA[cluster]]></category>
		<category><![CDATA[DKOM]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[flex]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[SAP]]></category>
		<category><![CDATA[zend]]></category>

		<guid isPermaLink="false">http://blog.3spin.de/?p=108</guid>
		<description><![CDATA[In den letzten Wochen haben wir gemeinsam mit der millenium werbeagentur eine Plattform für virtuelle Events entwickelt. Millenium wurde von der SAP AG beauftragt, eine Internetanwendung zu schaffen, in der Konferenzen mit Vorträgen und Präsentationen virtuell abgehalten werden können. Dabei sollte das Ambiente und die Interaktionsmöglichkeiten einer realen Konferenz erhalten bleiben. Unsere Aufgabe im Projekt [...]]]></description>
			<content:encoded><![CDATA[<p>In den letzten Wochen haben wir gemeinsam mit der millenium werbeagentur eine Plattform für virtuelle Events entwickelt. Millenium wurde von der SAP AG beauftragt, eine Internetanwendung zu schaffen, in der Konferenzen mit Vorträgen und Präsentationen virtuell abgehalten werden können. Dabei sollte das Ambiente und die Interaktionsmöglichkeiten einer realen Konferenz erhalten bleiben.</p>
<p>Unsere Aufgabe im Projekt war neben der technischen Umsetzung der Plattform auch die Entwicklung einer Anwendung zum Publizieren von Präsentationen.</p>
<p><img class="size-full wp-image-112 alignnone" title="SAP virtuelle Events" src="http://blog.3spin.de/wp-content/uploads/2008/12/screen1.jpg" alt="SAP virtuelle Events Bild 1" width="500" height="318" /></p>
<p><span id="more-108"></span></p>
<p>Besondere Herausforderungen in der Entwicklung waren:</p>
<ul>
<li>12.000 aktive Benutzer zur gleichen Zeit</li>
<li>Webserver-Cluster mit 12 Servern</li>
<li>Datenbank mit Master-Slave-Replikation</li>
<li>Verwendung von Castify zur Verteilung von Video-Dateien</li>
<li>Integration in das Active Directory mittels LDAP für SingleSignOn und Abfrage von Benutzerdaten</li>
<li>SmartFoxServer-Anbindung</li>
</ul>
<p>Eingesetzte Techniken:</p>
<ul>
<li>PHP mit dem Zend Framework für das Backend</li>
<li>ActionScript 3 für das Frontend</li>
<li>Flex/AS 3 für die Publikationsanwendung</li>
</ul>
<p>Sehr bewährt hat sich der Einsatz von spinONE, unserem Framework für Flash-Anwendungen auf Basis von ActionScript 3 mit dem die Entwicklungszeit wesentlich verkürzt werden konnte und die Stabilität der Anwendung gewährleistet wird.</p>
<p><img class="alignnone size-full wp-image-114" title="screen6" src="http://blog.3spin.de/wp-content/uploads/2008/12/screen6.jpg" alt="" width="500" height="318" /></p>
<p><img class="alignnone size-full wp-image-115" title="screen8" src="http://blog.3spin.de/wp-content/uploads/2008/12/screen8.jpg" alt="" width="500" height="318" /></p>
<p><img class="alignnone size-full wp-image-116" title="screen9" src="http://blog.3spin.de/wp-content/uploads/2008/12/screen9.jpg" alt="" width="500" height="318" /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.3spin.de/2008/12/plattform-fur-virtuelle-events-der-sap-ag-geschaffen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

