środa, grudzień 23, 2009

GlassFish na produkcji

Po zainstalowaniu GlassFish działa na ustawieniach odpowiednich do dewelopmentu. Przed wypuszczeniem go na produkcję, gdzie oczekuje się od niego pewnej wydajności, trzeba pozmieniać parę rzeczy.









piątek, grudzień 18, 2009

Non-standard BizTalk/Oracle example





It really works...

wtorek, grudzień 08, 2009

No (distributed) transactions in BizTalk

Database insert to different data sources. Atomic doesn't work in Visual Studio, so change transaction type to Long Running.

Now it doesn't work in real life.

BizTalk and WCF-SQL Send Ports

Add -> New generated item -> Consume WCF Service, orchestration looks reasonably.


We deploy it and run and... it doesn't work. Orchestration is dehydrated and in Event Viewer we see 'action not understood'.

Fix is to change Action in WCF Send Port configuration from XML fragment to text

- or -

change port operation name to Action name.

sobota, grudzień 05, 2009

OpenESB revisited

We're going to create simple transactional process inserting data into tables of two XA data sources. Let's create design time JDBC connections.


The type of Database Service Engine operation is table. Here we can see generated artifacts.


Now, we have to remember that this configuration has been generated using design time JDBC connection. To use it with runtime we need to change JNDI location of database.


Presented BPEL process on the left side has got PartnerLink connected with generated by us abstract WSDL (its name should match process name). On the right side there are Partner Links from mssql1 and mssql2 bindings. The process is transactional.




To see input and output port of BPEL JBI module we have to rebuild Composite App.


We can add different bindings to our BPEL orchestration (SOAP, JMS, WCF, Quart Scheduler ...).




After JDBC data source setup and app deployment, we can check that our composite app works fine.


Having modified db schema for table tab1 in second data source we can se that new data is not inserted to tab1 in first data source - our BPEL process is transactional.

sobota, listopad 28, 2009

BizTalk 2009 BAM Portal

Nie udaje się go skonfigurować na 64-bitowym W2K8 R2: The error indicates that IIS is in 64 bit mode, while this application is a 32 bit application and thus not compatible.

Trzeba włączyć 32-bitowe aplikacje na 64-bitowym IIS-ie.

poniedziałek, listopad 23, 2009

Clound AntiVirus

W mediach internetowych trwa kłótnia między Pandą i G Datą.

Punkty z heurystyki: plik jest ukryty lub systemowy; plik jest w koszu; plik jest skompresowany UPX-em albo czymś podobnym; plik podejrzanie używa GetProcAddress32 i VirtualAlloc; plik ma funkcjonalność wysyłania poczty; plik dodaje się do autostartu itd.
Jeżeli suma punktów przekroczy entry-level to dane o pliku są zapisywane w chmurze: nazwa, scieżka, md5sum, punkty z heurystyki, [blob]. Jezeli rekordów w bazie jest wystarczająco dużo w jednostce czasu to przekraczamy low-level i możemy automatycznie okreslić plik jako podejrzany (1). Następnie plik idzie do standardowej analizy i ewentualnie trafia do definicji wirusów albo ulepszane są definicje heurystyczne (2). Żeby botnet nie triggerował niszczenia plików systemowych przez Cloud Antivirus-a w przypadku (1) producent antywirusa dysponuje bazą white-list (3). Tak mniej więcej działa G Data. Chmura zapewnia bezpieczeństwo w okresie czasu od (1) do (2) uwzględniając (3).

Antywirus w wydaniu Pandy jednak ma definicje (w folderze C:\ProgramData\Panda Security\Panda Cloud Antivirus\NPS), a wirusy "chmurowo" identyfikuje za pomocą sum kontrolnych (CRC32, SHA, SHA512, MD5) wysyłanych na serwer protokołem HTTP (dane wysyłane są w paczkach dla wielu plików w przypadku skanowania wielu obiektów). W odpowiedzi dostaje informacje o stanie pliku (czysty, zawirusowany, podejrzany - wymaga wysłania do analizy). Dodatkowo wykrycie wirusa z baz powoduje przesłanie informacji statystycznej do serwera Pandy.

Dostęp do chmury można zepsuć modyfikując plik %WINDIR%\system32\drivers\etc\hosts:

127.0.0.1 cache2.pandasecurity.com
127.0.0.1 iext.pandasecurity.com
127.0.0.1 cache1.pandasecurity.com
127.0.0.1 acs.pandasoftware.com

Podsumowując: Panda i G Data koncepcyjnie mają podobne produkty. Panda posiada definicje antywirusowe oraz silnik chmurowy. Heurystyka z definicji powoduje w razie potrzeby sprawdzenie pliku w chmurze - tak samo robi G Data AntiVirus. Dlaczego Panda jest darmowa? Firma pewnie chce przetestować rozwiązanie, które myśli udostępnić za pieniądze użytkownikom korporacyjnym. Silnik skanujący Pandy PSANHost.exe podczas pracy wcale nie jest taki lekki, a cały pakiet łatwo zepsuć. Panda zrobiona jest po części w C++ Builderze.

Kłócą się panowie, którzy chyba mają stanowiska marketingowców...

KDE 4.3.3 na Windows

Natywna wersja windowsowa powoli się stabilizuje. Sporo aplikacji działa bez problemów.



niedziela, listopad 22, 2009

DSEE 7.0 na NT 6.1

Po rozpakowaniu windowsowej wersji DSEE w katalogu var mamy plik dsee7.war, który należy zadeployować sobie na GlassFishu. Najpierw jednak inicjalizujemy Directory Server i podnosimy cacao.

Cacao używa samodzielnie podpisanego certyfikatu SSL, który nie przejdzie w DCC 7. Dlatego wyeskportujemy certyfikat i zaimportujemy go do keystore'a, którego używa GlassFish.