Rewrite-modulen för Apache brukar av någon outgrundlig anledning aldrig fungera bra för mig. Nu har jag återigen spenderat någon timme med att konfa upp den för wordpress och skriver därför ner vad jag gjort för att komma ihåg det till nästa gång.
Innehållet för min site mysite pekas ut av en konfigurationsfil i /etc/apache2/sites-available (virtual host-fil). Den innehåller följande: Läs mer >>
Detta inlägg visar hur Dependency Injection (DI) kan användas med hjälp av CDI, Guice och Spring. Depencency Injection beskrivs bland annat i Robert Buréns artikel Spring som DI-ramverk. Exemplet i detta inlägg är kraftigt influerat av en artikel jag läste på DZone.
Spring och Guice är två av de vanligaste ramverken för DI. Dessa ramverk kan användas i standalone-, web- och enterprise-applikationer. CDI är ett standardiserat sätt för DI som kommer med Java EE 6 och kan tills vidare därför endast användas i en enterprise-miljö. Spring erbjuder dock stöd för några av de features som definieras av CDI.
Läs mer >>
I denna artikel mixar vi Jersey med det XML-schema som Tommy Wassgren definierade i Serialisering med JAXB. Jersey är referensimplementationen för JAX-RS som är ett API för att bygga RESTfulla webbtjänster.
I artikeln visar vi hur enkelt det är att dra nytta av Jerseys inbyggda stöd för att skicka bl.a. XML och JSON m.h.a. JAXB. Vi visar också hur du kan enhetstesta REST-applikationen. Koden hittar du på github: https://github.com/cygni-stacktrace/jaxbws.
Läs mer >>
Martin Odersky som ligger bakom Scala har varit med och utvecklat en ny version av Scala-pluginen för Eclipse. Den kallas Eclipse Scala IDE och finns att ladda hem från http://download.scala-ide.org/.
The Yahoo! Query Language (YQL) är ett kraftfullt SQL-liknande språk som ger möjligheten att tillgå och filtrera data från olika webservices som t ex Twitter och Flickr för egen javascript-driven rendering.
Fördelarna med att använda YQL är att man reducerar det tidsödande arbetet med att hitta rätt URL, dokumentation och sätta sig in unika API’er för varje enskild webservice man vill använda. Vidare behöver man inte någon proxy för att hantera ”same domain policy” då man använder YQL.
Använder du redan YUI blir det väldigt enkelt då du kan använda ”YUI Get Utility” och göra en request till ”YQL” som returnerar snygg valid JSON eller XML, förutom källan i requesten kan du villkora på flera sätt.
Läs mer >>
Apache Camel är ett javabaserat integrationsramverk som innehåller en mängd komponenter. När man konfigurerar kan man använda Spring xml, annoteringar och en Java DSL. Allt är väl beskrivet på Camels hemsida. Eftersom Scala är utvecklat för att enkelt kunna integrera med Java och Javas ramverk är det inte konstigt att är väldigt enkelt att integrera Scala-komponenter i Camel. Det finns även en Scala DSL som kan användas för att konfigurera Camel-routar med. Jag har skrivit ett litet Scala-Camel projekt, WeirdTranslator för att visa på hur Scala i Camel kan fungera. WeirdTranslator är en variant på viskleken, man tar en mening och översätter den mellan ett antal språk och avslutar med att översätta till ursprungsspråket. I detta fallet finns det två vägar att få in och ut text antingen via GTalk, XMPP, och direkt med en TCP socket.
Läs mer >>
JAXB betyder Java Architecture for XML Binding och används för att konvertera POJOs till XML och vice versa. Metoden för att konvertera en POJO till XML kallas för marshalling eller serialisering. Det motsatta, det vill säga att konvertera från XML till en POJO, kallas för unmarshalling eller deserialisering.
I denna artikel visar jag hur man kan använda JAXB för serialisering/deserialisering på ett enkelt sätt med hjälp av ett enhetstest. Exemplet finns att hämta på GitHub – https://github.com/cygni-stacktrace/jaxb-sample.
Läs mer >>
I Protobuf för serialisering del 1 berättade jag om grunderna i Protobuf som kort kan beskrivas som ett binärt JSON-format. I den här artikeln tänkte jag visa hur man knyter i hop detta med Jersey som är ett snyggt API för RESTfulla webbtjänster. Som grädde på moset gör vi allt i Maven. Koden finns att hämta på https://github.com/cygni-stacktrace/protows.
Läs mer >>
Protobuf är en kodningsteknik för att serialisera datastrukturer till ett binärt format som tar mindre plats än t.ex. XML eller JSON. På så sätt lämpar sig protobuf bättre för transport över kanaler där bandbredd är en avgörande resurs.
Protobuf är utvecklat av Google och används enligt uppgift mycket mellan deras interna tjänster. Ramverket tillhandahålls med stöd för C++, Java och Pyton, men en mängd andra språk stöds också genom tredjepartsprojekt: C, C#, JavaScript etc.
Protobuf använder sig av en s.k. schemabaserad kodning, vilket innebär att ett kodat meddelande inte kan avkodas (i alla fall inte fullständigt) utan en beskrivning (ett schema) av datastrukturen. Datastrukturerna definieras i ett speciellt språk.
Läs mer >>
Tidigare beskrev Tommy Wassgren hur man kan använda profiles i Spring 3.1 för att definiera olika kör-profiler. T.ex. en profil för utveckling och en för produktion, vilka man enkelt kan växla mellan m.h.a. en jvm parameter. Kruxet är dock att 3.1 inte är släppt, så i väntan på detta vad gör man då om sitter i t.ex. Spring 2.5?
Läs mer >>