1
0

Correct spelling.

git-svn-id: https://svn.apache.org/repos/asf/jakarta/commons/proper/logging/trunk@398696 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Dennis Lundberg
2006-05-01 21:39:36 +00:00
parent cd2e8b9657
commit ce80ab132e
3 changed files with 15 additions and 15 deletions

View File

@@ -344,7 +344,7 @@ In addition to the logging methods, the following are provided for code guards:
</subsection> </subsection>
<subsection name="Serialization Issues"> <subsection name="Serialization Issues">
<p>Prior to release 1.0.4, none of the standard Log implementations were <p>Prior to release 1.0.4, none of the standard Log implementations were
Serializable. If you are using such a release and have a Serializable classe Serializable. If you are using such a release and have a Serializable class
with a member that is of type Log then it is necessary to declare with a member that is of type Log then it is necessary to declare
that member to be transient and to ensure that the value is restored on that member to be transient and to ensure that the value is restored on
deserialization. The recommended approach is to define a custom deserialization. The recommended approach is to define a custom

View File

@@ -173,12 +173,12 @@
This guide is aimed at describing the technologies that JCL developers and expert users This guide is aimed at describing the technologies that JCL developers and expert users
(and users who need to become experts) (and users who need to become experts)
should be familiar with. The aim is to give an understanding whilst being precise but brief. should be familiar with. The aim is to give an understanding whilst being precise but brief.
Details which are not relevent for JCL have been suppressed. Details which are not relevant for JCL have been suppressed.
References have been included. References have been included.
</p> </p>
<p> <p>
These topics are a little difficult and it's easy for even experience developers to make These topics are a little difficult and it's easy for even experienced developers to make
mistakea. We need you to help us get it right! Please submit corrections, comments, additional references mistakes. We need you to help us get it right! Please submit corrections, comments, additional references
and requests for clarification and requests for clarification
by either: by either:
</p> </p>
@@ -356,7 +356,7 @@
<a href='http://java.sun.com/docs/books/vmspec/'>VMSpec</a> <em>The Java Virtual Machine Specification, Second Edition</em> <a href='http://java.sun.com/docs/books/vmspec/'>VMSpec</a> <em>The Java Virtual Machine Specification, Second Edition</em>
</li> </li>
<li> <li>
<a href='http://java.sun.com/docs/books/jls/'>LangSpec</a> <em>The Java Language Specification Second Edition</em> <a href='http://java.sun.com/docs/books/jls/'>LangSpec</a> <em>The Java Language Specification, Second Edition</em>
</li> </li>
</ul> </ul>
</subsection> </subsection>
@@ -387,7 +387,7 @@
<p> <p>
<strong>Note:</strong> the term child-first (though commonly used) is misleading. <strong>Note:</strong> the term child-first (though commonly used) is misleading.
A better term (and one which may be encountered on the mailing list) is parent-last. A better term (and one which may be encountered on the mailing list) is parent-last.
This more accurately describes the actual process of classloader performed This more accurately describes the actual process of classloading performed
by such a classloader. by such a classloader.
</p> </p>
<p> <p>
@@ -448,14 +448,14 @@
<code>Thread.setContextClassLoader</code></a> emphasizes the setting of the <code>Thread.setContextClassLoader</code></a> emphasizes the setting of the
context classloader as an aspect of thread creation. However, in many context classloader as an aspect of thread creation. However, in many
applications the context classloader is not fixed at thread creation but applications the context classloader is not fixed at thread creation but
rather is changed throughout the life of thread as thread execution moves rather is changed throughout the life of a thread as thread execution moves
from one context to another. This usage of the context classloader is from one context to another. This usage of the context classloader is
particularly important in container applications. particularly important in container applications.
</p> </p>
<p> <p>
For example, in a hypothetical servlet container, a pool of threads For example, in a hypothetical servlet container, a pool of threads
is created to handle HTTP requests. When created these threads have their is created to handle HTTP requests. When created these threads have their
context classloader set to a classloader that loads container classes. context classloader set to a classloader that loads container classes.
After the thread is assigned to handle a request, container code parses After the thread is assigned to handle a request, container code parses
the request and then determines which of the deployed web applications the request and then determines which of the deployed web applications
should handle it. Only when the container is about to call code associated should handle it. Only when the container is about to call code associated

View File

@@ -37,8 +37,8 @@
<p> <p>
Diagnostics is a feature introduced in JCL 1.1 as an aid to debugging problems Diagnostics is a feature introduced in JCL 1.1 as an aid to debugging problems
with JCL configurations. When diagnostics are switched on, messages are logged with JCL configurations. When diagnostics are switched on, messages are logged
to a stream (specified by the user) by the two main class involved in discovery to a stream (specified by the user) by the two main classes involved in discovery
JCL (<code>LogFactory</code> and <code>LogFactoryImpl</code>). in JCL (<code>LogFactory</code> and <code>LogFactoryImpl</code>).
</p> </p>
<p> <p>
Diagnostics are intended to be used in conjunction with the source. The source Diagnostics are intended to be used in conjunction with the source. The source
@@ -74,7 +74,7 @@ These are of the form:
The <em>system identity hash code</em> is found by calling <code>System.identityHashCode()</code> The <em>system identity hash code</em> is found by calling <code>System.identityHashCode()</code>
which should uniquely identify a particular instance. The classname is usually the fully qualified which should uniquely identify a particular instance. The classname is usually the fully qualified
class name though in a few cases, <code>org.apache.commons.logging.impl.LogFactoryImpl</code> may be class name though in a few cases, <code>org.apache.commons.logging.impl.LogFactoryImpl</code> may be
shorten to <code>LogFactoryImpl</code> to increase ease of reading. For example: shortened to <code>LogFactoryImpl</code> to increase ease of reading. For example:
</p> </p>
<code><pre> <code><pre>
sun.misc.Launcher$AppClassLoader@20120943 sun.misc.Launcher$AppClassLoader@20120943
@@ -176,11 +176,11 @@ Before assigning a <code>Log</code> instance, <code>LogFactory</code> loads a
for each diagnostic message logged by this process. for each diagnostic message logged by this process.
</p> </p>
<p> <p>
The implementation used can vary per Thread context classloader (TCCL). If this the first time The implementation used can vary per Thread context classloader (TCCL). If this is the first time
that a Log has been requested for a particular TCCL a new instance will be created. that a Log has been requested for a particular TCCL a new instance will be created.
</p> </p>
<p> <p>
Information of particular interest is logged at this stage. Details of the TCCL are logging Information of particular interest is logged at this stage. Details of the TCCL are logged
allowing the <a href='#OIDs'>OID</a> later to be cross-referenced to the <code>toString</code> value allowing the <a href='#OIDs'>OID</a> later to be cross-referenced to the <code>toString</code> value
and the <a href='#ClassLoader%20Hierarchy%20Tree'>classloader tree</a>. For example, the and the <a href='#ClassLoader%20Hierarchy%20Tree'>classloader tree</a>. For example, the
following log snippet details the TCCL (lines split): following log snippet details the TCCL (lines split):
@@ -282,7 +282,7 @@ of other containers using a custom implementation.
the two <code>LogFactory</code> Class instances are not equal and so the cast must fail. the two <code>LogFactory</code> Class instances are not equal and so the cast must fail.
</p> </p>
<p> <p>
The policy adopted by JCL in this situation is to re-throw this exception. Addition information The policy adopted by JCL in this situation is to re-throw this exception. Additional information
is included in the message to help diagnosis. The reasoning behind this choice is that a is included in the message to help diagnosis. The reasoning behind this choice is that a
particular <code>LogFactory</code> implementation has been actively specified and this particular <code>LogFactory</code> implementation has been actively specified and this
choice should not be ignored. This policy has unfortunate consequences when running in choice should not be ignored. This policy has unfortunate consequences when running in
@@ -316,7 +316,7 @@ implementation.
the most modern release the most modern release
</li> </li>
<li> <li>
Replace the commons-logging jar in the application with the commons-logging-adapter jar. Replace the commons-logging jar in the application with the commons-logging-adapters jar.
This will ensure that application classloader will delegate to it's parent when loading This will ensure that application classloader will delegate to it's parent when loading
<code>LogFactory</code>. <code>LogFactory</code>.
</li> </li>