CC: scarab-dev for information
I had the painful pleasure this afternoon to install iPlanet to qualify our
turbine-based webapp. I ran a into a problem encountered a couple of times
judging by a 'iplanet' search in the archives of turbine-user and
scarab-dev.
The error surfacing in the container log is:
[25/Jul/2002:16:24:01] failure ( 2144): Internal error: exception thrown
from the servlet service function (uri=/partner/turbine):
org.apache.turbine.services.InstantiationException: ServiceBroker: unknown
service PoolService requested, Stack:
org.apache.turbine.services.InstantiationException: ServiceBroker: unknown
service PoolService requested
at
org.apache.turbine.services.BaseServiceBroker.getServiceInstance(BaseService
Broker.java:356)
at
org.apache.turbine.services.BaseServiceBroker.getService(BaseServiceBroker.j
ava:298)
at
org.apache.turbine.util.RunDataFactory.putRunData(RunDataFactory.java:231)
at org.apache.turbine.Turbine.doGet(Turbine.java:638)
[...]
This is due to ServletConfig.getRealPath("") returning null... thus it fails
loading the properties file during initialization of the primary services,
etc etc etc...
It's not clear by the servlet api if an empty path might be considered valid
or not. My interpretation is yes..but iPlanet works fine by using
getRealPath(".") as it simply has the precondition in getRealPath(String)
made of:
if (path == null || path.length() == 0) return null;
I think it might be better to change the empty path to a more valid ".". It
should extend the range of supported container in a snap. I don't think this
problem is limited to iPlanet only. (JRun ? and some version of Weblogic if
I remember well).
Maybe it will be better to get the canonical path in a helper method as I'm
not sure that all servlet containers do return the canonical one (at least
iPlanet does not)
Comments ? If there is a conscencus, I will post the patches for T2.2 and T3
asap.
Stephane
Note for iPlanet users:
No other logging is performed if the line below (on NT) is not added to
magnus.conf file
Init fn="nt-console-init" stdout=console stderr=console
In this case:
java.io.FileNotFoundException: null/WEB-INF/conf/TurbineResources.properties
(The system cannot find the path specified)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:64)
at
org.apache.velocity.runtime.configuration.Configuration.<init>(Configuration
.java:380)
[....]
(!) NOTICE: init
(!) NOTICE: ServiceBroker: LoggingService enabled.
(!) NOTICE: Turbine: init() failed:
org.apache.turbine.services.InitializationException: Can't load file
null/WEB-INF/conf/TurbineResources.properties
at
org.apache.turbine.services.resources.TurbineResourceService.init(TurbineRes
ourceService.java:167)
[...]
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>