dev@glassfish.java.net

Re: lib/addons - PHP configuration

From: Arun Gupta <Arun.Gupta_at_Sun.COM>
Date: Thu, 23 Aug 2007 09:46:35 -0700

> Could you share your server.log snippet with me that shows this error? I
> shall investigate and let you know.

[#|2007-08-23T09:43:48.597-0700|INFO|sun-appserver9.1|javax.enterprise.system.co
ntainer.web|_ThreadID=14;_ThreadName=httpSSLWorkerThread-8080-0;|PWC1412:
WebMod
ule[/WebApplication16] ServletContext.log():PWC1409: Marking servlet
Quercus Ser
vlet as unavailable|#]

[#|2007-08-23T09:43:48.598-0700|SEVERE|sun-appserver9.1|javax.enterprise.system.
container.web|_ThreadID=14;_ThreadName=httpSSLWorkerThread-8080-0;_RequestID=493
382e2-6a24-4df5-a6de-75269e80a5f6;|WebModule[/WebApplication16]Error
loading Web
appClassLoader
   delegate: true
   repositories:
     /WEB-INF/classes/
----------> Parent Classloader:
EJBClassLoader :
urlSet = []
doneCalled = false
  Parent -> java.net.URLClassLoader_at_9fe84e

  com.caucho.quercus.servlet.QuercusServlet
java.lang.ClassNotFoundException: com.caucho.quercus.servlet.QuercusServlet
         at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoa
der.java:1498)
         at
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.
java:1109)
         at
org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.jav
a:832)
         at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:197)
         at
org.apache.catalina.core.StandardContextValve.invokeInternal(Standard
ContextValve.java:271)
         at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:202)
         at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.j
ava:632)
         at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.j
ava:577)
         at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
         at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:206)
         at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.j
ava:632)
         at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.j
ava:577)
         at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:571)
         at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080
)
         at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:150)
         at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.j
ava:632)
         at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.j
ava:577)
         at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:571)
         at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080
)
         at
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:26
8)
         at
com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeA
dapter(DefaultProcessorTask.java:637)
         at
com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProce
ss(DefaultProcessorTask.java:568)
         at
com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process
(DefaultProcessorTask.java:813)
         at
com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProce
ssorTask(DefaultReadTask.java:339)
         at
com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(Defau
ltReadTask.java:261)
         at
com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(Defau
ltReadTask.java:212)
         at
com.sun.enterprise.web.portunif.PortUnificationPipeline$PUTask.doTask
(PortUnificationPipeline.java:361)
         at
com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:2
65)
         at
com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLW
orkerThread.java:106)
|#]

[#|2007-08-23T09:43:48.601-0700|SEVERE|sun-appserver9.1|javax.enterprise.system.
container.web|_ThreadID=14;_ThreadName=httpSSLWorkerThread-8080-0;_RequestID=493
382e2-6a24-4df5-a6de-75269e80a5f6;|StandardWrapperValve[Quercus
Servlet]: PWC138
2: Allocate exception for servlet Quercus Servlet
java.lang.ClassNotFoundException: com.caucho.quercus.servlet.QuercusServlet
         at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoa
der.java:1498)
         at
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.
java:1109)
         at
org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.jav
a:832)
         at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:197)
         at
org.apache.catalina.core.StandardContextValve.invokeInternal(Standard
ContextValve.java:271)
         at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:202)
         at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.j
ava:632)
         at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.j
ava:577)
         at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
         at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:206)
         at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.j
ava:632)
         at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.j
ava:577)
         at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:571)
         at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080
)
         at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:150)
         at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.j
ava:632)
         at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.j
ava:577)
         at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:571)
         at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080
)
         at
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:26
8)
         at
com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeA
dapter(DefaultProcessorTask.java:637)
         at
com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProce
ss(DefaultProcessorTask.java:568)
         at
com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process
(DefaultProcessorTask.java:813)
         at
com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProce
ssorTask(DefaultReadTask.java:339)
         at
com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(Defau
ltReadTask.java:261)
         at
com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(Defau
ltReadTask.java:212)
         at
com.sun.enterprise.web.portunif.PortUnificationPipeline$PUTask.doTask
(PortUnificationPipeline.java:361)
         at
com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:2
65)
         at
com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLW
orkerThread.java:106)
|#]

If I copy files to domains/domain1/lib or lib then the exact same
index.php is visible on the browser.

-Arun
>
> Thanks
> --Siva.
>
>>
>> Where as copying to the lib works.
>>
>> -Arun
>>
>>>
>>> >>> What is the recommended directory to copy any JAR files
>>> accessible to
>>> >>> *all* the deployed applications ?
>>>
>>> I hope the response in the FAQ above helps. In short, for a JAR to be
>>> available to all the apps in the domain, place in domains/domain1/lib
>>> or use classpath-suffix. The former is loaded by the common
>>> classloader and hence available to all applications whereas the
>>> latter is loaded at a classloader higher up in the hierarchy [the
>>> shared classloader] and hence available to everyone including AS
>>> implementation classes.
>>>
>>> > I see there is a lib\applibs directory.
>>>
>>> applibs are for application specific classloading. More details are
>>> available off
>>> https://glassfish.dev.java.net/nonav/javaee5/docs/DG/beade.html#gatej
>>>
>>>
>>> Thanks
>>> --Siva.
>>>
>>>
>>>
>>> Arun Gupta wrote:
>>>> Hi Alexis,
>>>>
>>>> Thanks for the pointer. I saw those instructions but would like to
>>>> setup PHP in a default GlassFish instance instead of creating a new
>>>> instance. If I just copy the jar files to domains\domain1\lib
>>>> directory (without creating a new instance), that works too!
>>>>
>>>> But I was wondering if that is the recommended practice ?
>>>>
>>>> I see there is a lib\applibs directory. Keeping Quercus JARs there
>>>> does not help though.
>>>>
>>>> -Arun
>>>>
>>>> Alexis Moussine-Pouchkine wrote:
>>>>> It's working fine for me with RC1 (build 58) and these
>>>>> instructions:
>>>>> http://blogs.sun.com/alexismp/entry/php_in_glassfish_first_steps
>>>>> which add PHP capabilities to a given (new) domain using the
>>>>> domain/lib
>>>>> directory. This is how I had it running back in March too.
>>>>> -Alexis
>>>>>
>>>>> Arun Gupta wrote:
>>>>>> Ludo posted instructions (Mar 2007) on how to configure Caucho PHP
>>>>>> in GlassFish at:
>>>>>>
>>>>>> http://weblogs.java.net/blog/ludo/archive/2007/03/100_java_quercu.html
>>>>>>
>>>>>>
>>>>>> These instructions require to copy the JAR files in lib/addons
>>>>>> directory. But when I follow the same then the CauchoServlet class
>>>>>> is not found. Instead, if I copy PHP jars in lib directory then it
>>>>>> works.
>>>>>>
>>>>>> Has the class loading behavior for lib/addons changed since Mar
>>>>>> 2007 ?
>>>>>>
>>>>>> What is the recommended directory to copy any JAR files accessible
>>>>>> to *all* the deployed applications ?
>>>>>>
>>>>>> -Arun
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>

-- 
Web Technologies and Standards
Sun Microsystems, Inc.
Blog: http://blogs.sun.com/arungupta