You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by jc...@apache.org on 2007/11/01 00:23:32 UTC

svn commit: r590861 - in /wicket/trunk: jdk-1.4/wicket-extensions/.settings/ jdk-1.4/wicket-ioc/.settings/ jdk-1.4/wicket/.settings/ jdk-1.4/wicket/src/main/java/org/apache/wicket/ jdk-1.5/wicket-examples/.settings/

Author: jcompagner
Date: Wed Oct 31 16:23:31 2007
New Revision: 590861

URL: http://svn.apache.org/viewvc?rev=590861&view=rev
Log:
fix for Page.checkRendering and transparent resolvers, none visible markup containers. Its a simple extra check, dont throw the exceptions if a component isn't rendered and it has a sibling that is not visible and a transparent resolver.
WICKET-1095

Modified:
    wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.core.prefs
    wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.ui.prefs
    wicket/trunk/jdk-1.4/wicket-ioc/.settings/org.eclipse.jdt.core.prefs
    wicket/trunk/jdk-1.4/wicket/.settings/org.eclipse.jdt.core.prefs
    wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Page.java
    wicket/trunk/jdk-1.5/wicket-examples/.settings/org.eclipse.jdt.core.prefs

Modified: wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.core.prefs
URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.core.prefs?rev=590861&r1=590860&r2=590861&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.core.prefs (original)
+++ wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.core.prefs Wed Oct 31 16:23:31 2007
@@ -1,4 +1,4 @@
-#Sun Jul 01 09:58:45 PDT 2007
+#Thu Nov 01 00:20:08 CET 2007
 eclipse.preferences.version=1
 org.eclipse.jdt.core.builder.cleanOutputFolder=clean
 org.eclipse.jdt.core.builder.duplicateResourceTask=warning
@@ -74,15 +74,15 @@
 org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
 org.eclipse.jdt.core.formatter.alignment_for_assignment=0
 org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=20
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=48
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=16
 org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
 org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
 org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=64
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=64
 org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
@@ -125,7 +125,7 @@
 org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
 org.eclipse.jdt.core.formatter.comment.line_length=100
 org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation=1
 org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
 org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
 org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
@@ -321,5 +321,5 @@
 org.eclipse.jdt.core.formatter.tabulation.char=tab
 org.eclipse.jdt.core.formatter.tabulation.size=4
 org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_binary_operator=falseorg.eclipse.jdt.core.incompatibleJDKLevel=ignore
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=false
 org.eclipse.jdt.core.incompleteClasspath=error

Modified: wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.ui.prefs
URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.ui.prefs?rev=590861&r1=590860&r2=590861&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.ui.prefs (original)
+++ wicket/trunk/jdk-1.4/wicket-extensions/.settings/org.eclipse.jdt.ui.prefs Wed Oct 31 16:23:31 2007
@@ -1,4 +1,4 @@
-#Wed Aug 15 11:20:50 PDT 2007
+#Thu Nov 01 00:20:07 CET 2007
 comment_clear_blank_lines=false
 comment_format_comments=true
 comment_format_header=true
@@ -10,10 +10,10 @@
 comment_new_line_for_parameter=true
 comment_separate_root_tags=true
 eclipse.preferences.version=1
-formatter_profile=_Wicket
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_wicket
 formatter_settings_version=11
 internal.default.compliance=default
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
 org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="false" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\r\n * Gets ${bare_field_name}.\r\n * @return ${bare_field_name}\r\n */</template><template autoinsert\="false" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\r\n * Sets ${bare_field_name}.\r\n * @param ${param} ${bare_field_name}\r\n */</template><template autoinsert\="false" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\r\n * Construct.\r\n
  * ${tags}\r\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment"/><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\r\n * @author ${user}\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\r\n * \r\n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\r\n * ${tags}
 \r\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**\r\n * ${see_to_overridden}\r\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/*\r\n * Licensed to the Apache Software Foundation (ASF) under one or more\r\n * contributor license agreements.  See the NOTICE file distributed with\r\n * this work for additional information regarding copyright ownership.\r\n * The ASF licenses this file to You under the Apache License, Version 2.0\r\n * (the "License"); you may not use this file except in compliance with\r\n * the License.  You may obtain a copy of the License at\r\n *\r\n *      http\://www.apache.org/licenses/LICENSE-2.0\r\
 n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an "AS IS" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n */\r\n${filecomment}\r\n${package_declaration}\r\n\r\n${typecomment}\r\n${type_declaration}</template><template autoinsert\="false" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">throw new RuntimeException(${exception_var});</template><template autoinsert\="false" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">${body_statement}</template><template autoinsert\="false" context\="c
 onstructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\r\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" 
 description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\r\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\r\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\r\n</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\r\n * ${tags}\r\n * ${see_to_target}\r\n */</template></templates>
 sp_cleanup.add_default_serial_version_id=true
 sp_cleanup.add_generated_serial_version_id=false

Modified: wicket/trunk/jdk-1.4/wicket-ioc/.settings/org.eclipse.jdt.core.prefs
URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket-ioc/.settings/org.eclipse.jdt.core.prefs?rev=590861&r1=590860&r2=590861&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket-ioc/.settings/org.eclipse.jdt.core.prefs (original)
+++ wicket/trunk/jdk-1.4/wicket-ioc/.settings/org.eclipse.jdt.core.prefs Wed Oct 31 16:23:31 2007
@@ -1,4 +1,4 @@
-#Wed Apr 11 14:49:10 CEST 2007
+#Thu Nov 01 00:12:54 CET 2007
 eclipse.preferences.version=1
 org.eclipse.jdt.core.builder.cleanOutputFolder=clean
 org.eclipse.jdt.core.builder.duplicateResourceTask=warning
@@ -73,15 +73,15 @@
 org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
 org.eclipse.jdt.core.formatter.alignment_for_assignment=0
 org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=20
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=48
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=16
 org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
 org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
 org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=64
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=64
 org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
@@ -124,7 +124,7 @@
 org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
 org.eclipse.jdt.core.formatter.comment.line_length=100
 org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation=1
 org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
 org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
 org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true

Modified: wicket/trunk/jdk-1.4/wicket/.settings/org.eclipse.jdt.core.prefs
URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/.settings/org.eclipse.jdt.core.prefs?rev=590861&r1=590860&r2=590861&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket/.settings/org.eclipse.jdt.core.prefs (original)
+++ wicket/trunk/jdk-1.4/wicket/.settings/org.eclipse.jdt.core.prefs Wed Oct 31 16:23:31 2007
@@ -1,4 +1,4 @@
-#Tue Aug 21 13:32:03 CEST 2007
+#Thu Nov 01 00:12:54 CET 2007
 eclipse.preferences.version=1
 instance/org.eclipse.core.net/org.eclipse.core.net.hasMigrated=true
 org.eclipse.jdt.core.builder.cleanOutputFolder=clean
@@ -74,15 +74,15 @@
 org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
 org.eclipse.jdt.core.formatter.alignment_for_assignment=0
 org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=20
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=48
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=16
 org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
 org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
 org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=64
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=64
 org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
@@ -125,7 +125,7 @@
 org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
 org.eclipse.jdt.core.formatter.comment.line_length=100
 org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation=1
 org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
 org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
 org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true

Modified: wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Page.java
URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Page.java?rev=590861&r1=590860&r2=590861&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Page.java (original)
+++ wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Page.java Wed Oct 31 16:23:31 2007
@@ -22,6 +22,7 @@
 import java.io.ObjectStreamException;
 import java.util.ArrayList;
 import java.util.HashSet;
+import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
 
@@ -40,7 +41,6 @@
 import org.apache.wicket.util.lang.Classes;
 import org.apache.wicket.util.lang.Objects;
 import org.apache.wicket.util.string.StringValue;
-import org.apache.wicket.util.value.Count;
 import org.apache.wicket.version.IPageVersionManager;
 import org.apache.wicket.version.undo.Change;
 import org.slf4j.Logger;
@@ -146,7 +146,7 @@
 		 * 
 		 */
 		public Page deserializePage(int id, String name, Page page, ObjectInputStream stream)
-				throws IOException, ClassNotFoundException;
+			throws IOException, ClassNotFoundException;
 
 		/**
 		 * Called from the {@link Page#writeObject(java.io.ObjectOutputStream)} method.
@@ -337,7 +337,7 @@
 	// that forwards to IAuthorizationStrategy for RequestListenerInterface
 	// invocations.
 	public void afterCallComponent(final Component component,
-			final RequestListenerInterface listener)
+		final RequestListenerInterface listener)
 	{
 	}
 
@@ -358,7 +358,7 @@
 	// that forwards to IAuthorizationStrategy for RequestListenerInterface
 	// invocations.
 	public void beforeCallComponent(final Component component,
-			final RequestListenerInterface listener)
+		final RequestListenerInterface listener)
 	{
 	}
 
@@ -380,7 +380,7 @@
 			if (renderedComponents.add(component) == false)
 			{
 				throw new MarkupException("The component " + component +
-						" has the same wicket:id as another component already added at the same level");
+					" has the same wicket:id as another component already added at the same level");
 			}
 			if (log.isDebugEnabled())
 			{
@@ -585,7 +585,7 @@
 			else
 			{
 				log.info("No version manager available to retrieve requested versionNumber " +
-						versionNumber);
+					versionNumber);
 				return null;
 			}
 		}
@@ -614,7 +614,7 @@
 
 				// If we went all the way back to the original page
 				if (page != null && page.getCurrentVersionNumber() == 0 &&
-						page.getAjaxVersionNumber() == 0)
+					page.getAjaxVersionNumber() == 0)
 				{
 					// remove version info
 					page.versionManager = null;
@@ -655,7 +655,7 @@
 					levels++;
 				}
 				buffer.append(StringValue.repeat(levels, "	") + component.getPageRelativePath() +
-						":" + Classes.simpleName(component.getClass()));
+					":" + Classes.simpleName(component.getClass()));
 				return null;
 			}
 		});
@@ -751,7 +751,7 @@
 			if (getStatelessHint())
 			{
 				log.warn("Page '" + this + "' is not stateless because it is not bookmarkable, " +
-						"but the stateless hint is set to true!");
+					"but the stateless hint is set to true!");
 			}
 		}
 
@@ -783,7 +783,7 @@
 			if (!stateless.booleanValue() && getStatelessHint())
 			{
 				log.warn("Page '" + this + "' is not stateless because of '" + returnArray[0] +
-						"' but the stateless hint is set to true!");
+					"' but the stateless hint is set to true!");
 			}
 		}
 
@@ -812,13 +812,13 @@
 	 *            will remain unchanged.
 	 */
 	public final void removePersistedFormData(final Class formClass,
-			final boolean disablePersistence)
+		final boolean disablePersistence)
 	{
 		// Check that formClass is an instanceof Form
 		if (!Form.class.isAssignableFrom(formClass))
 		{
 			throw new WicketRuntimeException("Form class " + formClass.getName() +
-					" is not a subclass of Form");
+				" is not a subclass of Form");
 		}
 
 		// Visit all children which are an instance of formClass
@@ -965,8 +965,8 @@
 		if (value && !isBookmarkable())
 		{
 			throw new WicketRuntimeException(
-					"Can't set stateless hint to true on a page when the page is not bookmarkable, page: " +
-							this);
+				"Can't set stateless hint to true on a page when the page is not bookmarkable, page: " +
+					this);
 		}
 		setFlag(FLAG_STATELESS_HINT, value);
 	}
@@ -994,13 +994,13 @@
 		if (versionManager != null)
 		{
 			return "[Page class = " + getClass().getName() + ", id = " + getId() + ", version = " +
-					versionManager.getCurrentVersionNumber() + ", ajax = " +
-					versionManager.getAjaxVersionNumber() + "]";
+				versionManager.getCurrentVersionNumber() + ", ajax = " +
+				versionManager.getAjaxVersionNumber() + "]";
 		}
 		else
 		{
 			return "[Page class = " + getClass().getName() + ", id = " + getId() + ", version = " +
-					0 + "]";
+				0 + "]";
 		}
 	}
 
@@ -1018,8 +1018,7 @@
 		final IDebugSettings debugSettings = Application.get().getDebugSettings();
 		if (debugSettings.getComponentUseCheck() && !getResponse().isRedirect())
 		{
-			final Count unrenderedComponents = new Count();
-			final List unrenderedAutoComponents = new ArrayList();
+			final List unrenderedComponents = new ArrayList();
 			final StringBuffer buffer = new StringBuffer();
 			renderedContainer.visitChildren(new IVisitor()
 			{
@@ -1029,22 +1028,16 @@
 					if (renderedComponents == null || !renderedComponents.contains(component))
 					{
 						// If auto component ...
-						if (component.isAuto())
-						{
-							// Add to list of unrendered auto components to
-							// delete below
-							unrenderedAutoComponents.add(component);
-						}
-						else if (component.isVisibleInHierarchy())
+						if (!component.isAuto() && component.isVisibleInHierarchy())
 						{
 							// Increase number of unrendered components
-							unrenderedComponents.increment();
+							unrenderedComponents.add(component);
 
 							// Add to explanatory string to buffer
-							buffer.append(Integer.toString(unrenderedComponents.getCount()) + ". " +
-									component + "\n");
+							buffer.append(Integer.toString(unrenderedComponents.size()) + ". " +
+								component + "\n");
 							String metadata = (String)component
-									.getMetaData(Component.CONSTRUCTED_AT_KEY);
+								.getMetaData(Component.CONSTRUCTED_AT_KEY);
 							if (metadata != null)
 							{
 								buffer.append(metadata);
@@ -1067,24 +1060,44 @@
 				}
 			});
 
-			// Remove any unrendered auto components since versioning couldn't
-			// do it. We can't remove the component in the above visitChildren
-			// callback because we're traversing the list at that time.
-			for (int i = 0; i < unrenderedAutoComponents.size(); i++)
-			{
-				((Component)unrenderedAutoComponents.get(i)).remove();
-			}
-
 			// Throw exception if any errors were found
-			if (unrenderedComponents.getCount() > 0)
+			if (unrenderedComponents.size() > 0)
 			{
 				// Get rid of set
 				renderedComponents = null;
 
-				// Throw exception
-				throw new WicketRuntimeException(
+				Iterator iterator = unrenderedComponents.iterator();
+
+				while (iterator.hasNext())
+				{
+					Component component = (Component)iterator.next();
+					// Now first test if the component has a sibling that is a transparent resolver.
+
+					Iterator iterator2 = component.getParent().iterator();
+					while (iterator2.hasNext())
+					{
+						Component sibling = (Component)iterator2.next();
+						if (!sibling.isVisible() && sibling instanceof MarkupContainer &&
+							((MarkupContainer)sibling).isTransparentResolver())
+						{
+							// we found a transparent container that isn't visible
+							// then ignore this component and only do a debug statement here.
+							log.warn("Component " + component +
+								" wasn't rendered but most likely it has a transparent parent: " +
+								sibling);
+							iterator.remove();
+							break;
+						}
+					}
+				}
+				// if still > 0
+				if (unrenderedComponents.size() > 0)
+				{
+					// Throw exception
+					throw new WicketRuntimeException(
 						"The component(s) below failed to render. A common problem is that you have added a component in code but forgot to reference it in the markup (thus the component will never be rendered).\n\n" +
-								buffer.toString());
+							buffer.toString());
+				}
 			}
 		}
 
@@ -1190,7 +1203,7 @@
 		// Auto components do not participate in versioning since they are
 		// added during the rendering phase (which is normally illegal).
 		if (component.isAuto() || (parent == null && !component.isVersioned()) ||
-				(parent != null && !parent.isVersioned()))
+			(parent != null && !parent.isVersioned()))
 		{
 			return false;
 		}
@@ -1302,7 +1315,7 @@
 		// Write out an xml declaration if the markup stream and settings allow
 		final MarkupStream markupStream = findMarkupStream();
 		if ((markupStream != null) && (markupStream.getXmlDeclaration() != null) &&
-				(application.getMarkupSettings().getStripXmlDeclarationFromOutput() == false))
+			(application.getMarkupSettings().getStripXmlDeclarationFromOutput() == false))
 		{
 			response.write("<?xml version='1.0' encoding='");
 			response.write(encoding);

Modified: wicket/trunk/jdk-1.5/wicket-examples/.settings/org.eclipse.jdt.core.prefs
URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.5/wicket-examples/.settings/org.eclipse.jdt.core.prefs?rev=590861&r1=590860&r2=590861&view=diff
==============================================================================
--- wicket/trunk/jdk-1.5/wicket-examples/.settings/org.eclipse.jdt.core.prefs (original)
+++ wicket/trunk/jdk-1.5/wicket-examples/.settings/org.eclipse.jdt.core.prefs Wed Oct 31 16:23:31 2007
@@ -1,4 +1,4 @@
-#Wed Apr 11 14:45:26 CEST 2007
+#Thu Nov 01 00:12:54 CET 2007
 eclipse.preferences.version=1
 org.eclipse.jdt.core.codeComplete.argumentPrefixes=
 org.eclipse.jdt.core.codeComplete.argumentSuffixes=
@@ -73,15 +73,15 @@
 org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
 org.eclipse.jdt.core.formatter.alignment_for_assignment=0
 org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=20
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=48
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=16
 org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
 org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
 org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=64
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
 org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=64
 org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
@@ -124,7 +124,7 @@
 org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
 org.eclipse.jdt.core.formatter.comment.line_length=100
 org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation=1
 org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
 org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
 org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true