[Bug 51966] Tomcat does not support ssha hashed passwords in all contexts

2013-02-10 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=51966

--- Comment #12 from Oliver Kohll  ---
David, I see your other report

https://issues.apache.org/bugzilla/show_bug.cgi?id=53785

is currently marked RESOLVED WONTFIX. I'm not a security expert but I don't
think there's much argument that salting or a pluggable architecture would be
an improvement on the current implementation of unsalted hashing.

I for one appreciate the work others have done to date, above. It's unfortunate
I don't have enough knowledge to contribute helpful patches myself but I'm sure
this is going to be something that sees an increasing amount of interest.

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 54544] New: Loop vars are not reset for fortoken with deferred expression

2013-02-10 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=54544

Bug ID: 54544
   Summary: Loop vars are not reset for fortoken with deferred
expression
   Product: Taglibs
   Version: 1.2.0
  Hardware: All
OS: All
Status: NEW
  Severity: normal
  Priority: P2
 Component: Standard Taglib
  Assignee: dev@tomcat.apache.org
  Reporter: jboy...@apache.org
Classification: Unclassified

When using  with a deferred expression, the expression and index are
not reset between invocations of the tag.

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1444585 - in /tomcat/taglibs/standard/trunk: impl/src/main/java/org/apache/taglibs/standard/tag/common/core/ForTokensSupport.java spec/src/main/java/javax/servlet/jsp/jstl/core/LoopTagSup

2013-02-10 Thread jboynes
Author: jboynes
Date: Sun Feb 10 19:10:57 2013
New Revision: 1444585

URL: http://svn.apache.org/r1444585
Log:
fix for #54544 where loop variables are not reset when the tag is recycled

Modified:

tomcat/taglibs/standard/trunk/impl/src/main/java/org/apache/taglibs/standard/tag/common/core/ForTokensSupport.java

tomcat/taglibs/standard/trunk/spec/src/main/java/javax/servlet/jsp/jstl/core/LoopTagSupport.java

Modified: 
tomcat/taglibs/standard/trunk/impl/src/main/java/org/apache/taglibs/standard/tag/common/core/ForTokensSupport.java
URL: 
http://svn.apache.org/viewvc/tomcat/taglibs/standard/trunk/impl/src/main/java/org/apache/taglibs/standard/tag/common/core/ForTokensSupport.java?rev=1444585&r1=1444584&r2=1444585&view=diff
==
--- 
tomcat/taglibs/standard/trunk/impl/src/main/java/org/apache/taglibs/standard/tag/common/core/ForTokensSupport.java
 (original)
+++ 
tomcat/taglibs/standard/trunk/impl/src/main/java/org/apache/taglibs/standard/tag/common/core/ForTokensSupport.java
 Sun Feb 10 19:10:57 2013
@@ -19,7 +19,6 @@ package org.apache.taglibs.standard.tag.
 
 import java.util.StringTokenizer;
 
-import javax.el.ELContext;
 import javax.el.ValueExpression;
 import javax.servlet.jsp.JspTagException;
 import javax.servlet.jsp.jstl.core.IteratedExpression;
@@ -57,7 +56,7 @@ public abstract class ForTokensSupport e
 protected Object items;   // 'items' attribute
 protected String delims;  // 'delims' attribute
 protected StringTokenizer st; // digested tokenizer
-protected int currentIndex = 0;
+protected int currentIndex;
 private IteratedExpression itemsValueIteratedExpression;
 
 
@@ -73,8 +72,10 @@ public abstract class ForTokensSupport e
 protected void prepare() throws JspTagException {
 if (items instanceof ValueExpression) {
 deferredExpression = (ValueExpression) items;
-ELContext myELContext = pageContext.getELContext();
-Object originalValue = deferredExpression.getValue(myELContext);
+itemsValueIteratedExpression = new 
IteratedExpression(deferredExpression, getDelims());
+currentIndex = 0;
+
+Object originalValue = 
deferredExpression.getValue(pageContext.getELContext());
 if (originalValue instanceof String) {
 st = new StringTokenizer((String) originalValue, delims);
 } else {
@@ -94,12 +95,7 @@ public abstract class ForTokensSupport e
 protected Object next() throws JspTagException {
 if (deferredExpression != null) {
 st.nextElement();
-if (itemsValueIteratedExpression == null) {
-itemsValueIteratedExpression = new 
IteratedExpression(deferredExpression, getDelims());
-}
-ValueExpression nextValue = new 
IteratedValueExpression(itemsValueIteratedExpression, currentIndex);
-currentIndex++;
-return nextValue;
+return new IteratedValueExpression(itemsValueIteratedExpression, 
currentIndex++);
 } else {
 return st.nextElement();
 }

Modified: 
tomcat/taglibs/standard/trunk/spec/src/main/java/javax/servlet/jsp/jstl/core/LoopTagSupport.java
URL: 
http://svn.apache.org/viewvc/tomcat/taglibs/standard/trunk/spec/src/main/java/javax/servlet/jsp/jstl/core/LoopTagSupport.java?rev=1444585&r1=1444584&r2=1444585&view=diff
==
--- 
tomcat/taglibs/standard/trunk/spec/src/main/java/javax/servlet/jsp/jstl/core/LoopTagSupport.java
 (original)
+++ 
tomcat/taglibs/standard/trunk/spec/src/main/java/javax/servlet/jsp/jstl/core/LoopTagSupport.java
 Sun Feb 10 19:10:57 2013
@@ -115,7 +115,7 @@ public abstract class LoopTagSupport
  */
 protected String itemId, statusId;
 
-protected ValueExpression deferredExpression = null;
+protected ValueExpression deferredExpression;
 
 //*
 // 'Private' state (implementation details)
@@ -509,6 +509,7 @@ public abstract class LoopTagSupport
 beginSpecified = false; // not specified until it's specified :-)
 endSpecified = false;   // (as above)
 stepSpecified = false;  // (as above)
+deferredExpression = null;
 
 // defaults for interface with page author
 begin = 0;  // when not specified, 'begin' is 0 by spec.



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 54544] Loop vars are not reset for fortoken with deferred expression

2013-02-10 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=54544

Jeremy Boynes  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #1 from Jeremy Boynes  ---
Fixed in r1444585

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: Time for Taglibs to be sent to the archive?

2013-02-10 Thread Jeremy Boynes
On Jan 29, 2013, at 11:56 PM, Jeremy Boynes wrote:
...
> 
> My interpretation was that a product must pass the TCK in all its 
> configurations. In other words, you can't claim compatibility on Java7 unless 
> you've tested on Java7. If we test on Java7 and pass, we can claim we're a 
> compatible implementation in that mode; if we don't test on Java5 then we 
> can't claim compatibility on Java5 but that does not stop us being compatible 
> on Java7. I read it as being sufficient if we document what we require as a 
> resource.
> 
> @Henri, I ran all tests on Java6 and have not tried SQL on Java7. I'll pull 
> the newer version and retest.

I pulled the newer TCK and the current trunk revision passes all tests.

Although the newer version says it was updated for Java7, the test harness does 
not compile due to JDBC issues. There are a couple of utility classes that were 
fixed to work with 1.6 but which do not support the methods added in 1.7. 
Rather than patch them, I built the tests using 1.6 and ran them with 1.6 and 
1.7.

I tested the following configurations:
ServerHarness
Tomcat 6.0.35/Java 1.6Java 1.6
Tomcat 6.0.35/Java 1.7Java 1.6
Tomcat 7.0.35/Java 1.7Java 1.6
Tomcat 7.0.35/Java 1.7Java 1.7
All tests pass in all configurations.

OS: Mac OS X 10.7.5
DB: derby-10.6.1.0
Apache JSTL jars:
  taglibs-standard-spec-1.2-SNAPSHOT.jar
  taglibs-standard-impl-1.2-SNAPSHOT.jar
  taglibs-standard-jstlel-1.2-SNAPSHOT.jar
  xalan-2.7.1.jar
  serializer-2.7.1.jar

The signature tests are no longer built and run from the top level. They pass 
if run on Java 1.6 but there is no signature file for running them on 1.7.
-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 54536] ErrorReportValve doesn't respect HttpServletResponse.sendError(int sc, String msg)

2013-02-10 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=54536

Michael Osipov <1983-01...@gmx.net> changed:

   What|Removed |Added

 CC||1983-01...@gmx.net

--- Comment #4 from Michael Osipov <1983-01...@gmx.net> ---
Why not 408?

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1444609 - in /tomcat/trunk/java/org/apache/catalina/storeconfig: StandardContextSF.java StandardServerSF.java StoreConfigLifecycleListener.java StoreLoader.java

2013-02-10 Thread markt
Author: markt
Date: Sun Feb 10 20:43:21 2013
New Revision: 1444609

URL: http://svn.apache.org/r1444609
Log:
Fix various Eclipse warnings

Modified:
tomcat/trunk/java/org/apache/catalina/storeconfig/StandardContextSF.java
tomcat/trunk/java/org/apache/catalina/storeconfig/StandardServerSF.java

tomcat/trunk/java/org/apache/catalina/storeconfig/StoreConfigLifecycleListener.java
tomcat/trunk/java/org/apache/catalina/storeconfig/StoreLoader.java

Modified: 
tomcat/trunk/java/org/apache/catalina/storeconfig/StandardContextSF.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/storeconfig/StandardContextSF.java?rev=1444609&r1=1444608&r2=1444609&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/storeconfig/StandardContextSF.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/storeconfig/StandardContextSF.java 
Sun Feb 10 20:43:21 2013
@@ -129,12 +129,12 @@ public class StandardContextSF extends S
 try {
 writer.flush();
 } catch (Exception e) {
-;
+// Ignore
 }
 try {
 writer.close();
 } catch (Throwable t) {
-;
+// Ignore
 }
 }
 }

Modified: 
tomcat/trunk/java/org/apache/catalina/storeconfig/StandardServerSF.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/storeconfig/StandardServerSF.java?rev=1444609&r1=1444608&r2=1444609&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/storeconfig/StandardServerSF.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/storeconfig/StandardServerSF.java Sun 
Feb 10 20:43:21 2013
@@ -68,25 +68,23 @@ public class StandardServerSF extends St
 if (aObject instanceof StandardServer) {
 StandardServer server = (StandardServer) aObject;
 // Store nested  elements
-if (server instanceof Lifecycle) {
-LifecycleListener listeners[] = ((Lifecycle) server)
-.findLifecycleListeners();
-storeElementArray(aWriter, indent, listeners);
-/*LifecycleListener listener = null;
-for (int i = 0; listener == null && i < listeners.length; i++)
-if (listeners[i] instanceof ServerLifecycleListener)
-listener = listeners[i];
-if (listener != null) {
-StoreDescription elementDesc = getRegistry()
-.findDescription(
-StandardServer.class.getName()
-+ ".[ServerLifecycleListener]");
-if (elementDesc != null) {
-elementDesc.getStoreFactory().store(aWriter, indent,
-listener);
-}
-}*/
-}
+LifecycleListener listeners[] = ((Lifecycle) server)
+.findLifecycleListeners();
+storeElementArray(aWriter, indent, listeners);
+/*LifecycleListener listener = null;
+for (int i = 0; listener == null && i < listeners.length; i++)
+if (listeners[i] instanceof ServerLifecycleListener)
+listener = listeners[i];
+if (listener != null) {
+StoreDescription elementDesc = getRegistry()
+.findDescription(
+StandardServer.class.getName()
++ ".[ServerLifecycleListener]");
+if (elementDesc != null) {
+elementDesc.getStoreFactory().store(aWriter, indent,
+listener);
+}
+}*/
 // Store nested  element
 NamingResources globalNamingResources = server
 .getGlobalNamingResources();

Modified: 
tomcat/trunk/java/org/apache/catalina/storeconfig/StoreConfigLifecycleListener.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/storeconfig/StoreConfigLifecycleListener.java?rev=1444609&r1=1444608&r2=1444609&view=diff
==
--- 
tomcat/trunk/java/org/apache/catalina/storeconfig/StoreConfigLifecycleListener.java
 (original)
+++ 
tomcat/trunk/java/org/apache/catalina/storeconfig/StoreConfigLifecycleListener.java
 Sun Feb 10 20:43:21 2013
@@ -16,8 +16,6 @@
  */
 package org.apache.catalina.storeconfig;
 
-import java.io.InputStream;
-
 import javax.management.DynamicMBean;
 import javax.management.MBeanServer;
 import javax.management.Object

svn commit: r1444611 - /tomcat/trunk/java/org/apache/catalina/storeconfig/WebResourceRootSF.java

2013-02-10 Thread markt
Author: markt
Date: Sun Feb 10 20:45:47 2013
New Revision: 1444611

URL: http://svn.apache.org/r1444611
Log:
Fix copy and paste error highlighted by Eclipse NPE warnings

Modified:
tomcat/trunk/java/org/apache/catalina/storeconfig/WebResourceRootSF.java

Modified: 
tomcat/trunk/java/org/apache/catalina/storeconfig/WebResourceRootSF.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/storeconfig/WebResourceRootSF.java?rev=1444611&r1=1444610&r2=1444611&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/storeconfig/WebResourceRootSF.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/storeconfig/WebResourceRootSF.java 
Sun Feb 10 20:45:47 2013
@@ -65,7 +65,7 @@ public class WebResourceRootSF extends S
 + ".[JarResources]");
 if (jarResourcesElementDesc != null) {
 for (WebResourceSet jarResources : jarResourcesArray) {
-preResourcesElementDesc.getStoreFactory().store(aWriter, 
indent,
+jarResourcesElementDesc.getStoreFactory().store(aWriter, 
indent,
 jarResources);
 }
 }
@@ -77,7 +77,7 @@ public class WebResourceRootSF extends S
 + ".[PostResources]");
 if (postResourcesElementDesc != null) {
 for (WebResourceSet postResources : postResourcesArray) {
-preResourcesElementDesc.getStoreFactory().store(aWriter, 
indent,
+postResourcesElementDesc.getStoreFactory().store(aWriter, 
indent,
 postResources);
 }
 }



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1444614 - /tomcat/trunk/java/org/apache/catalina/storeconfig/

2013-02-10 Thread markt
Author: markt
Date: Sun Feb 10 21:01:16 2013
New Revision: 1444614

URL: http://svn.apache.org/r1444614
Log:
s/childs/children/

Modified:
tomcat/trunk/java/org/apache/catalina/storeconfig/CatalinaClusterSF.java
tomcat/trunk/java/org/apache/catalina/storeconfig/ChannelSF.java
tomcat/trunk/java/org/apache/catalina/storeconfig/ConnectorSF.java
tomcat/trunk/java/org/apache/catalina/storeconfig/InterceptorSF.java
tomcat/trunk/java/org/apache/catalina/storeconfig/LoaderSF.java
tomcat/trunk/java/org/apache/catalina/storeconfig/ManagerSF.java
tomcat/trunk/java/org/apache/catalina/storeconfig/NamingResourcesSF.java
tomcat/trunk/java/org/apache/catalina/storeconfig/PersistentManagerSF.java
tomcat/trunk/java/org/apache/catalina/storeconfig/RealmSF.java
tomcat/trunk/java/org/apache/catalina/storeconfig/SenderSF.java
tomcat/trunk/java/org/apache/catalina/storeconfig/StandardContextSF.java
tomcat/trunk/java/org/apache/catalina/storeconfig/StandardEngineSF.java
tomcat/trunk/java/org/apache/catalina/storeconfig/StandardHostSF.java
tomcat/trunk/java/org/apache/catalina/storeconfig/StandardServerSF.java
tomcat/trunk/java/org/apache/catalina/storeconfig/StandardServiceSF.java
tomcat/trunk/java/org/apache/catalina/storeconfig/StoreDescription.java
tomcat/trunk/java/org/apache/catalina/storeconfig/StoreFactoryBase.java
tomcat/trunk/java/org/apache/catalina/storeconfig/StoreLoader.java
tomcat/trunk/java/org/apache/catalina/storeconfig/WebResourceRootSF.java
tomcat/trunk/java/org/apache/catalina/storeconfig/server-registry.xml

Modified: 
tomcat/trunk/java/org/apache/catalina/storeconfig/CatalinaClusterSF.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/storeconfig/CatalinaClusterSF.java?rev=1444614&r1=1444613&r2=1444614&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/storeconfig/CatalinaClusterSF.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/storeconfig/CatalinaClusterSF.java 
Sun Feb 10 21:01:16 2013
@@ -35,7 +35,7 @@ import org.apache.catalina.tribes.Channe
 public class CatalinaClusterSF extends StoreFactoryBase {
 
 /**
- * Store the specified Cluster childs.
+ * Store the specified Cluster children.
  *
  * @param aWriter
  *PrintWriter to which we are storing
@@ -48,7 +48,7 @@ public class CatalinaClusterSF extends S
  *if an exception occurs while storing
  */
 @Override
-public void storeChilds(PrintWriter aWriter, int indent, Object aCluster,
+public void storeChildren(PrintWriter aWriter, int indent, Object aCluster,
 StoreDescription parentDesc) throws Exception {
 if (aCluster instanceof CatalinaCluster) {
 CatalinaCluster cluster = (CatalinaCluster) aCluster;

Modified: tomcat/trunk/java/org/apache/catalina/storeconfig/ChannelSF.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/storeconfig/ChannelSF.java?rev=1444614&r1=1444613&r2=1444614&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/storeconfig/ChannelSF.java (original)
+++ tomcat/trunk/java/org/apache/catalina/storeconfig/ChannelSF.java Sun Feb 10 
21:01:16 2013
@@ -33,7 +33,7 @@ import org.apache.catalina.tribes.Member
 public class ChannelSF extends StoreFactoryBase {
 
 /**
- * Store the specified Channel childs.
+ * Store the specified Channel children.
  *
  * @param aWriter
  *PrintWriter to which we are storing
@@ -46,7 +46,7 @@ public class ChannelSF extends StoreFact
  *if an exception occurs while storing
  */
 @Override
-public void storeChilds(PrintWriter aWriter, int indent, Object aChannel,
+public void storeChildren(PrintWriter aWriter, int indent, Object aChannel,
 StoreDescription parentDesc) throws Exception {
 if (aChannel instanceof Channel) {
 Channel channel = (Channel) aChannel;

Modified: tomcat/trunk/java/org/apache/catalina/storeconfig/ConnectorSF.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/storeconfig/ConnectorSF.java?rev=1444614&r1=1444613&r2=1444614&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/storeconfig/ConnectorSF.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/storeconfig/ConnectorSF.java Sun Feb 
10 21:01:16 2013
@@ -36,7 +36,7 @@ public class ConnectorSF extends StoreFa
  * @throws Exception
  */
 @Override
-public void storeChilds(PrintWriter aWriter, int indent, Object aConnector,
+public void storeChildren(PrintWriter aWriter, int indent, Object 
aConnector,
 StoreDescription parentDesc) throws Exception {
 
 if (aConnector instanceof Connect

svn commit: r1444615 - /tomcat/trunk/java/org/apache/catalina/storeconfig/StoreFactoryBase.java

2013-02-10 Thread markt
Author: markt
Date: Sun Feb 10 21:02:29 2013
New Revision: 1444615

URL: http://svn.apache.org/r1444615
Log:
Fix typo

Modified:
tomcat/trunk/java/org/apache/catalina/storeconfig/StoreFactoryBase.java

Modified: 
tomcat/trunk/java/org/apache/catalina/storeconfig/StoreFactoryBase.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/storeconfig/StoreFactoryBase.java?rev=1444615&r1=1444614&r2=1444615&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/storeconfig/StoreFactoryBase.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/storeconfig/StoreFactoryBase.java Sun 
Feb 10 21:02:29 2013
@@ -189,7 +189,7 @@ public class StoreFactoryBase implements
 try {
 storeElement(aWriter, indent, elements[i]);
 } catch (IOException ioe) {
-// ingore children report error them self!
+// ignore children report error them self!
 // see StandartContext.storeWithBackup()
 }
 }



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



EL 3.0, HttpSessionIdListener, HttpServletRequest#changeSessionId()

2013-02-10 Thread Williams, Nick
As some of you know, I've been experimenting with Tomcat trunk (8.0) and the 
latest specs. I understand, of course, that this is all far from complete. 
While playing around this weekend, I noticed three things:


-  Tomcat trunk still has EL 2.2 instead of the new EL 3.0

-  javax.servlet.http.HttpSessionIdListener (possibly others, this is 
just the one I noticed) is missing from servlet-api.jar

-  HttpServletRequest#changeSessionId() is not yet implemented

Is anyone on the list currently working on any of these three things, and if 
so, do you have any idea when some reasonably-stable iteration of them will be 
checked in to trunk?

Of course, I know it's entirely possible that simply nobody has even looked at 
them yet, and that's understandable this early in the game.

Nick


This e-mail may contain privileged or confidential information. If you are not 
the intended recipient: (1) you may not disclose, use, distribute, copy or rely 
upon this message or attachment(s); and (2) please notify the sender by reply 
e-mail, and then delete this message and its attachment(s). Underwriters 
Laboratories Inc. and its affiliates disclaim all liability for any errors, 
omissions, corruption or virus in this message or any attachments.


svn commit: r1444644 - /tomcat/taglibs/standard/trunk/impl/src/main/java/org/apache/taglibs/standard/tag/common/core/ForEachSupport.java

2013-02-10 Thread jboynes
Author: jboynes
Date: Mon Feb 11 01:10:57 2013
New Revision: 1444644

URL: http://svn.apache.org/r1444644
Log:
major refactor of ForEachSupport to reduce array allocation and use auto-boxing
also addresses memory issue for begin..end iteration for large values of end
simplify iteration of deferred expressions

Modified:

tomcat/taglibs/standard/trunk/impl/src/main/java/org/apache/taglibs/standard/tag/common/core/ForEachSupport.java

Modified: 
tomcat/taglibs/standard/trunk/impl/src/main/java/org/apache/taglibs/standard/tag/common/core/ForEachSupport.java
URL: 
http://svn.apache.org/viewvc/tomcat/taglibs/standard/trunk/impl/src/main/java/org/apache/taglibs/standard/tag/common/core/ForEachSupport.java?rev=1444644&r1=1444643&r2=1444644&view=diff
==
--- 
tomcat/taglibs/standard/trunk/impl/src/main/java/org/apache/taglibs/standard/tag/common/core/ForEachSupport.java
 (original)
+++ 
tomcat/taglibs/standard/trunk/impl/src/main/java/org/apache/taglibs/standard/tag/common/core/ForEachSupport.java
 Mon Feb 11 01:10:57 2013
@@ -17,22 +17,16 @@
 
 package org.apache.taglibs.standard.tag.common.core;
 
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Enumeration;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.StringTokenizer;
+import org.apache.taglibs.standard.resources.Resources;
 
-import javax.el.ELContext;
 import javax.el.ValueExpression;
 import javax.servlet.jsp.JspTagException;
 import javax.servlet.jsp.jstl.core.IndexedValueExpression;
 import javax.servlet.jsp.jstl.core.IteratedExpression;
 import javax.servlet.jsp.jstl.core.IteratedValueExpression;
 import javax.servlet.jsp.jstl.core.LoopTagSupport;
-
-import org.apache.taglibs.standard.resources.Resources;
+import java.lang.reflect.Array;
+import java.util.*;
 
 /**
  * Support for tag handlers for , the core iteration
@@ -50,217 +44,50 @@ import org.apache.taglibs.standard.resou
  * @see javax.servlet.jsp.jstl.core.LoopTagSupport
  */
 public abstract class ForEachSupport extends LoopTagSupport {
+protected Iterator items;  // our 'digested' items
+protected Object rawItems;// our 'raw' items
 
-//*
-// Implementation overview
-
-/*
- * This particular handler is essentially a large switching mechanism
- * to support the various types that the  tag handles.  The
- * class is organized around the private ForEachIterator interface,
- * which serves as the basis for relaying information to the iteration
- * implementation we inherit from LoopTagSupport.
- *
- * We expect to receive our 'items' from one of our subclasses
- * (presumably from the rtexprvalue or expression-evaluating libraries).
- * If 'items' is missing, we construct an Integer[] array representing
- * iteration indices, in line with the spec draft.  From doStartTag(),
- * we analyze and 'digest' the data we're passed.  Then, we simply
- * relay items as necessary to the iteration implementation that
- * we inherit from LoopTagSupport.
- */
-
-
-//*
-// Internal, supporting classes and interfaces
-
-/*
- * Acts as a focal point for converting the various types we support.
- * It would have been ideal to use Iterator here except for one problem:
- * Iterator.hasNext() and Iterator.next() can't throw the JspTagException
- * we want to throw.  So instead, we'll encapsulate the hasNext() and
- * next() methods we want to provide inside this local class.
- * (Other implementations are more than welcome to implement hasNext()
- * and next() explicitly, not in terms of a back-end supporting class.
- * For the forEach tag handler, however, this class acts as a convenient
- * organizational mechanism, for we support so many different classes.
- * This encapsulation makes it easier to localize implementations
- * in support of particular types -- e.g., changing the implementation
- * of primitive-array iteration to wrap primitives only on request,
- * instead of in advance, would involve changing only those methods that
- * handle primitive arrays.
- */
-
-protected static interface ForEachIterator {
-public boolean hasNext() throws JspTagException;
-
-public Object next() throws JspTagException;
-}
-
-/*
- * Simple implementation of ForEachIterator that adapts from
- * an Iterator.  This is appropriate for cases where hasNext() and
- * next() don't need to throw JspTagException.  Such cases are common.core.
- */
-
-protected class SimpleForEachIterator implements ForEachIterator {
-private Iterator i;
-
-public SimpleForEachIterator(Iterator i) {
-this.i = i;
-}
-
-pu

svn commit: r1444665 - /tomcat/trunk/java/org/apache/catalina/storeconfig/StandardServerSF.java

2013-02-10 Thread kkolinko
Author: kkolinko
Date: Mon Feb 11 06:49:59 2013
New Revision: 1444665

URL: http://svn.apache.org/r1444665
Log:
Correct a typo

Modified:
tomcat/trunk/java/org/apache/catalina/storeconfig/StandardServerSF.java

Modified: 
tomcat/trunk/java/org/apache/catalina/storeconfig/StandardServerSF.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/storeconfig/StandardServerSF.java?rev=1444665&r1=1444664&r2=1444665&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/storeconfig/StandardServerSF.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/storeconfig/StandardServerSF.java Mon 
Feb 11 06:49:59 2013
@@ -54,7 +54,7 @@ public class StandardServerSF extends St
 }
 
 /**
- * Store Children from this StandardServer descrition
+ * Store Children from this StandardServer description
  *
  * @param aWriter
  * @param indent



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org