dev@glassfish.java.net

Re: URGENT and ACTION: changes to logger code will affect you.

From: Jan Luehe <Jan.Luehe_at_Sun.COM>
Date: Wed, 10 Sep 2008 16:53:07 -0700

Hi Carla,

On 09/10/08 12:05 PM, Carla Mott wrote:
> Hi all,
>
> I'm in the process of making changes to the logging code that supports
> the changes Jerome described in his previous email (subject Logger
> Changes). Note that the resource bundle filename is
> *LogStrings.properties* and not LocalStrings.properties.
>
> Once the logger changes are in you may be required to make additional
> changes to your module. Specifically you may need to move the
> LogStrings.properties file from its current location to the
> appropriate place. I did move the LogStrings.properites files that
> were causing the quicklook tests to fail but I didn't move all of
> them. It turns out that all the LogStrings.properties file are under
> common/common-util but in order for things to work correctly we had
> the choice of doing one of two things.
>
> 1. Leave the LogStrings.properties file where they were and update the
> osgi.bundle file to export them AND each pom.xml file to import the
> package where the resource properties files are. Temp solution.
>
> 2. Move the LogStrings.properties file to the module where they are
> used. This is the long term solution so we decided to go with this
> rather than update the pom.xml files and then move the files later.
>
>
> As I said I did move several of the files to the appropriate modules
> but there are others that need to be moved. I moved the following files:
>
> com/sun/logging/enterprise/system/tools/deployment/LogStrings.properties
> com/sun/logging/enterprise/system/core/security/LogStrings.properties
> com/sun/logging/enterprise/system/container/web/LogStrings.properties
> com/sun/logging/enterprise/resource/jta/LogStrings.properties

when restarting the domain, I'm getting the attached error, which is
getting logged in what seems to be an infinite loop.

I noticed the web-related LogStrings.properties resource file has been
moved from

common/common-util/src/main/java/com/sun/logging/enterprise/system/container/web

to

web/war-util/src/main/java/com/sun/logging/enterprise/system/container/web

According to the stack trace, the class that fails to initialize is
PECoyoteConnector.java, which resides in the web/web-glue module. I
don't think its classloader has access to the LogStrings.properties
resource from web/war-util, causing the MissingResourceException.

After moving the LogStrings.properties from web/war-util to
web/web-glue, I'm able to restart the domain.

This may not be the right solution, and I still have to get a better
understanding on how all this is supposed to work, but I thought it may
be good to share this anyways.

Thanks,

Jan



[#|2008-09-11T06:22:28.675+0800|SEVERE|GlassFish10.0|javax.enterprise.system.core|_ThreadID=16;_ThreadName=Thread-3;|processorTask.serviceError
java.lang.ExceptionInInitializerError
       at com.sun.enterprise.web.EmbeddedWebContainer.createConnector(EmbeddedWebContainer.java:282)
       at org.apache.catalina.startup.Embedded.createConnector(Embedded.java:464)
       at com.sun.enterprise.web.WebContainer.createHttpListener(WebContainer.java:817)
       at com.sun.enterprise.web.WebContainer.createHttpListener(WebContainer.java:770)
       at com.sun.enterprise.web.WebContainer.postConstruct(WebContainer.java:614)
       at com.sun.hk2.component.AbstractWombImpl.inject(AbstractWombImpl.java:150)
       at com.sun.hk2.component.ConstructorWomb.initialize(ConstructorWomb.java:86)
       at com.sun.hk2.component.AbstractWombImpl.get(AbstractWombImpl.java:75)
       at com.sun.hk2.component.SingletonInhabitant.get(SingletonInhabitant.java:58)
       at com.sun.hk2.component.LazyInhabitant.get(LazyInhabitant.java:107)
       at com.sun.hk2.component.AbstractInhabitantImpl.get(AbstractInhabitantImpl.java:60)
       at org.glassfish.internal.data.ContainerInfo.getContainer(ContainerInfo.java:75)
       at com.sun.enterprise.v3.services.impl.SnifferAdapter.service(SnifferAdapter.java:100)
       at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:175)
       at com.sun.grizzly.http.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:621)
       at com.sun.grizzly.http.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:552)
       at com.sun.grizzly.http.DefaultProcessorTask.process(DefaultProcessorTask.java:800)
       at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:152)
       at com.sun.enterprise.v3.services.impl.GlassfishProtocolChain.executeProtocolFilter(GlassfishProtocolChain.java:70)
       at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:103)
       at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:89)
       at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:67)
       at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:56)
       at com.sun.grizzly.util.WorkerThreadImpl.processTask(WorkerThreadImpl.java:309)
       at com.sun.grizzly.util.WorkerThreadImpl.run(WorkerThreadImpl.java:168)
Caused by: java.util.MissingResourceException: Can't find bundle for base name com.sun.logging.enterprise.system.container.web.LogStrings, locale en
       at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:836)
       at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:805)
       at java.util.ResourceBundle.getBundle(ResourceBundle.java:699)
       at com.sun.logging.LogDomains$1.getResourceBundle(LogDomains.java:260)
       at com.sun.enterprise.web.connector.coyote.PECoyoteConnector.<clinit>(PECoyoteConnector.java:88)
       ... 25 more
|#]