wtorek, listopada 10, 2009

Inter Oper

JNI - Java Native Interface

Wg. wiki - http://en.wikipedia.org/wiki/Java_Native_Interface - pozwala na komunikację między aplikacją w środowisku JVM (m.in. podpisanych appletów) ze środowiskiem uruchomieniowym danej platformy). Łącznikiem jest program w C++ lub rzadziej w C.

  1. Podobny bardzo jest http://en.wikipedia.org/wiki/Platform_Invocation_Services - P/Invoke w .NET.
  2. Podstawy JNI - http://www.codeproject.com/java/jnibasics1.asp - uruchomienie z Javy funkcji z DLL. Obiecuje autor cz 2 w której pokaże jak przekazywać parametry.
  3. Bardziej obiecujacy tutorial - http://jnative.free.fr/SPIP-v1-8-3/
  4. Pełny przykład - http://www.codetoad.com/java_simpleJNI.asp - z tego przykładu wygląda na to, że w Borland C++ dużo łatwiej się przygotowuje DLL.
  5. Najbardziej klasyczny i poprawny politycznie przykład pochodzący od samego SUN-a -http://java.sun.com/developer/onlineTraining/Programming/JDCBook/jniexamp.html

  6. A oto odpowiedź rywala SUN-a http://www-128.ibm.com/developerworks/edu/j-dw-javajni-i.html

  7. http://www.jguru.com/faq/JNI

  8. technologia JAWIN - demo -> http://jawinproject.sourceforge.net/jawin.html#gettingStarted_demos (wywołanie PPT, czyli sterowanie COM) oraz łącznik do .NET.  Besides the COM and Win32 interoperability, Jawin can also be used for in-process interoperability with the Microsoft .NET platform. This can be accomplished because the .NET development tools makes it possible to export .NET objects as COM-objects. If in-process interoperability is not strictly needed, the recommended (and buzzword compatible) way to communicate between .NET and Java services is probably to use webservices. There should be plenty of resources around the Internet and in books, that explains webservices. One starting resource could be WS-I - the Web Services Interoperability Organization.  The Userguide - Interoperability with .NET Classes document contains a walk through the simple prof-of-concept net-hello demo.

  9. Piękna sprawa - wołanie C# z Java - http://jawinproject.sourceforge.net/jawinuserguide_net.html

JNI - pozwala na b. elastyczną komunikację między JVM i natywną platformą ale wymaga zabiegów po obu stronach (w javie i w C), zawężeniem funkcjonalności i uproszczeniem jest COM wrapper JCOM naprzykład (tutaj przygotowujemy łącznik do obiektów COM tylko w środowisku JAVA).

Tak swoja drogą przydałby się program do kompilacji JAVA z linii poleceń i GUI ale nie RAD.

  1. Inne projekty – JAWIN - http://jawinproject.sourceforge.net/jawinuserguide_net.html (ciekawa lista odwołań
    1. The MSDN .NET Framework Developers Guide section about Advanced COM Interop.
    2. A couple of additional articles about .NET and COM that helped me when writing this part of the Jawin Userguide: An article from CSharpFriends.com Calling .NET From COM, another from C# Help Using C# Classes as COM Objects and one from the C# Corner .NET COM Interoperability - Part 2: Using .NET Components from COM.)
  2. Budujemy mosty (Sun JAVA<->Ms COM)
    1. Płatne
      1. http://www.jacozoom.com/en_home.shtml
      2. http://www.nevaobject.com/j2cdetails.asp?kw=java%20com%20bridge
    2. Ten jest bezpłatny - http://danadler.com/jacob/
    3. Bezpłatny - http://php-java-bridge.sourceforge.net/pjb/examples.php
    4. http://sourceforge.net/projects/jcom/
    5. http://sourceforge.net/projects/jacob-project/
    6. http://www.alphaworks.ibm.com/tech/dtjcb?open&S_TACT=104AHW61&S_CMP=GR&ca=dgr-jw26awdtjcb
    7. Płatna - http://j-integra.intrinsyc.com/

niedziela, listopada 08, 2009

Co każdy winien wiedzieć o Javie

Technologia:

  1. JPA - http://www.javaworld.com/javaworld/jw-01-2008/jw-01-jpa1.html
  2. EJB 3 - http://www.javaworld.com/javaworld/jw-04-2009/jw-04-lean-soa-with-javaee6.html
  3. REST - http://www.javaworld.com/javaworld/jw-10-2008/jw-10-rest-series-1.html
  4. Socket - http://www.javaworld.com/jw-12-1996/jw-12-sockets.html
  5. HTTPClient - http://www.innovation.ch/java/HTTPClient/
  6. BC - http://www.java2s.com/Open-Source/Java-Document/Security/Bouncy-Castle/org/bouncycastle/x509/X509Store.java.htm
  7. Java reference - http://www.informit.com/guides/guide.aspx?g=java&ns=16164:
    1. HTTP Common - http://www.informit.com/guides/content.aspx?g=java&seqNum=43
    2. JCE - http://www.informit.com/guides/content.aspx?g=java&seqNum=29

Gniazdka

Sprawa gniazdek w środowisku serwera proxy jest nierozwiązana w .NET. Inne firmy wspierają ten sposób:

  1. Metnatlis - http://www.mentalis.org/soft/class.qpx?id=9 (ma jeszcze dodatkowo biblioteki kryptograficzne + wsparcie dla SC)
  2. StarkSoft - http://www.starksoft.com/prod_proxy.html (ma jeszcze dodatkowo inne biblioteki np. do PGP)

Dinosaur ale jeszcze żyje

Mimo ogłoszenia formalnie smierci Informixa, rozwija się on nadal. Oto jak wyposażono go w możliwość tworzenia usług WS - http://www.ibm.com/developerworks/data/library/techarticle/dm-0902mottupalli/index.html?S_TACT=105AGX54&S_CMP=C1105, oraz pobierania -http://www.ibm.com/developerworks/data/library/techarticle/dm-0910i4glwebservices/index.html?S_TACT=105AGX54&S_CMP=C1105&ca=dnw-1042&ca=dth-i&open&cm_mmc=6272-_-n-_-vrm_newsletter-_-10731_138227&cmibm_em=dm:0:3545753.

SSL w zagrożeniu?

Opublikowano niedawno dane na temat możliwości obejścia zabezpieczeń SSL:

blog autora - http://extendedsubset.com/?p=8

ocena zagrożenia - http://news.zdnet.co.uk/security/0,1000000189,39860592,00.htm?tag=mncol;txt