Jozef Izso

World of Warcraft patch 3.2.0 na Snow Leopard

October 12th, 2009

Skúšam Snow Leopard a nainštaloval som si tam WoWko. Na Leopardovi bežalo v pohode, zo stránky som stiahol inštalátor, opatchovalo sa to a WoW fičalo. V Snow Leopardovi som mal k dispozícii iba inštalačné súbory a patch 3.2.0 som sťahoval cez torrent, pretože to cez uTorrent trvá aj 5× menej ako cez Blizzard Downloader.

Patch som skúšal spustiť, ale nič sa nedialo. Ani sa neukázala ikonka v Docku. Akoby systém vôbec nespustil program. WoWko si patch sťahuje do svojeho priečinku v /Applications/World of Warcraft, tak som patch skopčil tam a stále to nešlo. Downloader síce súbor skontroloval (a bol správny), potom sa však nič nedialo.

Tak som spustil Console že či náhodou sa niečo neloguje a objavil som túto chybu:

10. 12. 2009 18:09:07   com.apple.launchd.peruser.501[76]       ([0x0-0x69069].com.blizzard.BNUpdate[1244]) posix_spawn("/Applications/World of Warcraft/WoW-3.2.0-enGB-patch.app/Contents/MacOS/Installer", ...): Permission denied
10. 12. 2009 18:09:07   com.apple.launchd.peruser.501[76]       ([0x0-0x69069].com.blizzard.BNUpdate[1244]) Exited with exit code: 1

Inštalátor nemal práva. Na WoW forách som našiel, že skupina admin by mala mať Read&Write prístup do priečinka s WoWkom a podpriečinkov. Nasledovala zmena práv, pretože admin mal nastavený iba Read.

chmod -R g+w /Applications/World\ of\ Warcraft/

Toto nepomohlo a pri ďalšom googlení som objavil, že WoW-3.2.0-enGB-patch.app nie je súbor, ale priečinok a má v sebe ďalšie súbory a jedným z nich je aj Contents/MacOS/In­staller.

ls -l WoW-3.2.0-enGB-patch.app/Contents/MacOS/Installer
-rw-rw-r--  1 izsak  admin  5947960 Oct 12 17:28 WoW-3.2.0-enGB-patch.app/Contents/MacOS/Installer

Installer je síce aplikácia, ale zrejme tým že bola sťahovaná cez torrent a patch nebol jeden súbor, ale štruktúra priečinkov a súborov, bol na disk uložený iba ako obyčajný súbor bez priradených execute práv. Jeden príkaz a WoWko sa mi patchuje ;)

chmod ug+x WoW-3.2.0-enGB-patch.app/Contents/MacOS/Installer

Generovanie dokumentácie k Ajax web službe

February 25th, 2009

Webové služby využívajúce formát SOAP sa s pomocou WCF programujú veľmi ľahko hlavne vďaka tomu, že programátor sa môže sústrediť na biznis logiku, ktorú potrebuje implementovať. Na vytvorenie služby a rozchodenie komunikácie stačia štyri kroky:

  1. Zadefinovanie interface-u,
  2. Implementácia interface-u,
  3. Spustenie služby pomocou ServiceHost a povolenie generovania metadát,
  4. Zo schémy sa vytvorí proxy trieda pre prístup k službe.
[ServiceContract(Namespace="WebApplication1.Services")]
public interface IPublicApi
{
        [OperationContract]
        [WebGet]
        IList<TaskGroup> GetTaskGroups();

        [OperationContract]
        [WebGet]
        Guid CreateTaskGroup(string taskGroupName);
}

Utilitka svcutil.exe vie na základe XML schémy SOAP služby vygenerovať strongly-typed triedu pre .NET. Keď sa zmení rozhranie služby, stačí pregenerovať triedu a prípadne refektorovať kód.

S webovými službami pre Ajax to tiež nie je ťažké. WCF 3.5 podporuje Json a stačí použiť triedu WebScriptHostFactory ktorá vytvorí WebServiceHost s WebScriptEnablingBehavior. Ten pridáva podporu pre formát Json a XML a mapuje cestu /js na generátor JavaScript-ového proxy súbory. Vygenerovaný JavaScript je určený pre ASP.NET AJAX framework a generátor zatiaľ nie je plug-able, čiže sa nedá vymeniť za nejaký iný.

http://localhost/WebApplication1/PublicApi.svc/js

Objavil som však WCF REST Starter Kit (zdrojový kód je na Codeplex.com) – je to ukážka rozšíriteľnosti WCF stacku a záreveň implementácia podpory pre REST.

Tento kit obsahuje triedu HelpPageInvoker, ktorá si registruje url /help na ktorej sa zobrazí jednoduchý popis dostupných metód, ktoré HTTP príkazy (GET, POST, PUT, DELETE…) sa dajú použiť a taktiež odkazy na ukážkový request alebo response pre metódu.

http://localhost/WebApplication1/PublicApi.svc/help

REST Starter Kit je určený hlavne pre zjednodušenie práce so službou, ktorá používa POX a HTTP príkazy. Umožňuje použiť Json formát, ale cieľovou skupinou tohto kitu nie sú prímarne Ajax rozhrania.

Ak používate dependency injection v Ajax službách, tak zrejme budete potrebovať vlastnú implementáciu triedy HelpPageInvoker aby v nej správne fungovalo generovanie ukážkových hodnôt pre request alebo reponse. HelpPageInvoker si zistí návratový typ metódy, alebo jej parametre, tieto typy inštanciuje cez Activator.Cre­ateInstance() a objekt serializuje do XML alebo Json. Ak sú však tieto typy definované ako rozhrania (napr. GetTaskGroups() vracia IList<TaskGroup>) tak Activator ich samozrejme nevie ako vytvoriť.
Tu prichádza napomoc dependency injection. Do triedy HelpPageInvoker stačí poslať referenciu na kontajner z DI frameworku, ktorý využívate a nahradiť štyri volania Activator.Cre­ateInstance() za kontajner a jeho príslušné metódy.

Nasleduje kód, ako principiálne funguje vytvorenie ukážky návratovej hodnoty pre nejakú operáciu:

class HelpPageInvoker
{
  public Message GetResponseExample(OperationDescription od)
  {
    // z popisu operácie získa dátový typ návratovej hodnoty
    // a vytvorí objekt
    Type body = GetResponseBodyType(od);
    object instance = UnityContainer.Resolve(body);

    // vytvori Message serializovanu do Json
    Message result = Message.CreateMessage(MessageVersion.None, null,
      new JsonBodyWriter(instance, body));
    return result;
  }
}

Gopas Bootcamp

February 23rd, 2008

Bootcamp je skvelý spôsob, ako si oddýchnuť, vyškoliť sa v novej technológii a spoznať nových odborníkov.

Témou zimného bootcampu bol Office SharePoint Portal 2007. Úžasnou vecou na bootcampe je, že ráno si môžete dať perličkový kúpeľ, potom je klasické školenie, obed, školenie a večera a potom vlastný program – takže nejaký ten bowling, prípadne zase perličkový kúpeľ, či sauna a rôzne iné aktivity.

NBÚ

August 9th, 2007

Náš naozaj najbezpečnejší úrad, ktorý by sa mal starať o elektronickú bezpečnosť, je jednoznačne jediný na svete, ktorý má stránkové hodiny dokonca aj na svoje webové stránky (prístupné od 7.30 do 16.00), má pre istotu zverejnený Rozpočet na rok 2007 na localhost-e, aby hackeri vedeli, koľko peňazí bolo investovaných do zmeny hesla nbusr123 na nové – nbusr1234.

Toto je odkaz na spomínaný rozpočet:

http://localhost/…ocet2007.pdf

A čo asi znamená hodnota X-xxxxxxxx: xxxxxxxxxxxxx­xxxxxx v HTTP hlavičkách posielaných zo serveru?

Jedinej informácii na stránkach www.nbusr.sk naozaj verím: že medzi záľuby riaditeľa patrí rybárstvo a záhradkárstvo.

Burning Crusade – prvé dojmy

January 16th, 2007

Pred Brlohom bolo natrieskané, vyzeralo to na 150–200 ludí. Museli predčasne otvoriť (už o 23:45, oproti pôvodne plánovanému času 0:00 ? veď aj Dark Portal je jednosmerne otvorený už pár dní…) a za pol hodinu boli vykockované hracie karty a game kupóny, takže už sa hralo jedine o knižky. Tri šestky a teda Burning Crusade zdarma, knižka a karty ako výhra padli len raz.

Momentálne to vyzerá tak, že inteligentný inštalátor upgraduje World of Warcraft a počas kopírovania súborov umožňuje vykonať upgrade konta na rozšírenú verziu. Servre sú však preťažené a treba si počkať :-). Približne od času, kedy mohol byť Burning Crusade dostupný v Japonsku, sa zmenila aj úvodná stránka WOW Europe, ktorá je odľahčená, pretože mali kapacitné problémy. Americká stránka teraz je tiež prerobená v štýle „Dark Portal is opening“ s možnosťou upgradovať si konto.

A je to v piči

June 28th, 2006

Je rozhodnuté. Socky, čo nič nerobia, budú mať zdravotné ošetrenie zdarma. A poctivo zarábajúci človek sa im na to zloží zo zvýšeného mzdového zaťaženia. Geniálne!

Priemerný plat

April 23rd, 2006

Toto si nemôžem odpustiť blognúť:

Dotyčný tedy musel vědět, že medián statistické veličiny, která podléhá unimodálnímu asymetrickému rozdělení pravděpodobnosti s kladnou šikmostí, je vždy menší než průměr této veličiny – což je důvod, proč většina lidí má, měla a bude mít podprůměrné příjmy bez ohledu na to, která politická strana právě vládne a dokonce bez ohledu na to, zda je ekonomika kapitalistická, tržně sociální či komunistická.

Zdroj: Vzdělání, hospodářský růst a motivace, Pavel Kohout

Via: Prečo má 62% percent ľudí nižší ako priemerný plat, Mayov poznámkový blog

Zaujímavé darčeky

April 13th, 2006

Trošku v predstihu, ale však nevadí ;-), som dostal veľmi zaujímavé darčeky. Tradične už dostávam rôzne testovacie balíčky so softwarom od Microsoftu. Dnes však bol balíček výnimočný. Nejednalo sa o testovacie verzie :-).

Za účasť na Ready to Launch Tour 2005 som získal plnú verziu najlepšieho vývojového nástroja: Visual Studio 2005 Professional. Spolu s ním som získal aj SQL Server 2005 Standard Edition s jednou klientskou prístupovou licenciou a možnosť získať BizTalk Server 2006 Developer Edition. Naozaj, veľmi hodnotný darček. A k Visual Studio neodmyslitelne patrí MSDN Library.

K tomu som dostal dve DVD s rôznymi materiálmi k celosvetovej súťaži, ktorá pomáha realizovať úžasné nápady študentov – Imagine Cup.

Aby toho nebolo málo, tak mi prišla ponuka na prácu externého lektora v KVT.

Tak to som zvedavý, čo ma bude čakať 18. 4. :-))