<?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>her er mitt arbeid &#187; flex</title>
	<atom:link href="http://dallokken.com/espen/tag/flex/feed/" rel="self" type="application/rss+xml" />
	<link>http://dallokken.com/espen</link>
	<description></description>
	<lastBuildDate>Fri, 09 Sep 2011 19:44:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Inntektslaget hjelper OS ID på 1-2-3</title>
		<link>http://dallokken.com/espen/2010/04/inntektslaget-hjelper-os-id-pa-1-2-3/</link>
		<comments>http://dallokken.com/espen/2010/04/inntektslaget-hjelper-os-id-pa-1-2-3/#comments</comments>
		<pubDate>Mon, 26 Apr 2010 19:14:40 +0000</pubDate>
		<dc:creator>espen</dc:creator>
				<category><![CDATA[inntektslaget]]></category>
		<category><![CDATA[air]]></category>
		<category><![CDATA[flex]]></category>

		<guid isPermaLink="false">http://dallokken.com/espen/?p=353</guid>
		<description><![CDATA[OS ID hadde behov for enkel integrasjon mot Mattilsynets MATS web service API for å raskt kunne betjene sine kunder ved oppdaterte føringer for merking av husdyr. Inntektslaget utvikler og satte i produksjon første versjon fire timer etter at oppdraget var signert. Deretter fulgte nye versjoner etterhvert som brukerne var fornøyde og ville ha mer. [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.osid.no"><img class="alignleft" title="OS ID" src="http://dallokken.com/inntektslaget/osid/osid_badge.png" alt="" width="296" height="123" /></a><a href="http://www.osid.no/" target="_blank">OS ID</a> hadde behov for enkel integrasjon mot <a href="http://www.mattilsynet.no/skjema/mats" target="_blank">Mattilsynets MATS web service API</a> for å raskt kunne betjene sine kunder ved oppdaterte føringer for merking av husdyr.<br />
Inntektslaget utvikler og satte i produksjon første versjon fire timer etter at oppdraget var signert. Deretter fulgte nye versjoner etterhvert som brukerne var fornøyde og ville ha mer.</p>
<h2>Digital samhandling</h2>
<p>Det skulle være to typer funksjonalitet i applikasjonen:</p>
<ul>
<li>søke frem produsenter hos Matvaretilsynet for å se detaljinformasjon</li>
<li>hente frem informasjon om alle merker en produsent hadde.</li>
</ul>
<p>Elektronisk samhandling er veldig i vinden om dagen, men det er åpenbart at veldig mange har veldig mye å lære når det gjelder hva dette innebærer. Tilgjengeligheten på tjenestene fra Mattilsynet sett fra en programmerer si ståsted er ekstremt dårlig. De to kallene jeg behøvde å gjøre hadde et API som ikke lignet i det hele tatt. Det kunne like gjerne vært fra to ulike aktører. Dette er selvsagt altfor dårlig. Elektronisk samhandling er mulig dersom aktørene forstår hva slags ansvar det innebærer og er profesjonelle nok til å sørge for å ha konsistente APIer på tvers av sine tjenester.</p>
<h2>Enkel brukerflate for en enkel applikasjon</h2>
<p>Applikasjonen består av to helt enkle skjermbilder hvor brukerne kan søke frem produsenter. Begge skjermbildene var med i første leveranse som ble utviklet.<br />
<a href="http://dallokken.com/espen/wp-content/uploads/2010/02/Image002.png"><img class="alignleft size-thumbnail wp-image-399" title="Image002" src="http://dallokken.com/espen/wp-content/uploads/2010/02/Image002-150x150.png" alt="" width="150" height="150" /></a><br />
En utfordring ved å benytte WebServices støtten i Flex 3 er manglende støtte for vanlig HTTP autentisering, men takket være god hjelp fra andre utviklere som har vært i samme situasjon var dette løst raskt. Utover dette var det datamengden i skjermbildet for visning av antallet merker som var en stor utfordring og er noe som skal løses i kommende leveranser.<br />
<a href="http://dallokken.com/espen/wp-content/uploads/2010/02/Image0011.png"><img class="alignleft size-thumbnail wp-image-400" title="Image001" src="http://dallokken.com/espen/wp-content/uploads/2010/02/Image0011-150x150.png" alt="" width="150" height="150" /></a></p>
<h2>Tur-retur på fire timer</h2>
<p>Hurtig utvikling ved hjelp av Flex rammeverket kombinert med AIR teknologien gjorde det mulig å implementere og installere hos kunden en applikasjon i løpet av 4 timer. Siden den gang har applikasjonen blitt utvidet med mer funksjonalitet, men dette har vært tillegg og ikke store omskrivninger. Du kan jobbe utrolig raskt og med høy kvalitet takket være Flex rammeverket&#8217;s muligheter til å bygge <em>datadrevne applikasjoner</em>. Å ta en rask prototype for så å bygge den ut er enkelt når du følger dette ene prinsippet.</p>
<p>Overgangen fra prototype til ferdig applikasjon opphører og det sparer en for tid og penger. AIR rammeverket sin innebygde støtte for automatisk oppdatering gjør det enkelt å stadig legge ut nye versjoner til brukerne uten at det blir noen drift- eller forvaltningskostnader i forbindelse med utrullingen.</p>
]]></content:encoded>
			<wfw:commentRss>http://dallokken.com/espen/2010/04/inntektslaget-hjelper-os-id-pa-1-2-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tips og Triks Til Trivsel med Flex</title>
		<link>http://dallokken.com/espen/2008/10/tips-og-triks-til-trivsel-med-flex/</link>
		<comments>http://dallokken.com/espen/2008/10/tips-og-triks-til-trivsel-med-flex/#comments</comments>
		<pubDate>Sun, 26 Oct 2008 14:43:51 +0000</pubDate>
		<dc:creator>espen</dc:creator>
				<category><![CDATA[utvikling]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[flex]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://dallokken.com/espen/?p=41</guid>
		<description><![CDATA[Flex har virkelig begynt å få fotfeste i Norge det siste året. Dette merker man i jobbannonser hvor det stadig oftere er nevnet Flex kompetanse og man merker det med antallet hendvendelser som kommer angående hjelp til å begynne med Flex. Å starte med Flex er ikke noe stort problem og de fleste utviklere klarer [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" title="___" src="http://www.dallokken.com/images/espen/IMG_1099.png" alt="" />Flex har virkelig begynt å få fotfeste i Norge det siste året. Dette merker man i jobbannonser hvor det stadig oftere er nevnet Flex kompetanse og man merker det med antallet hendvendelser som kommer angående <a href="http://dallokken.com/espen/tjenester/flex-ad/">hjelp til å begynne med Flex</a>.</p>
<p>Å starte med Flex er ikke noe stort problem og de fleste utviklere klarer veldig lett å komme igang med å lage applikasjoner. Tilsvarende lett er det å gå i en del fallgruver og gjøre en del feil. Jeg har arbeidet med Flex en stund og har dermed også vært nedi de fleste fallgruvene. Derfor tenkte jeg å dele noen av mine beste tips og triks som jeg har lært meg til å bruke for å ennå raskere levere Flex applikasjoner.</p>
<ul>
<li>Ha alltid en modell i bunnen også når du lager mockups og prototyper.</li>
<li>Data Driven Application Design: sørg for at det alltid er dataene som driver applikasjonen din ved hjelp av data binding</li>
<li>Les dokumentasjonen om klassen <a href="http://livedocs.adobe.com/flex/3/langref/mx/binding/utils/BindingUtils.html" target="_blank">Binding Utils</a> og sørg for å laste ned koden til <a href="http://weblogs.macromedia.com/paulw/archives/2006/05/the_worlds_smal.html" target="_blank">Observere og ObervereValue</a>.</li>
<li>Logging: lag deg en logger som gjør det mulig for andre brukere og sende deg logg når det oppstår feil situasjoner. Et slikt eksempel er en logger som bruke <a href="http://getfirebug.com" target="_blank">Firebug</a>.</li>
<li>Evolutionary Application Architecture: ikke bygge rammeverk og komponenter i tilfelle du trenger de. Flex rammeverket gjør det veldig enkelt å gradvis bygge ut en prototype til en ferdig applikasjon. Lag for eksempel aldri en gjenbrukbar komponent før du faktisk skal bruke den for andre gang.</li>
</ul>
<p>Mange av disse tingene vil du kanskje si at er vanlige regler for god systemutvikling, og det er selvsagt helt riktig. Likevel er det viktig å påpeke at disse tingene selvsagt også gjelder når man jobber med Flex. Det er veldig lett å tro at fordi det er en ny teknologi så gjør man ting anderledes. Å følge prinsippene i objekt orientert programmering (OOP) gjør det enklere å utvikler og vedlikeholde Flex applikasjoner også.</p>
<h2>Test drevet Flex utvikling</h2>
<p>Mange spør meg om hvordan kan man drive testdervet utvikling når man jobber med Flex. Svaret ligger i tipsene ovenfor, nemlig å ha en <em>data drevet applikasjon </em>hvor hendelser i grensesnittet gjøres gjennom å manipulere en modell klasse. Hvis du gjør dette gjennom å implementere <a href="http://martinfowler.com/eaaDev/PresentationModel.html" target="_blank">presentation model</a> mønsteret vil du merke at å jobbe test drevet ikke er noe problem i Flex.</p>
<p>Gjennom å ha en modell klasse som brukes til å manipulere data (og dermed også grensesnittet) kan du veldig enkelt skrive enhetstester for modell klassen. Dermed får du dokumentert oppførselen i applikasjonen gjennom testene samtidig som kvaliteten på koden din øker. Min gode venn <a href="http://www.borrewessel.com/" target="_blank">Børre Wessel</a> har <a href="http://www.borrewessel.com/?p=10" target="_blank">holdt en presentasjon på Scotch On The Rock</a> hvor han snakker om hvordan du implementerer presentation model mønsteret i Action Script.<br />
Anbefalt lesning om testing av grensesnitt er artikkelserien til Adobe Consulting&#8217;s <a href="http://weblogs.macromedia.com/paulw/" target="_blank">Paul Williams</a> som tar for seg en lang rekke mønster som gjør testing av Flex applikasjoner enklere.</p>
]]></content:encoded>
			<wfw:commentRss>http://dallokken.com/espen/2008/10/tips-og-triks-til-trivsel-med-flex/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flex Camp Oslo &#8211; Avlyst</title>
		<link>http://dallokken.com/espen/2008/09/flex-camp-oslo-18-oktober/</link>
		<comments>http://dallokken.com/espen/2008/09/flex-camp-oslo-18-oktober/#comments</comments>
		<pubDate>Sun, 07 Sep 2008 11:34:29 +0000</pubDate>
		<dc:creator>espen</dc:creator>
				<category><![CDATA[utvikling]]></category>
		<category><![CDATA[event]]></category>
		<category><![CDATA[flex]]></category>
		<category><![CDATA[oslo]]></category>

		<guid isPermaLink="false">http://dallokken.com/espen/?p=81</guid>
		<description><![CDATA[Flex Camp Norway som skulle vært avholdt den 18. Oktober er avlyst. Dette fordi det rett og slett ikke var nok påmeldte. Det er ikke på grunn av manglende interesse blant utviklere eller selskaper rundt om i Norge, men snarere på grunn av litt problemer rundt organiseringen av eventen som gjorde at vi kom litt [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright" src="http://www.barcamp.org/f/flexcamp.jpg" alt="" height="130" />Flex Camp Norway som skulle vært avholdt den 18. Oktober er avlyst.</p>
<p>Dette fordi det rett og slett ikke var nok påmeldte. Det er ikke på grunn av manglende interesse blant utviklere eller selskaper rundt om i Norge, men snarere på grunn av litt problemer rundt organiseringen av eventen som gjorde at vi kom litt vel sent i gang. Derfor vil Flex Camp nok bli arrangert en gang i starten av 2009 i stedet. Takk til alle som har vist interesse for Flex Camp og beklager&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://dallokken.com/espen/2008/09/flex-camp-oslo-18-oktober/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tjuvstart din utvikling med BlazeDS</title>
		<link>http://dallokken.com/espen/2008/06/blazeds-og-flex/</link>
		<comments>http://dallokken.com/espen/2008/06/blazeds-og-flex/#comments</comments>
		<pubDate>Mon, 23 Jun 2008 09:44:46 +0000</pubDate>
		<dc:creator>espen</dc:creator>
				<category><![CDATA[utvikling]]></category>
		<category><![CDATA[blazeds]]></category>
		<category><![CDATA[flex]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[maven]]></category>

		<guid isPermaLink="false">http://dallokken.com/espen/?p=30</guid>
		<description><![CDATA[BlazeDS er et Open Soruce prosjekt som gjør utvikling av Java-baserte web applikasjoner med et brukergrensesnitt skrevet i Flex langt raskere. Denne artikkelen gir deg en tjuvstart i arbeidet og hjelper deg til å raskt komme igang uten å måtte gå i de mest kjente fallgruvene. ]]></description>
			<content:encoded><![CDATA[<p><img class="alignright" style="float: right;" src="http://opensource.adobe.com/wiki/download/attachments/1114252/blazeds_high_119x125.jpg" alt="" width="119" height="125" />I desember 2007 la Adobe ut <a href="http://opensource.adobe.com/wiki/display/blazeds/BlazeDS" target="_blank">Blaze Data Services</a> som Open Source. BlazeDS var tidligere en del av den komerisielle programvare pakken <a href="http://www.adobe.com/products/livecycle/" target="_blank">Live Cycle (LC)</a> . Jeg hadde brukt LC Data Services en stund og var veldig interessert i å se hvordan Open Source varianten fungerte i forhold til den ekstremt dyre komersielle varianten. Resultatet er denne korte oppskriften på hvordan du kan starte med BlazeDS.</p>
<h2>Demo applikasjonen</h2>
<p>I tillegg til denne artikkelen har jeg laget en ekstremt enkel demo applikasjon som kan brukes som utgangspunkt for videre abreid. Applikasjonen er ekstremt enkel og er en applikasjon for å samle noteter og lenker.<br />
Demo applikasjonen inneholder en <strong>Flex 3 Web- og AIR </strong>applikasjon og en standard Java web applikasjon.</p>
<p>Alt du trenger å gjøre er å pakke ut filene og kjøre to enkle kommandoer. Sørg for at du har installert følgende programvare:</p>
<ul>
<li><a href="http://maven.apache.org" target="_blank">Maven</a></li>
<li>Java 1.6.x or later</li>
<li><a href="http://www.adobe.com/go/getflashplayer" target="_blank">Flash Player 9</a></li>
</ul>
<p>Når du har disse tingene installert så er det bare å følge instruksjonene nedenfor:</p>
<ol>
<li>Last ned kildekoden til eksempelet: <a title="Blaze POC sample projects" href="http://www.totalworldannihilation.org/blog/wp-content/uploads/2008/06/blaze-poc-v3.zip">Blaze POC v3</a></li>
<li>Pakk ut ZIP filen til en katalog</li>
<li>Åpne filen<em> deploy/blazeds-poc.properties</em> og endre linjen med <em>echo.db.path</em> slik at den passer med stedet du pakket ut kildekoden</li>
<li>Åpne en command promt of kjør scriptet <em>install-flex-libs<br />
</em>Dette scriptet installerer alle BlazeDS JAR-filer i ditt Maven repository<em><br />
</em></li>
<li>Åpne command prompt og kjør følgende:<em> mvn install</em></li>
<li>Gå til katalogen<em> blaze-poc-web</em> og kjør kommandoen: <em>mvn jetty:run</em></li>
<li>Åpne adressen: <a href="http://localhost:8081/blaze-poc-web/" target="_blank">http://localhost:8081/blaze-poc-web/</a></li>
</ol>
<p>Nå som du har sett eksempel applikasjonen er du kanskje interresert i å vite hvordan man konfigurerer BlazeDS? Bare fortsett å les så skal vi se litt på hvordan dette gjøres. <span style="text-decoration: line-through;">For at du skal kunne bygge Flex versjonen bør du installere <a href="http://labs.adobe.com/technologies/flex/flexbuilder3/" target="_blank">Flex Builder 3</a></span>. Alt du trenger for å kunne bygge et Flex prosjekt er <a href="http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+3" target="_blank">Flex SDK&#8217;en </a>som er tilgjengelig som Open Source. Likevel vil jeg anbefale å installere <a href="http://labs.adobe.com/technologies/flex/flexbuilder3/" target="_blank">Flex Builder 3</a> som gir deg mange fordeler når du jobber med Flex og hjelper deg til å jobbe langt raskere. Du kan bruke Flex Builder gratis i over 30 dager før du bestemmer deg.</p>
<p><a href="http://labs.adobe.com/technologies/flex/flexbuilder3/" target="_blank"></a></p>
<h2>Konfigurere BlazeDS i en Java webapplikasjon</h2>
<p>Opprett en Java web applikasjon i Eclipse (du kan bruke <a href="http://www.myeclipseide.com/" target="_blank">MyEclipse</a> or eller lignende for å gjøre jobben enklere). Last ned <a href="http://opensource.adobe.com/wiki/display/blazeds/Release+Builds" target="_blank">siste versjon av BlazeDS</a> og pakk ut filene et sted på din maskin. Filen <em>blazeds.war</em> pakker du ut i <em>rot katalogen</em> av din webapplikasjon. Du skal ha følgende struktur:</p>
<blockquote><p>WEB-INF\flex<br />
WEB-INF\lib<br />
meta-inf</p></blockquote>
<p>Slett alle JAR-filene i <em>WEB-INF/lib</em> katalogen. Disse filene trenger vi ikke ettersom Maven skal ta hånd om avhengighetene. Adobe virker ikke særlig interessert i Maven og har derfor ikke publisert offesielle BlazeDS artifakter til noe Maven deopt. Derfor ligger det ved et script som installerer BlazeDS artifaktene i ditt lokale Maven depot (takket være <a href="http://www.linkedin.com/in/perottobc" target="_blank">Per-Otto</a>).</p>
<h2>Spring and BlazeDS</h2>
<p>BlazeDS kan veldig enkelt integreres med <a href="http://www.springframework.org" target="_blank">Spring Framework</a> for å hjelpe deg til å utvikle spennende tjenester ennå raskere. Alt du trenger å gjøre er å lage en <em>SpringFactory</em> klasse. <a href="http://coenraets.org/" target="_blank">Christophe Coenrates</a> har skrevet artikkelen <a href="http://coenraets.org/flex-spring/" target="_blank"><em>Using Flex and Spring</em></a> som beskriver detaljene i hvordan dette gjøres.  I eksempel prosjektet er det en <em>SpringFactory</em> klasse som er konfigurert i filen  <em>WEB-INF/flex/services-config.xml</em></p>
<pre>&lt;factories&gt;
  &lt;factory id="spring" class="com.moneytalks.blaze.poc.SpringFactory"/&gt;
&lt;/factories&gt;</pre>
<h2>Hvordan du best konfigurerer tjenestene i Blaze DS</h2>
<p><em>Remote Object</em> kalles teknologien som gjør det mulig å invokere metoder på Java klasser direkte fra Action Script. Rådet fra Adobe er at du skal legge med et kompilator argument, <em>-services</em>, som forteller MXML kompilatoren hvor BlazeDS konfigurasjonen ligger. Dette mener jeg er et veldig dårlig råd ettersom det tving deg til å ha samme katalogstruktur i alle miljøer du har tenkt å rulle ut din applikasjon.<br />
En langt bedre og mer fleksibel løsninger er å sende konfigurasjonsparameter for <em>Remote Object-</em> og <em>Messaging services</em> ved bruk av <a href="http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_16417" target="_blank">Flash Vars</a>. Dette gjør det meget enkelt å endre konfigurasjon for <em>endpoints</em>, fil stier, server navn, osv i ulike miljøer. Denne måten å løse dette på ble jeg først oppmerksom på etter å ha lest <em>Mike Nimer</em> sin artikkel <em><a href="http://blog.mikenimer.com/index.cfm/2007/1/10/Bye-bye-services" target="_blank">Bye bye -services</a></em>.</p>
<h2>La utviklingen begynne!</h2>
<p>Det er igrunn alt du trenger å vite for at du skal kunne begynne utvikle løsninger med BlazeDS. Du vil forhåpentligvis få en langt mer harmonisk hverdag hvor fokus ligger på å utvikle spennende tjenester for dine brukere snarer enn å skrive <em>boiler plate</em> kode som flytter data fra A til B.</p>
<p>Mer informasjon om BlazeDS og hvordan du kan bruke det kan du finne på noen av lenkene nedenfor:</p>
<ul>
<li><a href="http://opensource.adobe.com/wiki/display/blazeds/BlazeDS" target="_blank">BlazeDS hos opensource.adobe.com</a></li>
<li><a href="http://coenraets.org/" target="_blank">Christophe Coenraets sin blog</a> har veldig mange eksempler på hvordan du kan bruke BlazeDS</li>
</ul>
<p>Artikkelen er også <a href="http://www.totalworldannihilation.org/blog/2008/02/22/just-blaze-getting-started-with-blaze-ds/" target="_blank">tilgjengelig på engelsk</a> og i tillegg publisert hos <a href="http://itpro.no/art/12811.html" target="_blank">ITPro.no</a></p>
]]></content:encoded>
			<wfw:commentRss>http://dallokken.com/espen/2008/06/blazeds-og-flex/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>

