Jozef Izso
Category Archives: Osobné
Generovanie dokumentácie k Ajax web službe
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:
- Zadefinovanie interface-u,
- Implementácia interface-u,
- Spustenie služby pomocou ServiceHost a povolenie generovania metadát,
- 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.CreateInstance() 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.CreateInstance() 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
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Ú
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: xxxxxxxxxxxxxxxxxxx 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.
Zbohom, Jessica!

Burning Crusade – prvé dojmy
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
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
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
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. ![]()
Sme vzdelanejší ako Viedeň?
Na Markíze v Televíznych novinách sa objavila informácia, že
v Bratislave je viacej vzdelaných ľudí ako vo Viedni. Možno máme väčší
počet vysokoškolských študentov, ale kvalita štúdia je určite vo
Viedni alebo tiež spomínanej Prahe podstatne vyššia. Máme síce
kvantitu, ale nie kvalitu.
