Quercus isimli bir kütüphane sayesinde artık Java ile PHP'yi bir arada kullanmak artık çok kolay. Quercus ayrıca Resin'i de geliştiren Caucho tarafından GPL lisansıyla yayımlanan bir teknoloji.
Quercus aslında PHP'nin %100 Java ile tekrar yazılmış hali. Bu nedenle Quercus herhangi bir Java Application Server üzerinde rahatlıkla çalıştırılabiliyor. Quercus Resin Application Server ile birlikte geliyor ama diğer serverlar içinse kurulum bir .war dosyası ile mümkün. Kurulum için ayrıca yapmanız gereken şey config dosyasında ufak bir değişiklik.
Quercus, PHP'nin tüm özelliklerini içinde barındırmasının yanısıra PHP'de kullanılan PDF, PDO, MySQL ve JSON gibi bazı temel modül ve eklentileride içinde barındırmakta.
Quercus PHP'nin Java dilinde tekrar yazılmış hali olduğundan Java servisleri ile de birlikte çok iyi çalışabiliyor. Ufak birkaç ayarlamayla PHP içinden java servislerini çağırmanız mümkün.
İlk Deneme
Application Server olarak Resin kullandığım için Quercus zaten kurulu gelmekteydi.
Java ile geliştirdiğim Web Uygulamasında tek yapmam gereken /WEB-INF/web.xml dosyasına aşağıdaki gibi bir "servlet mapping" tanımlamam yeterli oldu.
<web-app>
<servlet-mapping>
<servlet-name>AjaxServlet</servlet-name>
<url-pattern>/AjaxServlet</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name> QuercusServlet </servlet-name>
<servlet-class>
com.caucho.quercus.servlet.QuercusServlet
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name> QuercusServlet </servlet-name>
<url-pattern> *.php </url-pattern>
</servlet-mapping>
</web-app>
Bundan sonra örnek bir hello.php dosyası yazdığımda, hello.php'nin normal bir jsp dosyası gibi yani javaya çevrilerek derlendiğini gördüm.
Ayrıntılı Bilgi İçin
http://quercus.caucho.com/
http://www.caucho.com/resin-3.0/quercus/