2007/10/09

NetBeans Feature Request

Szóval elmondom mi az az egyetlen dolog, ami hiányzik nekem a NetBeans-ben:

Van ugye a Library Manager. Itt létrehozhatok egy új nevet, és adhatok hozzá 3 dolgot: classpath-t, javadoc helyet, és source-ot. Aztán ha ezt a nevet hozzáadom a project-hez a libraryk közé, akkor a fordítás szépen használja a classpath-t, és az IDE meg használja a javadoc és source helyekről beindexelt információt.

Csakhogy, ha átmegyek egy másik helyre, a másik NetBeans-en ugyanígy létre kell hozni ugyanazzal a névvel a library-t, hogy működjön. Elvileg lehetne azt, hogy csak a JAR-filet adom hozzá (akár property fájlból, akár IDE-ből), de akkor a library meg is lesz a másik helyen (mellé rakom), de a javadoc és a source nem.

A NetBeans-ben pont azt szeretem, hogy ANT alapú és bármit meg lehet benne csinálni. De egy jó hordozható projecthez még ez az egy hiányzik, hogy project property fájlba tudjam definiálni a code-comlpete-hez használandó source és javadoc helyeket.

2007/10/03

Glassfish + PHP

Egyik előző bejegyzésemben azt állítottam, hogy hej-de-egyszerű lesz Glassfish-t ellátani globális php értelmezési lehetőséggel. Azt akarom ugyanis, hogy az összes virtual host-on, ha valaki a documentroot-ba másol egy php alkalmazást, az minden további nélkül működjön. Csakhogy a dolog mégse olyan egyszerű

A Resin-ből vidáman kinyerhető a Quercus, a Scripting api-ra is illeszkedő Javaban írt PHP motor, de ezt alapértelmezetten szeretném bekapcsolni. Ezt meg is csináltam: a default-web.xml definiáltam egy servlet-et (com.caucho.quercus.servlet.QuercusServlet) és meppeltem a *.php-re. A sima php ment is, de sajnos a mysq_connect-et már nem sikerült megugrani. A Quercus ugyanis valami megmagyarázhatatlan oknál fogva nem hajlandó sima adatbázis kapcsolatot kezdeményezni, hanem a servlet init paraméterei között meg kell adni egy jdni nevet, és onnantól kezdve a mysql_connect-nek bármilyen paramétert adhatunk meg, úgyis azok helyett inkább a jndi-t használja. Ez egyrészt kedves dolog, mert lehetne PHP-s alkalmazást futtatni connection pool helyett, másrészt elég szar, mert kötelező és egy globális php servlet lehetőségét teljesen ellehetetleníti. Nem lehet/és nem is akarnék az összes hostolt php alkalmazáshoz külön mysql DataSource regisztrációt.

2007/10/02

Deployment Toolkit

A Java SE 6 Update N Early Access már elérhető, aminek a része a Deplyoment Toolkit nevű kis játékszer is. Igazából egy .js fájl az egész, ami ad néhány függvényt arra, hogy ellenőrizzük a felinstallált JRE verziót és ez alapján kirajuk az appletet/web start linket, vagy elküldjök a usert java-t letölteni.

Nem néztem át persze a forrást, de az egész csak egy javascriptnek tűnik, amihez nem is kell az Early Access, elég ha befűzzük a html-be ezt a http://java.com/js/deployJava.js -et, és már mehet is.

Itt pl. megmondom neked a JRE verziódat.
<script type="text/javascript" src="http://java.com/js/deployJava.js">
<script>
function detectJRE() {
    var list = deployJava.getJREs();

    if (list.length == 0)
    {
        alert ('No Detectable JREs are Installed');
    }
    else
    {        
        alert (list[0]);        
    }
}
</script>
<a href="javascript:detectJRE()">Itt </a> pl. megmondom neked a JRE verziódat.
A példát innen másoltam ki, ahol további részletek is találhatóak.